diff options
Diffstat (limited to 'src/clients/client.rs')
-rw-r--r-- | src/clients/client.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/clients/client.rs b/src/clients/client.rs index d4e2e88..6845e4e 100644 --- a/src/clients/client.rs +++ b/src/clients/client.rs @@ -114,7 +114,7 @@ impl Client { /// Set the floating status. pub fn set_floating(&mut self, conn: &Connection<'_>, floating: bool) { - if floating != self.floating { + if floating && floating != self.floating { conn.send_request(&ConfigureWindow { window: self.window, value_list: &[ConfigWindow::StackMode(StackMode::Above)], @@ -177,6 +177,13 @@ impl Client { }) } + pub fn update_window_type(&mut self, conn: &Connection<'_>) { + // TODO: Fullscreen from net_wm_state + if hints::is_dialog(conn, self.window) { + self.set_floating(conn, true); + } + } + pub fn set_urgent(&mut self, urgent: bool) { self.urgent = urgent; } |