fix: advertise tiled window edges
This commit is contained in:
1 parent
5e6c9c3d9d
commit
a5aee06a10
1 file changed
+14
-1
+14
-1
@@ -749,6 +749,19 @@ impl Ferese {
|
|||||||
state.states.unset(xdg_toplevel::State::Fullscreen)
|
state.states.unset(xdg_toplevel::State::Fullscreen)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
let tiled = !is_floating && !is_fullscreen;
|
||||||
|
let tiled_changed = if tiled {
|
||||||
|
state.states.set(xdg_toplevel::State::TiledLeft)
|
||||||
|
| state.states.set(xdg_toplevel::State::TiledRight)
|
||||||
|
| state.states.set(xdg_toplevel::State::TiledTop)
|
||||||
|
| state.states.set(xdg_toplevel::State::TiledBottom)
|
||||||
|
} else {
|
||||||
|
state.states.unset(xdg_toplevel::State::TiledLeft)
|
||||||
|
| state.states.unset(xdg_toplevel::State::TiledRight)
|
||||||
|
| state.states.unset(xdg_toplevel::State::TiledTop)
|
||||||
|
| state.states.unset(xdg_toplevel::State::TiledBottom)
|
||||||
|
};
|
||||||
|
|
||||||
let decoration_mode = if is_floating && !is_fullscreen {
|
let decoration_mode = if is_floating && !is_fullscreen {
|
||||||
DecorationMode::ClientSide
|
DecorationMode::ClientSide
|
||||||
} else {
|
} else {
|
||||||
@@ -757,7 +770,7 @@ impl Ferese {
|
|||||||
let decoration_changed = state.decoration_mode != Some(decoration_mode);
|
let decoration_changed = state.decoration_mode != Some(decoration_mode);
|
||||||
state.decoration_mode = Some(decoration_mode);
|
state.decoration_mode = Some(decoration_mode);
|
||||||
|
|
||||||
fullscreen_changed || decoration_changed
|
fullscreen_changed || tiled_changed || decoration_changed
|
||||||
});
|
});
|
||||||
|
|
||||||
if requested_size.is_some() || state_changed {
|
if requested_size.is_some() || state_changed {
|
||||||
|
|||||||
Reference in new issue
Block a user