1
0
Fork 0
mirror of https://github.com/Zedfrigg/ironbar.git synced 2025-09-15 11:16:58 +02:00

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
commit 2ccb2633c6
No known key found for this signature in database
GPG key ID: C51FC8F9CB0BEA61
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")
}
}
}
}