1
0
Fork 0
mirror of https://github.com/Zedfrigg/ironbar.git synced 2025-07-01 18:51:04 +02:00

refactor: general code tidy-up

This commit is contained in:
Jake Stanger 2022-12-11 23:09:19 +00:00
parent 5e21cbcca6
commit ea2c84d1bd
No known key found for this signature in database
GPG key ID: C51FC8F9CB0BEA61
4 changed files with 15 additions and 18 deletions

View file

@ -49,13 +49,15 @@ impl Module<gtk::Box> for FocusedModule {
) -> Result<()> {
let focused = await_sync(async {
let wl = wayland::get_client().await;
// TODO: Avoid cloning
let toplevels = read_lock!(wl.toplevels).clone();
let toplevels = read_lock!(wl.toplevels);
toplevels.into_iter().find(|(_, (top, _))| top.active)
toplevels
.iter()
.find(|(_, (top, _))| top.active)
.map(|(_, (top, _))| top.clone())
});
if let Some((_, (top, _))) = focused {
if let Some(top) = focused {
tx.try_send(ModuleUpdateEvent::Update((top.title.clone(), top.app_id)))?;
}

View file

@ -214,24 +214,19 @@ impl Module<gtk::Box> for LauncherModule {
};
}
ToplevelChange::Focus(focused) => {
// TODO: Flatten this
let update_title = if focused {
let mut update_title = false;
if focused {
if let Some(item) = lock!(items).get_mut(&app_id) {
item.set_window_focused(window.id, true);
// might be switching focus between windows of same app
if item.windows.len() > 1 {
item.set_window_name(window.id, window.title.clone());
true
} else {
false
update_title = true;
}
} else {
false
}
} else {
false
};
}
send_update(LauncherUpdate::Focus(app_id.clone(), focused)).await?;
@ -266,7 +261,6 @@ impl Module<gtk::Box> for LauncherModule {
if let Err(err) = Command::new("gtk-launch")
.arg(
file.file_name()
// TODO: Don't panic for this
.expect("File segment missing from path to desktop file"),
)
.stdout(Stdio::null())