NetworkManager r3486 - in trunk: . src



Author: dcbw
Date: Thu Mar 20 21:20:32 2008
New Revision: 3486
URL: http://svn.gnome.org/viewvc/NetworkManager?rev=3486&view=rev

Log:
2008-03-20  Dan Williams  <dcbw redhat com>

	* src/nm-manager.c
		- (nm_manager_update_state, manager_device_state_changed,
		   nm_manager_activate_device, connection_added_default_handler,
		   impl_manager_activate_connection, impl_manager_deactivate_connection):
			queue PropertyChanged singals when the active connections change



Modified:
   trunk/ChangeLog
   trunk/src/nm-manager.c

Modified: trunk/src/nm-manager.c
==============================================================================
--- trunk/src/nm-manager.c	(original)
+++ trunk/src/nm-manager.c	Thu Mar 20 21:20:32 2008
@@ -219,6 +219,8 @@
 
 	if (priv->state != new_state) {
 		priv->state = new_state;
+		g_object_notify (G_OBJECT (manager), NM_MANAGER_STATE);
+
 		g_signal_emit (manager, signals[STATE_CHANGED], 0, priv->state);
 
 		/* Emit StateChange too for backwards compatibility */
@@ -1059,6 +1061,17 @@
 {
 	NMManager *manager = NM_MANAGER (user_data);
 
+	switch (nm_device_interface_get_state (device)) {
+	case NM_DEVICE_STATE_PREPARE:
+	case NM_DEVICE_STATE_FAILED:
+	case NM_DEVICE_STATE_CANCELLED:
+	case NM_DEVICE_STATE_DISCONNECTED:
+		g_object_notify (G_OBJECT (manager), NM_MANAGER_ACTIVE_CONNECTIONS);
+		break;
+	default:
+		break;
+	}
+
 	nm_manager_update_state (manager);
 }
 
@@ -1308,8 +1321,10 @@
 	if (!check_connection_allowed (manager, dev_iface, connection, specific_object, error))
 		return NULL;
 
-	if (nm_device_get_act_request (device))
+	if (nm_device_get_act_request (device)) {
 		nm_device_interface_deactivate (dev_iface);
+		g_object_notify (G_OBJECT (manager), NM_MANAGER_ACTIVE_CONNECTIONS);
+	}
 
 	req = nm_act_request_new (connection, specific_object, user_requested, (gpointer) device);
 	success = nm_device_interface_activate (dev_iface, req, error);
@@ -1384,9 +1399,10 @@
 	                                   info->specific_object_path,
 	                                   TRUE,
 	                                   &error);
-	if (path)
+	if (path) {
 		dbus_g_method_return (info->context, path);
-	else {
+		g_object_notify (G_OBJECT (manager), NM_MANAGER_ACTIVE_CONNECTIONS);
+	} else {
 		dbus_g_method_return_error (info->context, error);
 		nm_warning ("Failed to activate device %s: (%d) %s",
 		            nm_device_get_iface (info->device),
@@ -1447,8 +1463,10 @@
 		                                   real_sop,
 		                                   TRUE,
 		                                   &error);
-		if (path)
+		if (path) {
 			dbus_g_method_return (context, path);
+			g_object_notify (G_OBJECT (manager), NM_MANAGER_ACTIVE_CONNECTIONS);
+		}
 	} else {
 		PendingConnectionInfo *info;
 		NMManagerPrivate *priv = NM_MANAGER_GET_PRIVATE (manager);
@@ -1505,6 +1523,7 @@
 
 		if (!strcmp (connection_path, nm_act_request_get_active_connection_path (req))) {
 			nm_device_interface_deactivate (NM_DEVICE_INTERFACE (device));
+			g_object_notify (G_OBJECT (manager), NM_MANAGER_ACTIVE_CONNECTIONS);
 			return TRUE;
 		}
 	}



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