From d06fb95a0ed6337d4897e8f9b0538057dee8c053 Mon Sep 17 00:00:00 2001 From: Robert McQueen Date: Sat, 15 May 2010 13:54:18 +0100 Subject: use user-extended-away status icon in favour of user-idle The freedesktop.org icon spec defines that the icon for the extended away status is called user-idle. However, some icon theme authors interpret this name as meaning mere idleness rather than the intended extended away semantic of away *and* idle, creating visual confusion (extended-away contacts appearing less away than contacts who are merely away). Some themes contain a non-standard user-extended-away icon with the correct semantic, so this patch makes Empathy use it in preference to user-idle if available. (Incidentally, at the moment Telepathy itself never actually shows remote contacts as idle.) --- libempathy-gtk/empathy-ui-utils.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'libempathy-gtk/empathy-ui-utils.c') diff --git a/libempathy-gtk/empathy-ui-utils.c b/libempathy-gtk/empathy-ui-utils.c index ff7ed34ed..586eaee16 100644 --- a/libempathy-gtk/empathy-ui-utils.c +++ b/libempathy-gtk/empathy-ui-utils.c @@ -182,7 +182,13 @@ empathy_icon_name_for_presence (TpConnectionPresenceType presence) case TP_CONNECTION_PRESENCE_TYPE_AWAY: return EMPATHY_IMAGE_AWAY; case TP_CONNECTION_PRESENCE_TYPE_EXTENDED_AWAY: - return EMPATHY_IMAGE_EXT_AWAY; + if (gtk_icon_theme_has_icon (gtk_icon_theme_get_default (), + EMPATHY_IMAGE_EXT_AWAY)) + return EMPATHY_IMAGE_EXT_AWAY; + + /* The 'extended-away' icon is not an official one so we fallback to idle if + * it's not implemented */ + return EMPATHY_IMAGE_IDLE; case TP_CONNECTION_PRESENCE_TYPE_HIDDEN: if (gtk_icon_theme_has_icon (gtk_icon_theme_get_default (), EMPATHY_IMAGE_HIDDEN)) -- cgit v1.2.3