oxwm

https://git.tonybtw.com/oxwm.git git://git.tonybtw.com/oxwm.git

cleanup fullscreen fix

Commit
3b3c45cb0627ada8975ae15eaf50b421748612d0
Parent
93ceb27
Author
emzywastaken <amiamemetoo@gmail.com>
Date
2025-12-12 22:59:36
use let-else and move focused_window check up to return earlier if none
is found

Diff

diff --git a/src/window_manager.rs b/src/window_manager.rs
index 4e735c2..8c55374 100644
--- a/src/window_manager.rs
+++ b/src/window_manager.rs
@@ -1413,6 +1413,16 @@ impl WindowManager {
 
     fn fullscreen(&mut self) -> WmResult<()> {
         if self.show_bar {
+            let Some(focused_window) = self
+                .monitors
+                .get(self.selected_monitor)
+                .and_then(|m| m.selected_client)
+            else {
+                return Ok(());
+            };
+
+            self.fullscreen_windows.insert(focused_window);
+
             let windows: Vec<Window> = self
                 .windows
                 .iter()
@@ -1420,17 +1430,6 @@ impl WindowManager {
                 .copied()
                 .collect();
 
-            let focused = match self
-                .monitors
-                .get(self.selected_monitor)
-                .and_then(|m| m.selected_client)
-            {
-                Some(window) => window,
-                None => return Ok(()),
-            };
-
-            self.fullscreen_windows.insert(focused);
-
             for window in &windows {
                 if let Ok(geom) = self.connection.get_geometry(*window)?.reply() {
                     self.floating_geometry_before_fullscreen.insert(
@@ -1499,16 +1498,15 @@ impl WindowManager {
             }
             self.connection.flush()?;
         } else {
-            let focused = match self
+            let Some(focused_window) = self
                 .monitors
                 .get(self.selected_monitor)
                 .and_then(|m| m.selected_client)
-            {
-                Some(window) => window,
-                None => return Ok(()),
+            else {
+                return Ok(());
             };
 
-            self.fullscreen_windows.remove(&focused);
+            self.fullscreen_windows.remove(&focused_window);
 
             if let Some(last) = self.last_layout {
                 if let Ok(layout) = layout_from_str(last) {