[gnome-control-center] network: Don't reference CcNetworkPanel directly from some helper code



commit 23e51495ee7c05ad736817344dfd99f3efdfd349
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Wed Nov 14 16:33:21 2012 -0500

    network: Don't reference CcNetworkPanel directly from some helper code
    
    All we need is the toplevel, here, so pass that in directly.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=690086

 panels/network/cc-network-panel.c  |    9 +++++----
 panels/network/net-device-mobile.c |    4 +++-
 panels/network/net-device-wifi.c   |    4 +++-
 panels/network/network-dialogs.c   |   19 ++++++++-----------
 panels/network/network-dialogs.h   |   10 +++++-----
 5 files changed, 24 insertions(+), 22 deletions(-)
---
diff --git a/panels/network/cc-network-panel.c b/panels/network/cc-network-panel.c
index 3f212af..bf48559 100644
--- a/panels/network/cc-network-panel.c
+++ b/panels/network/cc-network-panel.c
@@ -517,6 +517,7 @@ handle_argv_for_device (CcNetworkPanel *panel,
 {
         CcNetworkPanelPrivate *priv = panel->priv;
         NMDeviceType type;
+        GtkWidget *toplevel = cc_shell_get_toplevel (cc_panel_get_shell (CC_PANEL (panel)));
 
         if (priv->arg_operation == OPERATION_NULL)
                 return TRUE;
@@ -530,21 +531,21 @@ handle_argv_for_device (CcNetworkPanel *panel,
                 select_tree_iter (panel, iter);
 
                 if (priv->arg_operation == OPERATION_CREATE_WIFI)
-                        cc_network_panel_create_wifi_network (panel, priv->client, priv->remote_settings);
+                        cc_network_panel_create_wifi_network (toplevel, priv->client, priv->remote_settings);
                 else
-                        cc_network_panel_connect_to_hidden_network (panel, priv->client, priv->remote_settings);
+                        cc_network_panel_connect_to_hidden_network (toplevel, priv->client, priv->remote_settings);
 
                 reset_command_line_args (panel); /* done */
                 return TRUE;
         } else if (g_strcmp0 (nm_object_get_path (NM_OBJECT (device)), priv->arg_device) == 0) {
                 if (priv->arg_operation == OPERATION_CONNECT_MOBILE) {
-                        cc_network_panel_connect_to_3g_network (panel, priv->client, priv->remote_settings, device);
+                        cc_network_panel_connect_to_3g_network (toplevel, priv->client, priv->remote_settings, device);
 
                         reset_command_line_args (panel); /* done */
                         select_tree_iter (panel, iter);
                         return TRUE;
                 } else if (priv->arg_operation == OPERATION_CONNECT_8021X) {
-                        cc_network_panel_connect_to_8021x_network (panel, priv->client, priv->remote_settings, device, priv->arg_access_point);
+                        cc_network_panel_connect_to_8021x_network (toplevel, priv->client, priv->remote_settings, device, priv->arg_access_point);
                         reset_command_line_args (panel); /* done */
                         select_tree_iter (panel, iter);
                         return TRUE;
diff --git a/panels/network/net-device-mobile.c b/panels/network/net-device-mobile.c
index d24de4e..38a2ee9 100644
--- a/panels/network/net-device-mobile.c
+++ b/panels/network/net-device-mobile.c
@@ -108,6 +108,7 @@ mobile_connection_changed_cb (GtkComboBox *combo_box, NetDeviceMobile *device_mo
         NMClient *client;
         NMRemoteSettings *remote_settings;
         CcNetworkPanel *panel;
+        GtkWidget *toplevel;
 
         if (device_mobile->priv->updating_device)
                 goto out;
@@ -129,7 +130,8 @@ mobile_connection_changed_cb (GtkComboBox *combo_box, NetDeviceMobile *device_mo
                             -1);
         if (g_strcmp0 (object_path, NULL) == 0) {
                 panel = net_object_get_panel (NET_OBJECT (device_mobile));
-                cc_network_panel_connect_to_3g_network (panel,
+                toplevel = cc_shell_get_toplevel (cc_panel_get_shell (CC_PANEL (panel)));
+                cc_network_panel_connect_to_3g_network (toplevel,
                                                         client,
                                                         remote_settings,
                                                         device);
diff --git a/panels/network/net-device-wifi.c b/panels/network/net-device-wifi.c
index 59c622b..278991a 100644
--- a/panels/network/net-device-wifi.c
+++ b/panels/network/net-device-wifi.c
@@ -985,11 +985,13 @@ connect_to_hidden_network (NetDeviceWifi *device_wifi)
         NMRemoteSettings *remote_settings;
         NMClient *client;
         CcNetworkPanel *panel;
+        GtkWidget *toplevel;
 
         remote_settings = net_object_get_remote_settings (NET_OBJECT (device_wifi));
         client = net_object_get_client (NET_OBJECT (device_wifi));
         panel = net_object_get_panel (NET_OBJECT (device_wifi));
-        cc_network_panel_connect_to_hidden_network (panel, client, remote_settings);
+        toplevel = cc_shell_get_toplevel (cc_panel_get_shell (CC_PANEL (panel)));
+        cc_network_panel_connect_to_hidden_network (toplevel, client, remote_settings);
 }
 
 static void
diff --git a/panels/network/network-dialogs.c b/panels/network/network-dialogs.c
index f9be79d..b2f8376 100644
--- a/panels/network/network-dialogs.c
+++ b/panels/network/network-dialogs.c
@@ -20,7 +20,6 @@
  * Copyright 2008 - 2011 Red Hat, Inc. 
  */
 
-#include <shell/cc-shell.h>
 #include <nm-utils.h>
 #include <nm-connection.h>
 #include <nm-setting-gsm.h>
@@ -210,12 +209,11 @@ done:
 }
 
 static void
-show_wireless_dialog (CcNetworkPanel   *panel,
+show_wireless_dialog (GtkWidget        *toplevel,
 		      NMClient         *client,
 		      NMRemoteSettings *settings,
 		      GtkWidget        *dialog)
 {
-        GtkWidget *toplevel = cc_shell_get_toplevel (cc_panel_get_shell (CC_PANEL (panel)));
         WirelessDialogClosure *closure;
 
         g_debug ("About to parent and show a network dialog");
@@ -239,28 +237,28 @@ show_wireless_dialog (CcNetworkPanel   *panel,
 }
 
 void
-cc_network_panel_create_wifi_network (CcNetworkPanel   *panel,
+cc_network_panel_create_wifi_network (GtkWidget        *toplevel,
 				      NMClient         *client,
 				      NMRemoteSettings *settings)
 {
   if (wifi_can_create_wifi_network (client)) {
-          show_wireless_dialog (panel, client, settings,
+          show_wireless_dialog (toplevel, client, settings,
                                 nma_wifi_dialog_new_for_create (client, settings));
   }
 }
 
 void
-cc_network_panel_connect_to_hidden_network (CcNetworkPanel   *panel,
+cc_network_panel_connect_to_hidden_network (GtkWidget        *toplevel,
                                             NMClient         *client,
                                             NMRemoteSettings *settings)
 {
         g_debug ("connect to hidden wifi");
-        show_wireless_dialog (panel, client, settings,
+        show_wireless_dialog (toplevel, client, settings,
                               nma_wifi_dialog_new_for_other (client, settings));
 }
 
 void
-cc_network_panel_connect_to_8021x_network (CcNetworkPanel   *panel,
+cc_network_panel_connect_to_8021x_network (GtkWidget        *toplevel,
                                            NMClient         *client,
                                            NMRemoteSettings *settings,
                                            NMDevice         *device,
@@ -321,7 +319,7 @@ cc_network_panel_connect_to_8021x_network (CcNetworkPanel   *panel,
         nm_connection_add_setting (connection, NM_SETTING (s_8021x));
 
         dialog = nma_wifi_dialog_new (client, settings, connection, device, ap, FALSE);
-        show_wireless_dialog (panel, client, settings, dialog);
+        show_wireless_dialog (toplevel, client, settings, dialog);
 }
 
 static void
@@ -493,12 +491,11 @@ show_wizard_idle_cb (NMAMobileWizard *wizard)
 }
 
 void
-cc_network_panel_connect_to_3g_network (CcNetworkPanel   *panel,
+cc_network_panel_connect_to_3g_network (GtkWidget        *toplevel,
                                         NMClient         *client,
                                         NMRemoteSettings *settings,
                                         NMDevice         *device)
 {
-        GtkWidget *toplevel = cc_shell_get_toplevel (cc_panel_get_shell (CC_PANEL (panel)));
         MobileDialogClosure *closure;
         NMAMobileWizard *wizard;
 	NMDeviceModemCapabilities caps;
diff --git a/panels/network/network-dialogs.h b/panels/network/network-dialogs.h
index 4cf0f6e..ddbf392 100644
--- a/panels/network/network-dialogs.h
+++ b/panels/network/network-dialogs.h
@@ -24,23 +24,23 @@
 #include <nm-remote-settings.h>
 #include <nm-device.h>
 #include <nm-access-point.h>
-#include "cc-network-panel.h"
+#include <gtk/gtk.h>
 
-void cc_network_panel_create_wifi_network (CcNetworkPanel   *panel,
+void cc_network_panel_create_wifi_network (GtkWidget        *toplevel,
 					   NMClient         *client,
 					   NMRemoteSettings *settings);
 
-void cc_network_panel_connect_to_hidden_network (CcNetworkPanel   *panel,
+void cc_network_panel_connect_to_hidden_network (GtkWidget        *toplevel,
 						 NMClient         *client,
 						 NMRemoteSettings *settings);
 
-void cc_network_panel_connect_to_8021x_network (CcNetworkPanel   *panel,
+void cc_network_panel_connect_to_8021x_network (GtkWidget        *toplevel,
                                                 NMClient         *client,
                                                 NMRemoteSettings *settings,
                                                 NMDevice         *device,
                                                 const gchar      *arg_access_point);
 
-void cc_network_panel_connect_to_3g_network (CcNetworkPanel   *panel,
+void cc_network_panel_connect_to_3g_network (GtkWidget        *toplevel,
                                              NMClient         *client,
                                              NMRemoteSettings *settings,
                                              NMDevice         *device);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]