diff --git a/waybox/seat.c b/waybox/seat.c index cc5aa41..92cf3b4 100644 --- a/waybox/seat.c +++ b/waybox/seat.c @@ -72,7 +72,8 @@ static bool handle_keybinding(struct wb_server *server, xkb_keysym_t sym, uint32 { struct wb_view *current_view = wl_container_of( server->views.next, current_view, link); - wlr_xdg_toplevel_send_close(current_view->xdg_toplevel); + if (wlr_surface_is_xdg_surface(current_view->xdg_toplevel->base->surface)) + wlr_xdg_toplevel_send_close(current_view->xdg_toplevel); return true; } case ACTION_EXECUTE: @@ -87,6 +88,8 @@ static bool handle_keybinding(struct wb_server *server, xkb_keysym_t sym, uint32 case ACTION_EXIT: wl_display_terminate(server->wl_display); return true; + default: + continue; } } }