From 28a641609ceeb137b4e8cafb691e310e93f9b3a5 Mon Sep 17 00:00:00 2001 From: LGUG2Z Date: Wed, 15 Sep 2021 07:18:07 -0700 Subject: [PATCH] fix(wm): update target monitor after send op This commit ensures that the focused workspace on the target monitor is updated with the latest layout after it receives a window via the send-to-monitor command. resolve #37 --- Cargo.lock | 4 ++-- komorebi/src/window_manager.rs | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 631bd9d7..c921acfc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -579,9 +579,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.101" +version = "0.2.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cb00336871be5ed2c8ed44b60ae9959dc5b9f08539422ed43f09e34ecaeba21" +checksum = "a2a5ac8f984bfcf3a823267e5fde638acc3325f6496633a5da6bb6eb2171e103" [[package]] name = "lock_api" diff --git a/komorebi/src/window_manager.rs b/komorebi/src/window_manager.rs index 823ad2eb..759e4f5c 100644 --- a/komorebi/src/window_manager.rs +++ b/komorebi/src/window_manager.rs @@ -627,6 +627,8 @@ impl WindowManager { pub fn move_container_to_monitor(&mut self, idx: usize, follow: bool) -> Result<()> { tracing::info!("moving container"); + let invisible_borders = self.invisible_borders; + let monitor = self .focused_monitor_mut() .ok_or_else(|| anyhow!("there is no monitor"))?; @@ -651,6 +653,7 @@ impl WindowManager { target_monitor.add_container(container)?; target_monitor.load_focused_workspace()?; + target_monitor.update_focused_workspace(&invisible_borders)?; if follow { self.focus_monitor(idx)?;