From 13c7f2fe4d5c47fca371e619d1b6e5928da22ee0 Mon Sep 17 00:00:00 2001 From: Lucy Date: Mon, 7 Feb 2022 11:13:34 -0500 Subject: [PATCH] Work on current networks stuff --- applets/cosmic-applet-network/src/ui/available_wifi.rs | 4 ++-- .../cosmic-applet-network/src/ui/current_networks.rs | 10 +++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/applets/cosmic-applet-network/src/ui/available_wifi.rs b/applets/cosmic-applet-network/src/ui/available_wifi.rs index f7b75ab5..5481334e 100644 --- a/applets/cosmic-applet-network/src/ui/available_wifi.rs +++ b/applets/cosmic-applet-network/src/ui/available_wifi.rs @@ -25,7 +25,7 @@ pub fn add_available_wifi(target: >k4::Box, separator: Separator) { rx.attach( None, clone!(@strong ap_entries, @weak target, @weak separator, => @default-return Continue(true), move |aps| { - build_aps_list(ap_entries.clone(), target, dbg!(aps)); + build_aps_list(ap_entries.clone(), target, aps); separator.set_visible(!ap_entries.borrow().is_empty()); Continue(true) }), @@ -44,13 +44,13 @@ fn build_aps_list( for ap in aps { view! { ap_entry = SettingsEntry { - align_child: Align::Start, set_title: &ap.ssid, set_child: ap_icon = &Image { set_icon_name: Some("network-wireless-symbolic"), } } } + ap_entry.align_child(Align::Start); // view! seems to reorder everything in alphabetical order, but align_child must always come after set_child target.append(&ap_entry); ap_entries.push(ap_entry); } diff --git a/applets/cosmic-applet-network/src/ui/current_networks.rs b/applets/cosmic-applet-network/src/ui/current_networks.rs index 24b44b7a..ce5399cb 100644 --- a/applets/cosmic-applet-network/src/ui/current_networks.rs +++ b/applets/cosmic-applet-network/src/ui/current_networks.rs @@ -6,7 +6,9 @@ use cosmic_dbus_networkmanager::{ use gtk4::glib::{self, clone, source::PRIORITY_DEFAULT, MainContext, Sender}; use zbus::Connection; -pub fn add_current_networks(target: >k4::Box) {} +pub fn add_current_networks(target: >k4::Box) { + crate::task::spawn(handle_devices()); +} fn add_vpn(target: >k4::Box) {} @@ -18,8 +20,10 @@ async fn handle_devices() -> zbus::Result<()> { let conn = Connection::system().await?; let network_manager = NetworkManager::new(&conn).await?; loop { - // TODO: NetworkManager::active_connections + let active_connections = network_manager.active_connections().await?; + for connection in active_connections { + eprintln!("{}", connection.type_().await?); + } tokio::time::sleep(std::time::Duration::from_secs(5)).await; } - Ok(()) }