src/xdg.c: prevent configure requests before map

Fixes: #1994
This commit is contained in:
Consolatis 2024-07-18 01:29:53 +02:00
parent 40684bad9d
commit 6f989338cf

View file

@ -279,10 +279,13 @@ handle_request_maximize(struct wl_listener *listener, void *data)
if (!view->mapped && !view->output) { if (!view->mapped && !view->output) {
view_set_output(view, output_nearest_to_cursor(view->server)); view_set_output(view, output_nearest_to_cursor(view->server));
} }
if (view->mapped) {
bool maximized = xdg_toplevel_from_view(view)->requested.maximized; bool maximized = xdg_toplevel_from_view(view)->requested.maximized;
view_maximize(view, maximized ? VIEW_AXIS_BOTH : VIEW_AXIS_NONE, view_maximize(view, maximized ? VIEW_AXIS_BOTH : VIEW_AXIS_NONE,
/*store_natural_geometry*/ true); /*store_natural_geometry*/ true);
} }
}
static void static void
set_fullscreen_from_request(struct view *view, set_fullscreen_from_request(struct view *view,
@ -303,9 +306,12 @@ handle_request_fullscreen(struct wl_listener *listener, void *data)
if (!view->mapped && !view->output) { if (!view->mapped && !view->output) {
view_set_output(view, output_nearest_to_cursor(view->server)); view_set_output(view, output_nearest_to_cursor(view->server));
} }
if (view->mapped) {
set_fullscreen_from_request(view, set_fullscreen_from_request(view,
&xdg_toplevel_from_view(view)->requested); &xdg_toplevel_from_view(view)->requested);
} }
}
static void static void
handle_set_title(struct wl_listener *listener, void *data) handle_set_title(struct wl_listener *listener, void *data)