mirror of
https://github.com/vale981/ement.el
synced 2025-03-06 01:31:41 -05:00
Fix: (defevent "m.room.member") Use membership
If the user is joined, add it to the tables; otherwise, remove it. Previously, users who left the room remained in the tables.
This commit is contained in:
parent
51b6c3a562
commit
0c791810b4
1 changed files with 7 additions and 4 deletions
11
ement.el
11
ement.el
|
@ -802,7 +802,7 @@ and `session' to the session. Adds function to
|
|||
(ignore session)
|
||||
(pcase-let* (((cl-struct ement-room members) room)
|
||||
((cl-struct ement-event state-key
|
||||
(content (map displayname
|
||||
(content (map displayname membership
|
||||
('avatar_url avatar-url))))
|
||||
event)
|
||||
(user (or (gethash state-key ement-users)
|
||||
|
@ -814,9 +814,12 @@ and `session' to the session. Adds function to
|
|||
;; in the struct anyway.
|
||||
:displayname displayname)
|
||||
ement-users))))
|
||||
(puthash user displayname (ement-room-displaynames room))
|
||||
(unless (gethash state-key members)
|
||||
(puthash state-key user members))))
|
||||
(pcase membership
|
||||
("join"
|
||||
(puthash state-key user members)
|
||||
(puthash user displayname (ement-room-displaynames room)))
|
||||
(_ (remhash state-key members)
|
||||
(remhash user (ement-room-displaynames room))))))
|
||||
|
||||
(ement-defevent "m.room.name"
|
||||
(ignore session)
|
||||
|
|
Loading…
Add table
Reference in a new issue