diff --git a/CHANGELOG.md b/CHANGELOG.md index 1af12a4..01a11af 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,7 @@ All notable changes to eww will be listed here, starting at changes since versio - Add `>=` and `<=` operators to simplexpr (By: viandoxdev) - Add `desktop` window type (By: Alvaro Lopez) - Add `scroll` widget (By: viandoxdev) +- Add `notification` window type ### Notable Internal changes - Rework state management completely, now making local state and dynamic widget hierarchy changes possible. diff --git a/crates/eww/src/display_backend.rs b/crates/eww/src/display_backend.rs index 16d9cd5..bfb6d38 100644 --- a/crates/eww/src/display_backend.rs +++ b/crates/eww/src/display_backend.rs @@ -201,6 +201,7 @@ mod platform { )? .check()?; + // TODO possibly support setting multiple window types x11rb::wrapper::ConnectionExt::change_property32( &self.conn, PropMode::REPLACE, @@ -214,6 +215,7 @@ mod platform { WindowType::Toolbar => self.atoms._NET_WM_WINDOW_TYPE_TOOLBAR, WindowType::Utility => self.atoms._NET_WM_WINDOW_TYPE_UTILITY, WindowType::Desktop => self.atoms._NET_WM_WINDOW_TYPE_DESKTOP, + WindowType::Notification => self.atoms._NET_WM_WINDOW_TYPE_NOTIFICATION, }], )? .check()?; @@ -231,6 +233,7 @@ mod platform { _NET_WM_WINDOW_TYPE_TOOLBAR, _NET_WM_WINDOW_TYPE_UTILITY, _NET_WM_WINDOW_TYPE_DESKTOP, + _NET_WM_WINDOW_TYPE_NOTIFICATION, _NET_WM_STATE, _NET_WM_STATE_STICKY, _NET_WM_STATE_ABOVE, diff --git a/crates/yuck/src/config/backend_window_options.rs b/crates/yuck/src/config/backend_window_options.rs index 8b86be2..348d5c5 100644 --- a/crates/yuck/src/config/backend_window_options.rs +++ b/crates/yuck/src/config/backend_window_options.rs @@ -48,6 +48,7 @@ mod backend { Normal, Utility, Desktop, + Notification, } impl FromStr for WindowType { type Err = EnumParseError; @@ -60,6 +61,7 @@ mod backend { "normal" => Self::Normal, "utility" => Self::Utility, "desktop" => Self::Desktop, + "notification" => Self::Notification, } } }