summaryrefslogtreecommitdiff
path: root/sway/desktop/xdg_shell.c
diff options
context:
space:
mode:
authorRyan Dwyer <[email protected]>2018-06-27 13:21:00 +1000
committerGitHub <[email protected]>2018-06-27 13:21:00 +1000
commitbf380813829b11d42ff0703630600e5bee06098b (patch)
tree0c0951e0ec5c36a6de14535903092b539bdbbf9b /sway/desktop/xdg_shell.c
parenteeb38d65cbf5c8452c449b9f5e003bd255ca6a53 (diff)
parentf0f50c31d5e40f3dbe80c60d01bafc80c3bd24c0 (diff)
Merge branch 'master' into xwayland-wants-float
Diffstat (limited to 'sway/desktop/xdg_shell.c')
-rw-r--r--sway/desktop/xdg_shell.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sway/desktop/xdg_shell.c b/sway/desktop/xdg_shell.c
index d2b8822c..8457c06b 100644
--- a/sway/desktop/xdg_shell.c
+++ b/sway/desktop/xdg_shell.c
@@ -120,11 +120,12 @@ static void set_fullscreen(struct sway_view *view, bool fullscreen) {
}
static bool wants_floating(struct sway_view *view) {
- struct wlr_xdg_toplevel_state *state =
- &view->wlr_xdg_surface->toplevel->current;
- return state->min_width != 0 && state->min_height != 0
+ struct wlr_xdg_toplevel *toplevel = view->wlr_xdg_surface->toplevel;
+ struct wlr_xdg_toplevel_state *state = &toplevel->current;
+ return (state->min_width != 0 && state->min_height != 0
&& state->min_width == state->max_width
- && state->min_height == state->max_height;
+ && state->min_height == state->max_height)
+ || toplevel->parent;
}
static void for_each_surface(struct sway_view *view,