--- 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 @@
* account-status-changing signal (account signals)
+ * buddy-removed-from-group signal (blist signals) --- 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);
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,