changeset 15492:fd4afe8bb584

Faded idle status icons
author Sean Egan <seanegan@gmail.com>
date Fri, 02 Feb 2007 21:24:46 +0000
parents fa3066827139
children 2554d6152729
files pidgin/gaimstock.c pidgin/gaimstock.h pidgin/gtkblist.c pidgin/gtkstatusbox.c pidgin/pixmaps/status/16/Makefile.am pidgin/pixmaps/status/16/available_i.png pidgin/pixmaps/status/16/invisible.png
diffstat 7 files changed, 48 insertions(+), 24 deletions(-) [+]
line wrap: on
line diff
--- a/pidgin/gaimstock.c	Fri Feb 02 21:21:58 2007 +0000
+++ b/pidgin/gaimstock.c	Fri Feb 02 21:24:46 2007 +0000
@@ -146,12 +146,15 @@
   gboolean medium;
   gboolean huge;
 } const sized_stock_icons [] = {
-	{ PIDGIN_STOCK_STATUS_AVAILABLE,"status", "available.png", 	TRUE, TRUE, TRUE, FALSE },
-	{ PIDGIN_STOCK_STATUS_AWAY, 	"status", "away.png", 		TRUE, TRUE, TRUE, FALSE },
+	{ PIDGIN_STOCK_STATUS_AVAILABLE,   "status", "available.png", 	TRUE, TRUE, TRUE, FALSE },
+	{ PIDGIN_STOCK_STATUS_AVAILABLE_I, "status", "available_i.png", TRUE, FALSE, FALSE, FALSE },
+	{ PIDGIN_STOCK_STATUS_AWAY, 	   "status", "away.png",	TRUE, TRUE, TRUE, FALSE },
+	{ PIDGIN_STOCK_STATUS_AWAY_I, 	"status", "away_i.png",		TRUE, FALSE, FALSE, FALSE },
 	{ PIDGIN_STOCK_STATUS_BUSY, 	"status", "busy.png", 		TRUE, TRUE, TRUE, FALSE },
+	{ PIDGIN_STOCK_STATUS_BUSY_I, 	"status", "busy_i.png", 	TRUE, FALSE, FALSE, FALSE },
 	{ PIDGIN_STOCK_STATUS_CHAT, 	"status", "chat.png",		TRUE, TRUE, TRUE, FALSE },
-	{ PIDGIN_STOCK_STATUS_INVISIBLE,"status", "invisible.png",      TRUE, TRUE, TRUE, FALSE },
 	{ PIDGIN_STOCK_STATUS_XA, 	"status", "extended-away.png",	TRUE, TRUE, TRUE, FALSE },
+	{ PIDGIN_STOCK_STATUS_XA_I, 	"status", "extended-away_i.png",TRUE, FALSE, FALSE, FALSE },
 	{ PIDGIN_STOCK_STATUS_LOGIN, 	"status", "log-in.png",		TRUE, TRUE, TRUE, FALSE },
 	{ PIDGIN_STOCK_STATUS_LOGOUT, 	"status", "log-out.png",	TRUE, TRUE, TRUE, FALSE },
 	{ PIDGIN_STOCK_STATUS_OFFLINE, 	"status", "offline.png",	TRUE, TRUE, TRUE, FALSE },
--- a/pidgin/gaimstock.h	Fri Feb 02 21:21:58 2007 +0000
+++ b/pidgin/gaimstock.h	Fri Feb 02 21:24:46 2007 +0000
@@ -95,18 +95,21 @@
 #define GAIM_STOCK_VOICE_CHAT      "gaim-voice-chat"
 
 /* Status icons */
-#define PIDGIN_STOCK_STATUS_AVAILABLE "pidgin-status-available"
-#define PIDGIN_STOCK_STATUS_AWAY      "pidgin-status-away"
-#define PIDGIN_STOCK_STATUS_BUSY      "pidgin-status-busy"
-#define PIDGIN_STOCK_STATUS_CHAT      "pidgin-status-chat"
-#define PIDGIN_STOCK_STATUS_INVISIBLE "pidgin-status-invisible"
-#define PIDGIN_STOCK_STATUS_XA        "pidgin-status-xa"
-#define PIDGIN_STOCK_STATUS_LOGIN     "pidgin-status-login"
-#define PIDGIN_STOCK_STATUS_LOGOUT    "pidgin-status-logout"
-#define PIDGIN_STOCK_STATUS_OFFLINE   "pidgin-status-offline"
-#define PIDGIN_STOCK_STATUS_PERSON    "pidgin-status-person"
-#define PIDGIN_STOCK_STATUS_OPERATOR  "pidgin-status-operator"
-#define PIDGIN_STOCK_STATUS_HALFOP    "pidgin-status-halfop"
+#define PIDGIN_STOCK_STATUS_AVAILABLE  "pidgin-status-available"
+#define PIDGIN_STOCK_STATUS_AVAILABLE_I "pidgin-status-available-i"
+#define PIDGIN_STOCK_STATUS_AWAY       "pidgin-status-away"
+#define PIDGIN_STOCK_STATUS_AWAY_I     "pidgin-status-away-i"
+#define PIDGIN_STOCK_STATUS_BUSY       "pidgin-status-busy"
+#define PIDGIN_STOCK_STATUS_BUSY_I     "pidgin-status-busy-i"
+#define PIDGIN_STOCK_STATUS_CHAT       "pidgin-status-chat"
+#define PIDGIN_STOCK_STATUS_XA         "pidgin-status-xa"
+#define PIDGIN_STOCK_STATUS_XA_I       "pidgin-status-xa-i"
+#define PIDGIN_STOCK_STATUS_LOGIN      "pidgin-status-login"
+#define PIDGIN_STOCK_STATUS_LOGOUT     "pidgin-status-logout"
+#define PIDGIN_STOCK_STATUS_OFFLINE    "pidgin-status-offline"
+#define PIDGIN_STOCK_STATUS_PERSON     "pidgin-status-person"
+#define PIDGIN_STOCK_STATUS_OPERATOR   "pidgin-status-operator"
+#define PIDGIN_STOCK_STATUS_HALFOP     "pidgin-status-halfop"
 
 /* Dialog icons */
 #define PIDGIN_STOCK_DIALOG_AUTH	"pidgin-dialog-auth"
--- a/pidgin/gtkblist.c	Fri Feb 02 21:21:58 2007 +0000
+++ b/pidgin/gtkblist.c	Fri Feb 02 21:24:46 2007 +0000
@@ -3072,19 +3072,34 @@
 			ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_LOGOUT,
 					icon_size, "GtkTreeView");
 		else if (gaim_presence_is_status_primitive_active(p, GAIM_STATUS_UNAVAILABLE))
