From 7c4a63f3c2dd4ada51dedae8ec143ef48338d8de Mon Sep 17 00:00:00 2001 From: James Booth Date: Sat, 30 Jan 2016 22:23:59 +0000 Subject: Moved offline check logic in roster panel --- src/ui/rosterwin.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/ui/rosterwin.c') diff --git a/src/ui/rosterwin.c b/src/ui/rosterwin.c index ee57e145..ee92f322 100644 --- a/src/ui/rosterwin.c +++ b/src/ui/rosterwin.c @@ -354,6 +354,10 @@ _rosterwin_contact(ProfLayoutSplit *layout, PContact contact) static void _rosterwin_contacts_by_presence(ProfLayoutSplit *layout, const char *const presence, char *title, gboolean newline) { + if ((g_strcmp0(presence, "offline") == 0) && !prefs_get_boolean(PREF_ROSTER_OFFLINE)) { + return; + } + GSList *contacts = roster_get_contacts_by_presence(presence); // if this group has contacts, or if we want to show empty groups @@ -910,9 +914,7 @@ rosterwin_roster(void) _rosterwin_contacts_by_presence(layout, "away", "Away", TRUE); _rosterwin_contacts_by_presence(layout, "xa", "Extended Away", TRUE); _rosterwin_contacts_by_presence(layout, "dnd", "Do not disturb", TRUE); - if (prefs_get_boolean(PREF_ROSTER_OFFLINE)) { - _rosterwin_contacts_by_presence(layout, "offline", "Offline", TRUE); - } + _rosterwin_contacts_by_presence(layout, "offline", "Offline", TRUE); } else if (g_strcmp0(by, "group") == 0) { GSList *groups = roster_get_groups(); GSList *curr_group = groups; -- cgit 1.4.1-2-gfad0