diff --git a/Cargo.toml b/Cargo.toml index fce6335..5755887 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -157,7 +157,7 @@ swayipc-async = { version = "2.0.1", optional = true } hyprland = { version = "0.3.13", default_features = false, features = ["listener", "tokio", "silent"], optional = true } # shared -futures-lite = { version = "2.3.0", optional = true } # workspaces, upower +futures-lite = { version = "2.3.0", optional = true } # networkmanager, upower, workspaces regex = { version = "1.10.4", default-features = false, features = [ "std", ], optional = true } # music, sys_info diff --git a/src/config/mod.rs b/src/config/mod.rs index a5eb6e8..03c4daf 100644 --- a/src/config/mod.rs +++ b/src/config/mod.rs @@ -103,6 +103,8 @@ impl ModuleConfig { Self::Launcher(module) => create!(module), #[cfg(feature = "music")] Self::Music(module) => create!(module), + #[cfg(feature = "networkmanager")] + Self::NetworkManager(module) => create!(module), #[cfg(feature = "notifications")] Self::Notifications(module) => create!(module), Self::Script(module) => create!(module), diff --git a/src/modules/networkmanager.rs b/src/modules/networkmanager.rs index 45198cd..b1f456d 100644 --- a/src/modules/networkmanager.rs +++ b/src/modules/networkmanager.rs @@ -1,6 +1,6 @@ use color_eyre::Result; +use futures_lite::StreamExt; use futures_signals::signal::SignalExt; -use futures_util::StreamExt; use gtk::prelude::ContainerExt; use gtk::{Image, Orientation}; use serde::Deserialize; @@ -11,7 +11,7 @@ use crate::config::CommonConfig; use crate::gtk_helpers::IronbarGtkExt; use crate::image::ImageProvider; use crate::modules::{Module, ModuleInfo, ModuleParts, ModuleUpdateEvent, WidgetContext}; -use crate::{glib_recv, send_async, spawn}; +use crate::{glib_recv, module_impl, send_async, spawn}; #[derive(Debug, Deserialize, Clone)] pub struct NetworkManagerModule { @@ -30,10 +30,6 @@ impl Module for NetworkManagerModule { type SendMessage = ClientState; type ReceiveMessage = (); - fn name() -> &'static str { - "networkmanager" - } - fn spawn_controller( &self, _: &ModuleInfo, @@ -87,4 +83,6 @@ impl Module for NetworkManagerModule { Ok(ModuleParts::new(container, None)) } + + module_impl!("networkmanager"); }