From b743c724ff9112d4ae42e10698b7c183dd0b8a9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A1s?= Date: Fri, 8 Nov 2024 12:22:15 +0200 Subject: [PATCH] Added UI for several wifi adapters --- .../src/network_manager/available_wifi.rs | 7 ++++++- cosmic-applet-network/src/network_manager/mod.rs | 2 +- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/cosmic-applet-network/src/network_manager/available_wifi.rs b/cosmic-applet-network/src/network_manager/available_wifi.rs index f3b135cd..80e5b8f7 100644 --- a/cosmic-applet-network/src/network_manager/available_wifi.rs +++ b/cosmic-applet-network/src/network_manager/available_wifi.rs @@ -7,7 +7,10 @@ use itertools::Itertools; use std::collections::HashMap; use zbus::zvariant::ObjectPath; -pub async fn handle_wireless_device(device: WirelessDevice<'_>) -> zbus::Result> { +pub async fn handle_wireless_device( + device: WirelessDevice<'_>, + hw_address: Option, +) -> zbus::Result> { device.request_scan(HashMap::new()).await?; let mut scan_changed = device.receive_last_scan_changed().await; if let Some(t) = scan_changed.next().await { @@ -42,6 +45,7 @@ pub async fn handle_wireless_device(device: WirelessDevice<'_>) -> zbus::Result< state, working: false, path: ap.inner().path().to_owned(), + hw_address: hw_address.as_ref().unwrap_or(&"".to_string()).clone(), }, ); } @@ -59,4 +63,5 @@ pub struct AccessPoint { pub state: DeviceState, pub working: bool, pub path: ObjectPath<'static>, + pub hw_address: String, } diff --git a/cosmic-applet-network/src/network_manager/mod.rs b/cosmic-applet-network/src/network_manager/mod.rs index 90b3f271..cd26d156 100644 --- a/cosmic-applet-network/src/network_manager/mod.rs +++ b/cosmic-applet-network/src/network_manager/mod.rs @@ -353,7 +353,7 @@ impl NetworkManagerState { if let Ok(Some(SpecificDevice::Wireless(wireless_device))) = device.downcast_to_device().await { - handle_wireless_device(wireless_device) + handle_wireless_device(wireless_device, device.hw_address().await.ok()) .await .unwrap_or_default() } else {