Sun, 15 May 2016 05:41:39 -0300
Add "buddy-remove-from-group" blist signal from instantbird
It is fired when a buddy is removed permanently from a group but
not from the buddy list. (ie when the buddy has been moved)
| ChangeLog.API | file | annotate | diff | comparison | revisions | |
| libpurple/blist.c | file | annotate | diff | comparison | revisions |
--- a/ChangeLog.API Sun May 15 05:28:07 2016 -0300 +++ b/ChangeLog.API Sun May 15 05:41:39 2016 -0300 @@ -4,6 +4,7 @@ libpurple: Added: * account-status-changing signal (account signals) + * buddy-removed-from-group signal (blist signals) version 2.10.12: * No changes
--- a/libpurple/blist.c Sun May 15 05:28:07 2016 -0300 +++ b/libpurple/blist.c Sun May 15 05:41:39 2016 -0300 @@ -1624,8 +1624,10 @@ ((PurpleContact*)bnode->parent)->totalsize--; /* the group totalsize will be taken care of by remove_contact below */ - if (bnode->parent->parent != (PurpleBlistNode*)g) + if (bnode->parent->parent != (PurpleBlistNode*)g) { + purple_signal_emit(purple_blist_get_handle(), "buddy-removed-from-group", buddy); serv_move_buddy(buddy, (PurpleGroup *)bnode->parent->parent, g); + } if (bnode->next) bnode->next->prev = bnode->prev; @@ -3193,6 +3195,11 @@ purple_value_new(PURPLE_TYPE_SUBTYPE, PURPLE_SUBTYPE_BLIST_BUDDY)); + purple_signal_register(handle, "buddy-removed-from-group", + purple_marshal_VOID__POINTER, NULL, 1, + purple_value_new(PURPLE_TYPE_SUBTYPE, + PURPLE_SUBTYPE_BLIST_BUDDY)); + purple_signal_register(handle, "buddy-icon-changed", purple_marshal_VOID__POINTER, NULL, 1, purple_value_new(PURPLE_TYPE_SUBTYPE,