[gnome-control-center] Split wifi device handling conditions
- From: Robert Ancell <rancell src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center] Split wifi device handling conditions
- Date: Tue, 30 Jun 2020 04:04:44 +0000 (UTC)
commit 6c63c3980e62530fd04c1d8e73c00517e1fd0d2e
Author: Jamison Lofthouse <jamison lofthouse gmail com>
Date: Wed Jun 24 12:10:02 2020 -0400
Split wifi device handling conditions
panels/network/cc-wifi-panel.c | 27 +++++++++++++++++++--------
1 file changed, 19 insertions(+), 8 deletions(-)
---
diff --git a/panels/network/cc-wifi-panel.c b/panels/network/cc-wifi-panel.c
index 126adda06..e17610735 100644
--- a/panels/network/cc-wifi-panel.c
+++ b/panels/network/cc-wifi-panel.c
@@ -148,10 +148,6 @@ add_wifi_device (CcWifiPanel *self,
GtkWidget *header_widget;
NetDeviceWifi *net_device;
- /* Only manage Wi-Fi devices */
- if (!NM_IS_DEVICE_WIFI (device) || !nm_device_get_managed (device))
- return;
-
/* Create the NetDevice */
net_device = net_device_wifi_new (CC_PANEL (self),
self->client,
@@ -182,9 +178,6 @@ remove_wifi_device (CcWifiPanel *self,
const gchar *id;
guint i;
- if (!NM_IS_DEVICE_WIFI (device) || !nm_device_get_managed (device))
- return;
-
id = nm_device_get_udi (device);
/* Destroy all stack pages related to this device */
@@ -243,7 +236,14 @@ load_wifi_devices (CcWifiPanel *self)
if (devices)
{
for (i = 0; i < devices->len; i++)
- add_wifi_device (self, g_ptr_array_index (devices, i));
+ {
+ NMDevice *device;
+
+ device = g_ptr_array_index (devices, i);
+ if (!NM_IS_DEVICE_WIFI (device) || !nm_device_get_managed (device))
+ continue;
+ add_wifi_device (self, device);
+ }
}
check_main_stack_page (self);
@@ -455,6 +455,9 @@ verify_argv (CcWifiPanel *self,
static void
device_added_cb (CcWifiPanel *self, NMDevice *device)
{
+ if (!NM_IS_DEVICE_WIFI (device) || !nm_device_get_managed (device))
+ return;
+
add_wifi_device (self, device);
check_main_stack_page (self);
}
@@ -462,6 +465,14 @@ device_added_cb (CcWifiPanel *self, NMDevice *device)
static void
device_removed_cb (CcWifiPanel *self, NMDevice *device)
{
+ if (!NM_IS_DEVICE_WIFI (device))
+ return;
+
+ id = nm_device_get_udi (device);
+ /* Don't remove a device that has already been removed */
+ if (!gtk_stack_get_child_by_name (self->stack, id))
+ return;
+
remove_wifi_device (self, device);
check_main_stack_page (self);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]