[empathy] theme-adium: ensure we always use the same color when sending messages



commit 2a856251402a5ed06a5f9853b7b26abfcbf5eb3c
Author: Guillaume Desmottes <guillaume desmottes collabora co uk>
Date:   Mon Sep 12 16:58:46 2011 +0200

    theme-adium: ensure we always use the same color when sending messages
    
    https://bugzilla.gnome.org/show_bug.cgi?id=658821

 libempathy-gtk/empathy-theme-adium.c |   14 ++++++++++----
 1 files changed, 10 insertions(+), 4 deletions(-)
---
diff --git a/libempathy-gtk/empathy-theme-adium.c b/libempathy-gtk/empathy-theme-adium.c
index 4e32630..f81329b 100644
--- a/libempathy-gtk/empathy-theme-adium.c
+++ b/libempathy-gtk/empathy-theme-adium.c
@@ -541,7 +541,8 @@ theme_adium_append_html (EmpathyThemeAdium *theme,
 		         const gchar       *service_name,
 		         const gchar       *message_classes,
 		         gint64             timestamp,
-		         gboolean           is_backlog)
+		         gboolean           is_backlog,
+		         gboolean           outgoing)
 {
 	EmpathyThemeAdiumPriv *priv = GET_PRIV (theme);
 	GString     *string;
@@ -571,7 +572,12 @@ theme_adium_append_html (EmpathyThemeAdium *theme,
 			 * Incoming/SenderColors.txt it will be used instead of
 			 * the default colors.
 			 */
-			if (contact_id != NULL) {
+
+			/* Ensure we always use the same color when sending messages
+			 * (bgo #658821) */
+			if (outgoing) {
+				replace = "inherit";
+			} else if (contact_id != NULL) {
 				guint hash = g_str_hash (contact_id);
 				replace = colors[hash % G_N_ELEMENTS (colors)];
 			}
@@ -687,7 +693,7 @@ theme_adium_append_event_escaped (EmpathyChatView *view,
 	theme_adium_append_html (theme, "appendMessage",
 				 priv->data->status_html, escaped, NULL, NULL, NULL,
 				 NULL, "event",
-				 empathy_time_get_current (), FALSE);
+				 empathy_time_get_current (), FALSE, FALSE);
 
 	/* There is no last contact */
 	if (priv->last_contact) {
@@ -944,7 +950,7 @@ theme_adium_append_message (EmpathyChatView *view,
 	theme_adium_append_html (theme, func, html, body_escaped,
 				 avatar_filename, name, contact_id,
 				 service_name, message_classes->str,
-				 timestamp, is_backlog);
+				 timestamp, is_backlog, empathy_contact_is_user (sender));
 
 	/* Keep the sender of the last displayed message */
 	if (priv->last_contact) {



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]