-			ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_BUSY,
-					icon_size, "GtkTreeView");
+			if (gaim_presence_is_idle(p) && size == GAIM_STATUS_ICON_SMALL)
+				ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_BUSY_I,
+						icon_size, "GtkTreeView");
+			else
+				ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_BUSY,
+						icon_size, "GtkTreeView");
 		else if (gaim_presence_is_status_primitive_active(p, GAIM_STATUS_AWAY))
-			ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_AWAY,
-					icon_size, "GtkTreeView");
+		        if (gaim_presence_is_idle(p) && size == GAIM_STATUS_ICON_SMALL)
+		                ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_AWAY_I,
+		                                icon_size, "GtkTreeView");
+		 	else
+				ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_AWAY,
+						icon_size, "GtkTreeView");
 		else if (gaim_presence_is_status_primitive_active(p, GAIM_STATUS_EXTENDED_AWAY))
-			ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_XA,
-					icon_size, "GtkTreeView");
+			if (gaim_presence_is_idle(p) && size == GAIM_STATUS_ICON_SMALL)
+		        	ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_XA_I,
+						icon_size, "GtkTreeView");
+			else
+				ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_XA,
+						icon_size, "GtkTreeView");
 		else if (gaim_presence_is_status_primitive_active(p, GAIM_STATUS_OFFLINE))
 			ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_OFFLINE,
 					icon_size, "GtkTreeView");
+		else if (gaim_presence_is_idle(p) && size == GAIM_STATUS_ICON_SMALL)
+			ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_AVAILABLE_I,
+					icon_size, "GtkTreeView");
 		else
-			ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_AVAILABLE,
+			ret = gtk_widget_render_icon(GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_AVAILABLE,
 					icon_size, "GtkTreeView");
 	} else if (chat) {
 		ret = gtk_widget_render_icon (GTK_WIDGET(gtkblist->treeview), PIDGIN_STOCK_STATUS_CHAT,
--- a/pidgin/gtkstatusbox.c	Fri Feb 02 21:21:58 2007 +0000
+++ b/pidgin/gtkstatusbox.c	Fri Feb 02 21:24:46 2007 +0000
@@ -1044,7 +1044,7 @@
 			                                  icon_size, "PidginStatusBox");
 			pixbuf3 = gtk_widget_render_icon (GTK_WIDGET(status_box->vbox), PIDGIN_STOCK_STATUS_OFFLINE,
 			                                  icon_size, "PidginStatusBox");
-			pixbuf4 = gtk_widget_render_icon (GTK_WIDGET(status_box->vbox), PIDGIN_STOCK_STATUS_INVISIBLE,
+			pixbuf4 = gtk_widget_render_icon (GTK_WIDGET(status_box->vbox), PIDGIN_STOCK_STATUS_AVAILABLE_I,
 			                                  icon_size, "PidginStatusBox");
 
 			gtk_gaim_status_box_add(GTK_GAIM_STATUS_BOX(status_box), GTK_GAIM_STATUS_BOX_TYPE_PRIMITIVE, pixbuf, _("Available"), NULL, GINT_TO_POINTER(GAIM_STATUS_AVAILABLE));
--- a/pidgin/pixmaps/status/16/Makefile.am	Fri Feb 02 21:21:58 2007 +0000
+++ b/pidgin/pixmaps/status/16/Makefile.am	Fri Feb 02 21:24:46 2007 +0000
@@ -1,12 +1,15 @@
 SUBDIRS = scalable
 
 EXTRA_DIST = 	available.png \
+		available_i.png \
 		away.png \
+		away_i.png \
 		busy.png \
+		busy_i.png \
 		chat.png \
 		extended-away.png \
+		extended-away_i.png \
 		half-operator.png \
-		invisible.png \
 		log-in.png \
 		log-out.png \
 		offline.png \
Binary file pidgin/pixmaps/status/16/available_i.png has changed
Binary file pidgin/pixmaps/status/16/invisible.png has changed