diff options
author | emersion <contact@emersion.fr> | 2018-04-24 18:19:26 +0100 |
---|---|---|
committer | emersion <contact@emersion.fr> | 2018-04-24 18:19:26 +0100 |
commit | df245780d28c89ba50cebe485f622d1b2db8c1fc (patch) | |
tree | a39e8c67eae3b8f68bf88ec5e258d538cfd33441 /sway/desktop | |
parent | Fix segfault when switching back to workspace with osu! (diff) | |
download | sway-df245780d28c89ba50cebe485f622d1b2db8c1fc.tar.gz sway-df245780d28c89ba50cebe485f622d1b2db8c1fc.tar.zst sway-df245780d28c89ba50cebe485f622d1b2db8c1fc.zip |
Do not let tiled xwayland views do what they want
Diffstat (limited to 'sway/desktop')
-rw-r--r-- | sway/desktop/xwayland.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sway/desktop/xwayland.c b/sway/desktop/xwayland.c index cad9156d..63d9c66e 100644 --- a/sway/desktop/xwayland.c +++ b/sway/desktop/xwayland.c | |||
@@ -266,10 +266,13 @@ static void handle_request_configure(struct wl_listener *listener, void *data) { | |||
266 | struct wlr_xwayland_surface_configure_event *ev = data; | 266 | struct wlr_xwayland_surface_configure_event *ev = data; |
267 | struct sway_view *view = &xwayland_view->view; | 267 | struct sway_view *view = &xwayland_view->view; |
268 | struct wlr_xwayland_surface *xsurface = view->wlr_xwayland_surface; | 268 | struct wlr_xwayland_surface *xsurface = view->wlr_xwayland_surface; |
269 | // TODO: floating windows are allowed to move around like this, but make | 269 | if (!xsurface->mapped) { |
270 | // sure tiling windows always stay in place. | 270 | wlr_xwayland_surface_configure(xsurface, ev->x, ev->y, |
271 | wlr_xwayland_surface_configure(xsurface, ev->x, ev->y, | 271 | ev->width, ev->height); |
272 | ev->width, ev->height); | 272 | return; |
273 | } | ||
274 | // TODO: Let floating views do whatever | ||
275 | configure(view, view->swayc->x, view->swayc->y, view->width, view->height); | ||
273 | } | 276 | } |
274 | 277 | ||
275 | static void handle_request_fullscreen(struct wl_listener *listener, void *data) { | 278 | static void handle_request_fullscreen(struct wl_listener *listener, void *data) { |