emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/ement daccdfe0e9 4/4: Change: (room-defevent "m.room.to


From: ELPA Syncer
Subject: [elpa] externals/ement daccdfe0e9 4/4: Change: (room-defevent "m.room.tombstone") Link new room, show in header
Date: Fri, 3 Mar 2023 22:57:41 -0500 (EST)

branch: externals/ement
commit daccdfe0e926c4196ad942402dc135519c9e22cc
Author: Adam Porter <adam@alphapapa.net>
Commit: Adam Porter <adam@alphapapa.net>

    Change: (room-defevent "m.room.tombstone") Link new room, show in header
---
 README.org    |  4 +++-
 ement-room.el | 13 +++++++++----
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/README.org b/README.org
index 06fdc74c28..c7c65c84d4 100644
--- a/README.org
+++ b/README.org
@@ -289,7 +289,9 @@ Note that, while ~matrix-client~ remains usable, and 
probably will for some time
 
 ** 0.7-pre
 
-Nothing new yet.
+*Changes*
+
++ Improve display of room tombstones (displayed at top and bottom of buffer, 
and new room ID is linked to join).
 
 ** 0.6
 
diff --git a/ement-room.el b/ement-room.el
index ee58b8c229..895ae3bb57 100644
--- a/ement-room.el
+++ b/ement-room.el
@@ -2422,13 +2422,18 @@ function to `ement-room-event-fns', which see."
 
 (ement-room-defevent "m.room.tombstone"
   (pcase-let* (((cl-struct ement-event content) event)
-               ((map body replacement_room) content)
-               (footer (propertize (format "This room has been replaced.  
Explanation:%S  Replacement room: <%s>" body replacement_room)
-                                   'face 'font-lock-warning-face)))
+               ((map body ('replacement_room new-room-id)) content)
+               (session ement-session)
+               (button (ement--button-buttonize
+                        (propertize new-room-id 'help-echo "Join replacement 
room")
+                        (lambda (_)
+                          (ement-room-join new-room-id session))))
+               (banner (format "This room has been replaced.  Explanation:%S  
Replacement room: <%s>" body button)))
+    (add-face-text-property 0 (length banner) 'font-lock-warning-face t banner)
     ;; NOTE: We assume that no more typing events will be received,
     ;; which would replace the footer.
     (ement-room--insert-event event)
-    (ewoc-set-hf ement-ewoc "" footer)))
+    (ewoc-set-hf ement-ewoc banner banner)))
 
 ;;;;; Read markers
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]