Updated wlroots and sway and now I get:
[4262805.074] wl_callback@33.done(7624)
[4262805.084] -> zwlr_layer_shell_v1@31.get_layer_surface(new id zwlr_layer_surface_v1@33, wl_surface@21, nil, 2, "wofi")
[4262805.115] -> wl_surface@21.commit()
[4262805.121] -> wl_display@1.sync(new id wl_callback@34)
[4262805.175] wl_display@1.error(zwlr_layer_surface_v1@33, 1, "width 0 requested without setting left and right anchors")
Gdk-Message: 14:08:07.428: Error 71 (Protocol error) dispatching to Wayland display.
This error is due to wlroots#2422
Hmmmm, that's interesting because wofi always sets its dimensions to something non-zero. I'll take a look at this some time today
It could be a gtk3 bug since the bug happens once gtk_main() is called.
This is fixed by ea517e724b07
Thanks ~scoopta! Now I can open programs again