mirror of
https://github.com/vale981/ement.el
synced 2025-03-05 09:21:37 -05:00
Fix: "kicked and banned" event coalescing
This commit is contained in:
parent
481f571a2f
commit
cbdba7b234
1 changed files with 8 additions and 2 deletions
|
@ -3589,7 +3589,12 @@ STRUCT should be an `ement-room-membership-events' struct."
|
|||
(equal "invite" (cdr (membership-types event))))
|
||||
events))
|
||||
(ban-events (cl-remove-if-not (lambda (event)
|
||||
(equal "ban" (cdr (membership-types event))))
|
||||
(and (member (cdr (membership-types event)) '("invite" "leave"))
|
||||
(equal "ban" (cdr (membership-types event)))))
|
||||
events))
|
||||
(kick-and-ban-events (cl-remove-if-not (lambda (event)
|
||||
(and (equal "join" (car (membership-types event)))
|
||||
(equal "ban" (cdr (membership-types event)))))
|
||||
events))
|
||||
(rename-events (cl-remove-if-not (lambda (event)
|
||||
(pcase-let ((`(,old . ,new) (membership-types event)))
|
||||
|
@ -3623,11 +3628,12 @@ STRUCT should be an `ement-room-membership-events' struct."
|
|||
"left" left-events
|
||||
"invited" invite-events
|
||||
"banned" ban-events
|
||||
"kicked and banned" kick-and-ban-events
|
||||
"changed name" rename-events
|
||||
"changed avatar" avatar-events)
|
||||
for users = (mapcar #'event-user
|
||||
(cl-delete-duplicates
|
||||
events :key #'ement-event-sender))
|
||||
events :key #'ement-event-state-key))
|
||||
for number = (length users)
|
||||
when events
|
||||
collect (format "%s %s (%s)" number
|
||||
|
|
Loading…
Add table
Reference in a new issue