diff --git a/komorebi-for-mac/Cargo.lock b/komorebi-for-mac/Cargo.lock index d9379b44..8ffee69a 100644 --- a/komorebi-for-mac/Cargo.lock +++ b/komorebi-for-mac/Cargo.lock @@ -3169,6 +3169,7 @@ dependencies = [ "komorebi-layouts", "komorebi-protocol", "komorebi-themes", + "komorebi-transport", "lazy_static", "nanoid", "objc2 0.6.5", @@ -3305,6 +3306,13 @@ dependencies = [ "strum", ] +[[package]] +name = "komorebi-transport" +version = "0.1.42" +dependencies = [ + "komorebi-protocol", +] + [[package]] name = "komorebic" version = "0.1.1" diff --git a/komorebi-for-mac/Cargo.toml b/komorebi-for-mac/Cargo.toml index de8ef649..d2b727fa 100644 --- a/komorebi-for-mac/Cargo.toml +++ b/komorebi-for-mac/Cargo.toml @@ -16,6 +16,7 @@ version = "0.1.0" komorebi-themes = { path = "../komorebi-themes" } komorebi-collections = { path = "../crates/komorebi-collections" } komorebi-protocol = { path = "../crates/komorebi-protocol", default-features = false, features = ["schemars"] } +komorebi-transport = { path = "../crates/komorebi-transport" } komorebi-layouts = { path = "../komorebi-layouts", features = [ "darwin", "schemars", diff --git a/komorebi-for-mac/komorebi/Cargo.toml b/komorebi-for-mac/komorebi/Cargo.toml index 330e7c91..a45a718b 100644 --- a/komorebi-for-mac/komorebi/Cargo.toml +++ b/komorebi-for-mac/komorebi/Cargo.toml @@ -9,6 +9,7 @@ komorebi-themes = { workspace = true } komorebi-collections = { workspace = true } komorebi-layouts = { workspace = true } komorebi-protocol = { workspace = true } +komorebi-transport = { workspace = true } quickxml_to_serde = { git = "https://github.com/LGUG2Z/quickxml_to_serde.git", version = "0.6.1" } version = { path = "../version" } diff --git a/komorebi-for-mac/komorebi/src/process_command.rs b/komorebi-for-mac/komorebi/src/process_command.rs index 6e8cb5db..e4499dca 100644 --- a/komorebi-for-mac/komorebi/src/process_command.rs +++ b/komorebi-for-mac/komorebi/src/process_command.rs @@ -59,6 +59,7 @@ use color_eyre::eyre; use color_eyre::eyre::Context; use color_eyre::eyre::OptionExt; use komorebi_themes::colour::Rgb; +use komorebi_transport::allowed_while_paused; use objc2_core_foundation::CFDictionary; use parking_lot::Mutex; use std::collections::HashMap; @@ -1933,15 +1934,11 @@ pub fn read_commands_uds( } Some(mut wm) => { if wm.is_paused { - return match message { - SocketMessage::TogglePause - | SocketMessage::State - | SocketMessage::GlobalState - | SocketMessage::Stop => Ok(wm.process_command(message, &mut stream)?), - _ => { - tracing::trace!("ignoring while paused"); - Ok(()) - } + return if allowed_while_paused(&message) { + Ok(wm.process_command(message, &mut stream)?) + } else { + tracing::trace!("ignoring while paused"); + Ok(()) }; }