diff --git a/src/clients/mod.rs b/src/clients/mod.rs index c430921..5f62937 100644 --- a/src/clients/mod.rs +++ b/src/clients/mod.rs @@ -82,13 +82,12 @@ impl Clients { #[cfg(feature = "workspaces")] pub fn workspaces(&mut self) -> ClientResult { - let client = match &self.workspaces { - Some(workspaces) => workspaces.clone(), - None => { - let client = compositor::Compositor::create_workspace_client(self)?; - self.workspaces.replace(client.clone()); - client - } + let client = if let Some(workspaces) = &self.workspaces { + workspaces.clone() + } else { + let client = compositor::Compositor::create_workspace_client(self)?; + self.workspaces.replace(client.clone()); + client }; Ok(client) @@ -96,14 +95,13 @@ impl Clients { #[cfg(feature = "sway")] pub fn sway(&mut self) -> ClientResult { - let client = match &self.sway { - Some(client) => client.clone(), - None => { - let client = await_sync(async { sway::Client::new().await })?; - let client = Arc::new(client); - self.sway.replace(client.clone()); - client - } + let client = if let Some(client) = &self.sway { + client.clone() + } else { + let client = await_sync(async { sway::Client::new().await })?; + let client = Arc::new(client); + self.sway.replace(client.clone()); + client }; Ok(client) @@ -134,26 +132,24 @@ impl Clients { #[cfg(feature = "network_manager")] pub fn network_manager(&mut self) -> ClientResult { - match &self.network_manager { - Some(client) => Ok(client.clone()), - None => { - let client = networkmanager::create_client()?; - self.network_manager = Some(client.clone()); - Ok(client) - } + if let Some(client) = &self.network_manager { + Ok(client.clone()) + } else { + let client = networkmanager::create_client()?; + self.network_manager = Some(client.clone()); + Ok(client) } } #[cfg(feature = "notifications")] pub fn notifications(&mut self) -> ClientResult { - let client = match &self.notifications { - Some(client) => client.clone(), - None => { - let client = await_sync(async { swaync::Client::new().await })?; - let client = Arc::new(client); - self.notifications.replace(client.clone()); - client - } + let client = if let Some(client) = &self.notifications { + client.clone() + } else { + let client = await_sync(async { swaync::Client::new().await })?; + let client = Arc::new(client); + self.notifications.replace(client.clone()); + client }; Ok(client) @@ -161,14 +157,13 @@ impl Clients { #[cfg(feature = "tray")] pub fn tray(&mut self) -> ClientResult { - let client = match &self.tray { - Some(client) => client.clone(), - None => { - let client = await_sync(async { tray::Client::new().await })?; - let client = Arc::new(client); - self.tray.replace(client.clone()); - client - } + let client = if let Some(client) = &self.tray { + client.clone() + } else { + let client = await_sync(async { tray::Client::new().await })?; + let client = Arc::new(client); + self.tray.replace(client.clone()); + client }; Ok(client) @@ -176,13 +171,12 @@ impl Clients { #[cfg(feature = "upower")] pub fn upower(&mut self) -> ClientResult> { - let client = match &self.upower { - Some(client) => client.clone(), - None => { - let client = await_sync(async { upower::create_display_proxy().await })?; - self.upower.replace(client.clone()); - client - } + let client = if let Some(client) = &self.upower { + client.clone() + } else { + let client = await_sync(async { upower::create_display_proxy().await })?; + self.upower.replace(client.clone()); + client }; Ok(client) diff --git a/src/gtk_helpers.rs b/src/gtk_helpers.rs index de5d8af..c4bc58e 100644 --- a/src/gtk_helpers.rs +++ b/src/gtk_helpers.rs @@ -97,10 +97,10 @@ pub trait IronbarLabelExt { impl IronbarLabelExt for Label { fn set_label_escaped(&self, label: &str) { - if !label.contains(" for KeysModule { if self.show_caps { caps.add_class("key"); caps.add_class("caps"); - container.add(caps.deref()); + container.add(&*caps); } if self.show_num { num.add_class("key"); num.add_class("num"); - container.add(num.deref()); + container.add(&*num); } if self.show_scroll { scroll.add_class("key"); scroll.add_class("scroll"); - container.add(scroll.deref()); + container.add(&*scroll); } let icons = self.icons; diff --git a/src/modules/music/mod.rs b/src/modules/music/mod.rs index d11684b..dc2796b 100644 --- a/src/modules/music/mod.rs +++ b/src/modules/music/mod.rs @@ -1,5 +1,4 @@ use std::cell::RefMut; -use std::ops::Deref; use std::path::PathBuf; use std::sync::atomic::{AtomicBool, Ordering}; use std::sync::Arc; @@ -200,8 +199,8 @@ impl Module