diff options
author | Daniel Kamil Kozar <dkk089@gmail.com> | 2017-11-29 21:13:54 +0100 |
---|---|---|
committer | Daniel Kamil Kozar <dkk089@gmail.com> | 2017-11-29 21:13:54 +0100 |
commit | cdc8cb79cd02adc844716562eb01d1db85aa416b (patch) | |
tree | 9bd89098e0af0a63d2d09cf214a0a280bd8b5cad | |
parent | b1538a9d1369dcd3155f8560c671d56112a2ccc3 (diff) | |
download | pidgin-cdc8cb79cd02adc844716562eb01d1db85aa416b.tar.gz |
Use gtk_status_icon_get_icon_name instead of a new boolean variable
-rw-r--r-- | pidgin/gtkdocklet-gtk.c | 7 | ||||
-rw-r--r-- | pidgin/gtkdocklet.c | 14 | ||||
-rw-r--r-- | pidgin/gtkdocklet.h | 4 | ||||
-rw-r--r-- | pidgin/win32/gtkdocklet-win32.c | 2 |
4 files changed, 14 insertions, 13 deletions
diff --git a/pidgin/gtkdocklet-gtk.c b/pidgin/gtkdocklet-gtk.c index 460d1c8473..a948a0d7d5 100644 --- a/pidgin/gtkdocklet-gtk.c +++ b/pidgin/gtkdocklet-gtk.c @@ -134,9 +134,10 @@ docklet_gtk_status_clicked_cb(GtkStatusIcon *status_icon, guint button, guint ac } static void -docklet_gtk_status_update_icon(PurpleStatusPrimitive status, gboolean connecting, gboolean pending, gboolean blinked) +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); switch (status) { case PURPLE_STATUS_OFFLINE: @@ -159,11 +160,11 @@ docklet_gtk_status_update_icon(PurpleStatusPrimitive status, gboolean connecting break; } - if (connecting) { + if (connecting && strcmp(current_icon_name, PIDGIN_STOCK_TRAY_CONNECT) != 0) { icon_name = PIDGIN_STOCK_TRAY_CONNECT; } - if (!blinked && pending) { + if (pending && strcmp(current_icon_name, PIDGIN_STOCK_TRAY_PENDING) != 0) { icon_name = PIDGIN_STOCK_TRAY_PENDING; } diff --git a/pidgin/gtkdocklet.c b/pidgin/gtkdocklet.c index 489ccbc557..6a1d608ef4 100644 --- a/pidgin/gtkdocklet.c +++ b/pidgin/gtkdocklet.c @@ -74,16 +74,16 @@ docklet_blink_icon(gpointer data) if (blinked) { ui_ops->blank_icon(); } else { - pidgin_docklet_update_icon(blinked); + pidgin_docklet_update_icon(); } } else { - pidgin_docklet_update_icon(blinked); + pidgin_docklet_update_icon(); } ret = TRUE; /* keep blinking */ } else { docklet_blinking_timer = 0; blinked = FALSE; - pidgin_docklet_update_icon(FALSE); + pidgin_docklet_update_icon(); } return ret; @@ -211,7 +211,7 @@ docklet_update_status(void) pending = newpending; connecting = newconnecting; - pidgin_docklet_update_icon(FALSE); + pidgin_docklet_update_icon(); /* and schedule the blinker function if messages are pending */ if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/docklet/blink") @@ -762,10 +762,10 @@ docklet_menu(void) * public api for ui_ops **************************************************************************/ void -pidgin_docklet_update_icon(gboolean blinked) +pidgin_docklet_update_icon() { if (ui_ops && ui_ops->update_icon) - ui_ops->update_icon(status, connecting, pending, blinked); + ui_ops->update_icon(status, connecting, pending); } void @@ -799,7 +799,7 @@ pidgin_docklet_embedded() } visible = TRUE; docklet_update_status(); - pidgin_docklet_update_icon(FALSE); + pidgin_docklet_update_icon(); } void diff --git a/pidgin/gtkdocklet.h b/pidgin/gtkdocklet.h index 7f188b92a2..34f88a14f5 100644 --- a/pidgin/gtkdocklet.h +++ b/pidgin/gtkdocklet.h @@ -31,7 +31,7 @@ struct docklet_ui_ops { void (*create)(void); void (*destroy)(void); - void (*update_icon)(PurpleStatusPrimitive, gboolean, gboolean, gboolean); + void (*update_icon)(PurpleStatusPrimitive, gboolean, gboolean); void (*blank_icon)(void); void (*set_tooltip)(gchar *); GtkMenuPositionFunc position_menu; @@ -39,7 +39,7 @@ struct docklet_ui_ops /* functions in gtkdocklet.c */ -void pidgin_docklet_update_icon(gboolean blinked); +void pidgin_docklet_update_icon(void); void pidgin_docklet_clicked(int); void pidgin_docklet_embedded(void); void pidgin_docklet_remove(void); diff --git a/pidgin/win32/gtkdocklet-win32.c b/pidgin/win32/gtkdocklet-win32.c index 84609f111d..b02666078e 100644 --- a/pidgin/win32/gtkdocklet-win32.c +++ b/pidgin/win32/gtkdocklet-win32.c @@ -497,7 +497,7 @@ static void systray_remove_nid(void) { } static void winpidgin_tray_update_icon(PurpleStatusPrimitive status, - gboolean connecting, gboolean pending, gboolean blinked) { + gboolean connecting, gboolean pending) { int icon_index; g_return_if_fail(image != NULL); |