Mon, 26 Jun 2017 01:11:28 -0300
facebook: Add everyone to "Facebook Friends" group and persist Non-Friends
| libpurple/protocols/facebook/facebook.c | file | annotate | diff | comparison | revisions |
--- a/libpurple/protocols/facebook/facebook.c Sun Jun 25 04:57:28 2017 -0300 +++ b/libpurple/protocols/facebook/facebook.c Mon Jun 26 01:11:28 2017 -0300 @@ -68,15 +68,18 @@ PurpleBlistNode *n; PurpleBlistNode *node; PurpleGroup *grp; + const gchar *title; if (friend) { - return purple_blist_get_default_group(); + title = _("Facebook Friends"); + } else { + title = _("Facebook Non-Friends"); } - grp = purple_blist_find_group(_("Facebook Non-Friends")); + grp = purple_blist_find_group(title); if (G_UNLIKELY(grp == NULL)) { - grp = purple_group_new(_("Facebook Non-Friends")); + grp = purple_group_new(title); node = NULL; for (n = purple_blist_get_root(); n != NULL; n = n->next) { @@ -86,9 +89,10 @@ /* Append to the end of the buddy list */ purple_blist_add_group(grp, node); - node = PURPLE_BLIST_NODE(grp); - purple_blist_node_set_transient(node, TRUE); - purple_blist_node_set_bool(node, "collapsed", TRUE); + if (!friend) { + node = PURPLE_BLIST_NODE(grp); + purple_blist_node_set_bool(node, "collapsed", TRUE); + } } return grp; @@ -98,16 +102,13 @@ fb_buddy_add_nonfriend(PurpleAccount *acct, FbApiUser *user) { gchar uid[FB_ID_STRMAX]; - PurpleBlistNode *node; PurpleBuddy *bdy; PurpleGroup *grp; FB_ID_TO_STR(user->uid, uid); bdy = purple_buddy_new(acct, uid, NULL); grp = fb_get_group(FALSE); - node = PURPLE_BLIST_NODE(bdy); - purple_blist_node_set_transient(node, TRUE); purple_buddy_set_server_alias(bdy, user->name); purple_blist_add_buddy(bdy, NULL, grp, NULL); }