[empathy] roster-contact: prefix status msg in case of error



commit 9c654275d44e7ad9a1ef8d49fc9d02bcb5a171fe
Author: Guillaume Desmottes <guillaume desmottes collabora co uk>
Date:   Thu Nov 29 13:55:08 2012 +0100

    roster-contact: prefix status msg in case of error
    
    https://bugzilla.gnome.org/show_bug.cgi?id=688860

 libempathy-gtk/empathy-roster-contact.c |   22 +++++++++++++++++++++-
 1 files changed, 21 insertions(+), 1 deletions(-)
---
diff --git a/libempathy-gtk/empathy-roster-contact.c b/libempathy-gtk/empathy-roster-contact.c
index e72ae44..918ccdb 100644
--- a/libempathy-gtk/empathy-roster-contact.c
+++ b/libempathy-gtk/empathy-roster-contact.c
@@ -1,5 +1,7 @@
 #include "config.h"
 
+#include <glib/gi18n-lib.h>
+
 #include "empathy-roster-contact.h"
 
 #include <telepathy-glib/telepathy-glib.h>
@@ -204,7 +206,25 @@ update_presence_msg (EmpathyRosterContact *self)
     }
   else
     {
-      gtk_label_set_text (GTK_LABEL (self->priv->presence_msg), msg);
+      FolksPresenceType type;
+
+      type = folks_presence_details_get_presence_type (
+          FOLKS_PRESENCE_DETAILS (self->priv->individual));
+      if (type == FOLKS_PRESENCE_TYPE_ERROR)
+        {
+          gchar *tmp;
+
+          /* Add a prefix explaining that something goes wrong when trying to
+           * fetch contact's presence. */
+          tmp = g_strdup_printf (_("Server cannot find contact: %s"), msg);
+          gtk_label_set_text (GTK_LABEL (self->priv->presence_msg), tmp);
+
+          g_free (tmp);
+        }
+      else
+        {
+          gtk_label_set_text (GTK_LABEL (self->priv->presence_msg), msg);
+        }
 
       gtk_alignment_set (GTK_ALIGNMENT (self->priv->first_line_alig),
           0, 0.75, 1, 1);



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