im.pidgin.pidgin: a7fd1a77d527c2399c6ab65560c834c989a83427

sadrul at pidgin.im sadrul at pidgin.im
Fri Oct 12 16:16:25 EDT 2007


-----------------------------------------------------------------
Revision: a7fd1a77d527c2399c6ab65560c834c989a83427
Ancestor: f9d3abd0678a04291edd671c4e5d87c7217984bb
Author: sadrul at pidgin.im
Date: 2007-10-12T20:17:24
Branch: im.pidgin.pidgin

Modified files:
        COPYRIGHT pidgin/gtkconv.c

ChangeLog: 

Patch from Kramer to boldify the text in tab-titles when the user is typing
and there are unread messages in the conversation. Closes #3464.

-------------- next part --------------
============================================================
--- COPYRIGHT	e48add267248e0ee78bf01820a4611796619c22b
+++ COPYRIGHT	e5f22be978d3ee54425c4c6810fa3d308e64b74b
@@ -196,6 +196,7 @@ Cole Kowalski
 Akuke Kok
 Konstantin Korikov
 Cole Kowalski
+Matt Kramer
 Gary Kramlich
 Jan Kratochvil
 Andrej Krivulčík
============================================================
--- pidgin/gtkconv.c	f7a7fb0616b56ab9f15990aab1c6eaa8c55e2483
+++ pidgin/gtkconv.c	1e80bbc04267e1238fbb380a398f96062126681e
@@ -6519,6 +6519,7 @@ pidgin_conv_update_fields(PurpleConversa
 		AtkObject *accessibility_obj;
 		/* I think this is a little longer than it needs to be but I'm lazy. */
 		char *style;
+		gboolean bold = FALSE;
 
 		if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM)
 			im = PURPLE_CONV_IM(conv);
@@ -6552,7 +6553,7 @@ pidgin_conv_update_fields(PurpleConversa
 		gtk_list_store_set(gtkconv->infopane_model, &(gtkconv->infopane_iter),
 				CONV_TEXT_COLUMN, markup, -1);
 	        /* XXX seanegan Why do I have to do this? */
-        	gtk_widget_queue_draw(gtkconv->infopane);
+		gtk_widget_queue_draw(gtkconv->infopane);
 	
 		if (title != markup)
 			g_free(markup);
@@ -6571,31 +6572,38 @@ pidgin_conv_update_fields(PurpleConversa
 			style = "color=\"#c4a000\"";
 		} else if (gtkconv->unseen_state == PIDGIN_UNSEEN_NICK)	{
 			atk_object_set_description(accessibility_obj, _("Nick Said"));
-			style = "color=\"#204a87\" weight=\"bold\"";
+			style = "color=\"#204a87\"";
 		} else if (gtkconv->unseen_state == PIDGIN_UNSEEN_TEXT)	{
 			atk_object_set_description(accessibility_obj, _("Unread Messages"));
-			style = "color=\"#cc0000\" weight=\"bold\"";
+			style = "color=\"#cc0000\"";
 		} else if (gtkconv->unseen_state == PIDGIN_UNSEEN_EVENT) {
 			atk_object_set_description(accessibility_obj, _("New Event"));
-			style = "color=\"#888a85\" weight=\"bold\"";
+			style = "color=\"#888a85\"";
 		} else {
-			style = "";
+			style = NULL;
 		}
+
+		if (gtkconv->unseen_state == PIDGIN_UNSEEN_TEXT ||
+				gtkconv->unseen_state == PIDGIN_UNSEEN_NICK ||
+				gtkconv->unseen_state == PIDGIN_UNSEEN_EVENT)
+			bold = TRUE;
 		
-		if (*style != '\0')
+		if (style || bold)
 		{
 			char *html_title,*label;
 
 			html_title = g_markup_escape_text(title, -1);
-			label = g_strdup_printf("<span %s>%s</span>",
-			                        style, html_title);
+			label = g_strdup_printf("<span %s %s>%s</span>",
+			                        style ? style : "",
+			                        bold ? "weight=\"bold\"" : "",
+			                        html_title);
 			g_free(html_title);
 			gtk_label_set_markup(GTK_LABEL(gtkconv->tab_label), label);
 			g_free(label);
 		}
 		else
 			gtk_label_set_text(GTK_LABEL(gtkconv->tab_label), title);
-		
+
 		if (pidgin_conv_window_is_active_conversation(conv))
 			update_typing_icon(gtkconv);
 


More information about the Commits mailing list