srdusr
aboutsummaryrefslogtreecommitdiffstats
path: root/crates/wayland/src/state/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/wayland/src/state/mod.rs')
-rw-r--r--crates/wayland/src/state/mod.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/crates/wayland/src/state/mod.rs b/crates/wayland/src/state/mod.rs
index f39edcc..e07dc1d 100644
--- a/crates/wayland/src/state/mod.rs
+++ b/crates/wayland/src/state/mod.rs
@@ -114,6 +114,15 @@ pub(crate) struct DecorationSignature {
pub(crate) maximized: bool,
pub(crate) fullscreen: bool,
pub(crate) shadows_enabled: bool,
+ /// A tiled window gets no shadow at all (see `redraw_decoration_
+ /// buffer`'s own gate) - included here for the same "one signature,
+ /// every real input" reason as `maximized`/`fullscreen` just above:
+ /// toggling floating on its own (`srd.window.toggle_floating()`,
+ /// switching layouts) changes nothing else this signature already
+ /// tracks, so without this the cache would keep serving whichever
+ /// shadow state happened to be cached until some unrelated field
+ /// (a resize, a focus change) forced a rebuild anyway.
+ pub(crate) floating: bool,
/// Which of *this* window's own titlebar buttons (if any) is currently
/// hovered, and the glyph-reveal animation's current progress (0..=255)
/// - see `CompState::hovered_titlebar_button`'s own doc comment.