mirror of
https://github.com/swaywm/sway.git
synced 2024-11-25 01:11:28 +00:00
xdg-shell: send maximized if tiled isn't supported
wlroots doesn't do it automatically anymore.
This commit is contained in:
parent
647521244a
commit
f2425b4fd6
|
@ -169,12 +169,19 @@ static void set_tiled(struct sway_view *view, bool tiled) {
|
||||||
if (xdg_shell_view_from_view(view) == NULL) {
|
if (xdg_shell_view_from_view(view) == NULL) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (wl_resource_get_version(view->wlr_xdg_toplevel->resource) >=
|
||||||
|
XDG_TOPLEVEL_STATE_TILED_LEFT_SINCE_VERSION) {
|
||||||
enum wlr_edges edges = WLR_EDGE_NONE;
|
enum wlr_edges edges = WLR_EDGE_NONE;
|
||||||
if (tiled) {
|
if (tiled) {
|
||||||
edges = WLR_EDGE_LEFT | WLR_EDGE_RIGHT | WLR_EDGE_TOP |
|
edges = WLR_EDGE_LEFT | WLR_EDGE_RIGHT | WLR_EDGE_TOP |
|
||||||
WLR_EDGE_BOTTOM;
|
WLR_EDGE_BOTTOM;
|
||||||
}
|
}
|
||||||
wlr_xdg_toplevel_set_tiled(view->wlr_xdg_toplevel, edges);
|
wlr_xdg_toplevel_set_tiled(view->wlr_xdg_toplevel, edges);
|
||||||
|
} else {
|
||||||
|
// The version is too low for the tiled state; configure as maximized instead
|
||||||
|
// to stop the client from drawing decorations outside of the toplevel geometry.
|
||||||
|
wlr_xdg_toplevel_set_maximized(view->wlr_xdg_toplevel, tiled);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void set_fullscreen(struct sway_view *view, bool fullscreen) {
|
static void set_fullscreen(struct sway_view *view, bool fullscreen) {
|
||||||
|
|
Loading…
Reference in a new issue