--- a/pidgin/gtkdocklet-gtk.c Tue Dec 26 00:17:47 2017 -0600
+++ b/pidgin/gtkdocklet-gtk.c Fri Dec 29 02:59:40 2017 +0000
@@ -137,6 +137,7 @@
docklet_gtk_status_update_icon(PurpleStatusPrimitive status, gboolean connecting, gboolean pending)
const gchar *icon_name = NULL;
+ const gchar *current_icon_name = gtk_status_icon_get_icon_name(docklet); case PURPLE_STATUS_OFFLINE:
@@ -159,20 +160,17 @@
+ if (connecting && !purple_strequal(current_icon_name, PIDGIN_STOCK_TRAY_CONNECT)) { + icon_name = PIDGIN_STOCK_TRAY_CONNECT; + if (pending && !purple_strequal(current_icon_name, PIDGIN_STOCK_TRAY_PENDING)) { icon_name = PIDGIN_STOCK_TRAY_PENDING;
- icon_name = PIDGIN_STOCK_TRAY_CONNECT;
gtk_status_icon_set_from_icon_name(docklet, icon_name);
- if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/docklet/blink")) {
- gtk_status_icon_set_blinking(docklet, (pending && !connecting));
- } else if (gtk_status_icon_get_blinking(docklet)) {
- gtk_status_icon_set_blinking(docklet, FALSE);
--- a/pidgin/gtkdocklet.c Tue Dec 26 00:17:47 2017 -0600
+++ b/pidgin/gtkdocklet.c Fri Dec 29 02:59:40 2017 +0000
@@ -69,10 +69,13 @@
- if(pending && !connecting) {
- if (ui_ops && ui_ops->blank_icon)
+ if (ui_ops && ui_ops->blank_icon) { + pidgin_docklet_update_icon(); pidgin_docklet_update_icon();
@@ -80,6 +83,7 @@
docklet_blinking_timer = 0;
+ pidgin_docklet_update_icon();