[empathy] Display the Top Contacts group name above the top contacts even if all of them are offline



commit a507ac419e482b94c2dd4d0c7ddd3cc67116b6e1
Author: Laurent Contzen <lcontzen gmail com>
Date:   Fri Jul 13 17:10:50 2012 +0200

    Display the Top Contacts group name above the top contacts even if all of them are offline
    
    https://bugzilla.gnome.org/show_bug.cgi?id=679868

 libempathy-gtk/empathy-roster-view.c |   40 +++++++++++++++++-----------------
 1 files changed, 20 insertions(+), 20 deletions(-)
---
diff --git a/libempathy-gtk/empathy-roster-view.c b/libempathy-gtk/empathy-roster-view.c
index 5b0433f..9647a1a 100644
--- a/libempathy-gtk/empathy-roster-view.c
+++ b/libempathy-gtk/empathy-roster-view.c
@@ -809,26 +809,30 @@ contact_should_be_displayed (EmpathyRosterView *self,
           empathy_live_search_get_text (self->priv->search),
           empathy_live_search_get_words (self->priv->search));
     }
-  else
+
+  if (self->priv->show_offline)
+      return TRUE;
+
+  if (contact_is_favourite (contact))
     {
-      if (self->priv->show_offline)
-        {
-          return TRUE;
-        }
-      else if (!self->priv->show_groups &&
-          contact_is_favourite (contact))
-        {
-          /* Always display favourite contacts in non-group mode. In the group
-           * mode we'll display only the one in the 'top' section. */
-          return TRUE;
-        }
-      else
-        {
-          return empathy_roster_contact_is_online (contact);
-        }
+      const gchar *group_name;
+
+      if (!self->priv->show_groups)
+        /* Always display favourite contacts in non-group mode. */
+        return TRUE;
+
+      group_name = empathy_roster_contact_get_group (contact);
+
+      if (!tp_strdiff (group_name, EMPATHY_ROSTER_VIEW_GROUP_TOP_GROUP))
+        /* Always display favourite contact in group mode only in the
+         * 'top group'*/
+        return TRUE;
     }
+
+  return empathy_roster_contact_is_online (contact);
 }
 
+
 static gboolean
 filter_contact (EmpathyRosterView *self,
     EmpathyRosterContact *contact)
@@ -845,10 +849,6 @@ filter_contact (EmpathyRosterView *self,
       group_name = empathy_roster_contact_get_group (contact);
       group = lookup_roster_group (self, group_name);
 
-      if (!tp_strdiff (group_name, EMPATHY_ROSTER_VIEW_GROUP_TOP_GROUP) &&
-          contact_is_favourite (contact))
-        displayed = TRUE;
-
       if (group != NULL)
         {
           /* When searching, always display even if the group is closed */



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