feat: IPC for get_visible, set_visible, new bar name config option

This commit is contained in:
A-Cloud-Ninja
2023-07-12 18:17:04 -04:00
committed by Jake Stanger
parent 2f8443f349
commit 2ccb2633c6
6 changed files with 93 additions and 15 deletions

View File

@@ -146,6 +146,33 @@ impl Ipc {
}
}
Command::Ping => Response::Ok,
Command::SetVisible { bar_name, visible } => {
let windows = application.windows();
let found = windows
.iter()
.find(|window| window.widget_name() == bar_name);
if let Some(window) = found {
window.set_visible(visible);
Response::Ok
} else {
Response::error("Bar not found")
}
}
Command::GetVisible { bar_name } => {
let windows = application.windows();
let found = windows
.iter()
.find(|window| window.widget_name() == bar_name);
if let Some(window) = found {
Response::OkValue {
value: window.is_visible().to_string(),
}
} else {
Response::error("Bar not found")
}
}
}
}