From e2b7079755adeb931c684326292d677abcf0fa46 Mon Sep 17 00:00:00 2001 From: LGUG2Z Date: Mon, 22 Apr 2024 18:43:34 -0700 Subject: [PATCH] comparison --- komorebi/src/process_event.rs | 3 ++- komorebi/src/window_manager.rs | 13 +++++-------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/komorebi/src/process_event.rs b/komorebi/src/process_event.rs index 2f0a5bb9..9c91550b 100644 --- a/komorebi/src/process_event.rs +++ b/komorebi/src/process_event.rs @@ -184,7 +184,8 @@ impl WindowManager { } match event { - WindowManagerEvent::Raise(_window) => { + WindowManagerEvent::Raise(window) => { + window.focus(false)?; self.has_pending_raise_op = false; } WindowManagerEvent::Destroy(_, window) | WindowManagerEvent::Unmanage(window) => { diff --git a/komorebi/src/window_manager.rs b/komorebi/src/window_manager.rs index 72e25665..99965017 100644 --- a/komorebi/src/window_manager.rs +++ b/komorebi/src/window_manager.rs @@ -774,14 +774,11 @@ impl WindowManager { pub fn raise_window_at_cursor_pos(&mut self) -> Result<()> { let mut hwnd = None; - for monitor in self.monitors() { - for workspace in monitor.workspaces() { - if let Some(container_idx) = workspace.container_idx_from_current_point() { - if let Some(container) = workspace.containers().get(container_idx) { - if let Some(window) = container.focused_window() { - hwnd = Some(window.hwnd); - } - } + let workspace = self.focused_workspace()?; + if let Some(container_idx) = workspace.container_idx_from_current_point() { + if let Some(container) = workspace.containers().get(container_idx) { + if let Some(window) = container.focused_window() { + hwnd = Some(window.hwnd); } } }