Index: trunk/src/applet.c =================================================================== --- trunk.orig/src/applet.c 2008-02-06 20:30:04.000000000 +0000 +++ trunk/src/applet.c 2008-02-06 20:46:59.000000000 +0000 @@ -111,8 +111,6 @@ static void nma_init (NMApplet *applet) { - applet->animation_id = 0; - applet->animation_step = 0; applet->passphrase_dialog = NULL; applet->icon_theme = NULL; #ifdef ENABLE_NOTIFY @@ -1006,20 +1004,6 @@ } } -static gboolean -vpn_animation_timeout (gpointer data) -{ - NMApplet *applet = NM_APPLET (data); - - foo_set_icon (applet, applet->vpn_connecting_icons[applet->animation_step], ICON_LAYER_VPN); - - applet->animation_step++; - if (applet->animation_step >= NUM_VPN_CONNECTING_FRAMES) - applet->animation_step = 0; - - return TRUE; -} - static void vpn_connection_state_changed (NMVPNConnection *connection, NMVPNConnectionState state, @@ -1030,10 +1014,6 @@ switch (state) { case NM_VPN_CONNECTION_STATE_ACTIVATED: - if (applet->animation_id) { - g_source_remove (applet->animation_id); - applet->animation_id = 0; - } foo_set_icon (applet, applet->vpn_lock_icon, ICON_LAYER_VPN); // vpn_connection_info_set_last_attempt_success (info, TRUE); break; @@ -1041,10 +1021,7 @@ case NM_VPN_CONNECTION_STATE_NEED_AUTH: case NM_VPN_CONNECTION_STATE_CONNECT: case NM_VPN_CONNECTION_STATE_IP_CONFIG_GET: - if (applet->animation_id == 0) { - applet->animation_step = 0; - applet->animation_id = g_timeout_add (100, vpn_animation_timeout, applet); - } + foo_set_icon (applet, applet->network_connecting_icon, ICON_LAYER_VPN); break; case NM_VPN_CONNECTION_STATE_FAILED: // vpn_connection_info_set_last_attempt_success (info, FALSE); @@ -1053,10 +1030,6 @@ g_hash_table_remove (applet->vpn_connections, nm_vpn_connection_get_name (connection)); /* Fall through */ default: - if (applet->animation_id) { - g_source_remove (applet->animation_id); - applet->animation_id = 0; - } foo_set_icon (applet, NULL, ICON_LAYER_VPN); break; } @@ -2295,45 +2268,6 @@ } FooAnimationTimeoutInfo; static void -foo_animation_timeout_info_destroy (gpointer data) -{ - g_slice_free (FooAnimationTimeoutInfo, data); -} - -static gboolean -foo_animation_timeout (gpointer data) -{ - FooAnimationTimeoutInfo *info = (FooAnimationTimeoutInfo *) data; - NMApplet *applet = info->applet; - int stage = -1; - - switch (info->state) { - case NM_DEVICE_STATE_PREPARE: - stage = 0; - break; - case NM_DEVICE_STATE_CONFIG: - stage = 1; - break; - case NM_DEVICE_STATE_IP_CONFIG: - stage = 2; - break; - default: - break; - } - - if (stage >= 0) - foo_set_icon (applet, - applet->network_connecting_icons[stage][applet->animation_step], - ICON_LAYER_LINK); - - applet->animation_step++; - if (applet->animation_step >= NUM_CONNECTING_FRAMES) - applet->animation_step = 0; - - return TRUE; -} - -static void foo_common_state_change (NMDevice *device, NMDeviceState state, NMApplet *applet) { FooAnimationTimeoutInfo *info; @@ -2345,11 +2279,7 @@ info = g_slice_new (FooAnimationTimeoutInfo); info->applet = applet; info->state = state; - applet->animation_step = 0; - applet->animation_id = g_timeout_add_full (G_PRIORITY_DEFAULT_IDLE, - 100, foo_animation_timeout, - info, - foo_animation_timeout_info_destroy); + foo_set_icon (applet, applet->network_connecting_icon, ICON_LAYER_LINK); break; case NM_DEVICE_STATE_ACTIVATED: break; @@ -2602,12 +2532,6 @@ NMApplet *applet = NM_APPLET (user_data); gboolean handled = FALSE; - applet->animation_step = 0; - if (applet->animation_id) { - g_source_remove (applet->animation_id); - applet->animation_id = 0; - } - clear_active_connections (applet); applet->active_connections = nm_client_get_active_connections (applet->nm_client); @@ -3166,17 +3090,8 @@ if (applet->wireless_100_icon) g_object_unref (applet->wireless_100_icon); - for (i = 0; i < NUM_CONNECTING_STAGES; i++) { - int j; - - for (j = 0; j < NUM_CONNECTING_FRAMES; j++) - if (applet->network_connecting_icons[i][j]) - g_object_unref (applet->network_connecting_icons[i][j]); - } - - for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++) - if (applet->vpn_connecting_icons[i]) - g_object_unref (applet->vpn_connecting_icons[i]); + if (applet->network_connecting_icon) + g_object_unref (applet->network_connecting_icon); nma_icons_zero (applet); } @@ -3196,16 +3111,7 @@ applet->wireless_75_icon = NULL; applet->wireless_100_icon = NULL; - for (i = 0; i < NUM_CONNECTING_STAGES; i++) - { - int j; - - for (j = 0; j < NUM_CONNECTING_FRAMES; j++) - applet->network_connecting_icons[i][j] = NULL; - } - - for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++) - applet->vpn_connecting_icons[i] = NULL; + applet->network_connecting_icon = NULL; applet->icons_loaded = FALSE; } @@ -3257,28 +3163,7 @@ ICON_LOAD(applet->wireless_75_icon, "nm-signal-75"); ICON_LOAD(applet->wireless_100_icon, "nm-signal-100"); - for (i = 0; i < NUM_CONNECTING_STAGES; i++) - { - int j; - - for (j = 0; j < NUM_CONNECTING_FRAMES; j++) - { - char *name; - - name = g_strdup_printf ("nm-stage%02d-connecting%02d", i+1, j+1); - ICON_LOAD(applet->network_connecting_icons[i][j], name); - g_free (name); - } - } - - for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++) - { - char *name; - - name = g_strdup_printf ("nm-vpn-connecting%02d", i+1); - ICON_LOAD(applet->vpn_connecting_icons[i], name); - g_free (name); - } + ICON_LOAD(applet->network_connecting_icon, "nm-connecting"); success = TRUE; Index: trunk/src/applet.h =================================================================== --- trunk.orig/src/applet.h 2008-02-06 20:30:06.000000000 +0000 +++ trunk/src/applet.h 2008-02-06 20:46:05.000000000 +0000 @@ -111,20 +111,12 @@ GdkPixbuf * wireless_50_icon; GdkPixbuf * wireless_75_icon; GdkPixbuf * wireless_100_icon; -#define NUM_CONNECTING_STAGES 3 -#define NUM_CONNECTING_FRAMES 11 - GdkPixbuf * network_connecting_icons[NUM_CONNECTING_STAGES][NUM_CONNECTING_FRAMES]; -#define NUM_VPN_CONNECTING_FRAMES 14 - GdkPixbuf * vpn_connecting_icons[NUM_VPN_CONNECTING_FRAMES]; + GdkPixbuf * network_connecting_icon; GdkPixbuf * vpn_lock_icon; /* Active status icon pixbufs */ GdkPixbuf * icon_layers[ICON_LAYER_MAX + 1]; - /* Animation stuff */ - int animation_step; - guint animation_id; - /* Direct UI elements */ #ifdef HAVE_STATUS_ICON GtkStatusIcon * status_icon;