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

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

[elpa] externals/ement 3df2371762 4/4: Fix: Reply to original messages


From: ELPA Syncer
Subject: [elpa] externals/ement 3df2371762 4/4: Fix: Reply to original messages
Date: Sun, 7 Jul 2024 21:58:06 -0400 (EDT)

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

    Fix: Reply to original messages
    
    Closes #230.  Fixes #277.
    
    Co-authored-by: Phil Sainty <phil@catalyst.net.nz>
---
 README.org    | 3 +++
 ement-lib.el  | 3 ++-
 ement-room.el | 7 ++++---
 3 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/README.org b/README.org
index a65d0a068f..4aebb0546f 100644
--- a/README.org
+++ b/README.org
@@ -303,6 +303,9 @@ Ement.el doesn't support encrypted rooms natively, but it 
can be used transparen
 
 + Option ~ement-room-coalesce-events~ may now be set to (and defaults to) a 
maximum number of events to coalesce together.  (This avoids potential 
performance problems in rare cases.  See 
[[https://github.com/alphapapa/ement.el/issues/247][#247]].  Thanks to 
[[https://github.com/viiru-][Arto Jantunen]] for reporting and 
[[https://github.com/sergiodj][Sergio Durigan Junior]] for testing.)
 
+*Fixes*
++ Replies to edited messages are correctly sent to the original event (whereas 
previously they were sent to the edit, which caused reactions to not be shown). 
 ([[https://github.com/alphapapa/ement.el/issues/230][#230]], 
[[https://github.com/alphapapa/ement.el/issues/277][#277]].  Thanks to 
[[https://github.com/phil-s][Phil Sainty]] for suggesting, and to 
[[https://github.com/dionisos2][dionisos]] for reporting.) 
+
 ** 0.15.1
 
 *Fixes*
diff --git a/ement-lib.el b/ement-lib.el
index 23c4919863..bfb8bed334 100644
--- a/ement-lib.el
+++ b/ement-lib.el
@@ -1142,7 +1142,8 @@ e.g. `ement-room-send-org-filter')."
     (when filter
       (setf content (funcall filter content room)))
     (when replying-to-event
-      (setf content (ement--add-reply content replying-to-event room)))
+      (setf replying-to-event (ement--original-event-for replying-to-event 
session)
+            content (ement--add-reply content replying-to-event room)))
     (ement-api session endpoint :method 'put :data (json-encode content)
       :then (apply-partially then :room room :session session
                              ;; Data is added when calling back.
diff --git a/ement-room.el b/ement-room.el
index 4b79137626..70dd4269da 100644
--- a/ement-room.el
+++ b/ement-room.el
@@ -2262,9 +2262,10 @@ Interactively, to event at point."
                       (setq-local ement-room-replying-to-event event)))
                    (body (ement-room-with-typing
                            (ement-room-read-string prompt nil 
'ement-room-message-history
-                                                   nil 'inherit-input-method)))
-                   (replying-to-event (ement--original-event-for event 
ement-session)))
-        (ement-room-send-message room session :body body :replying-to-event 
replying-to-event)))))
+                                                   nil 
'inherit-input-method))))
+        ;; NOTE: `ement-room-send-message' looks up the original event, so we 
pass `event'
+        ;; as :replying-to-event.
+        (ement-room-send-message room session :body body :replying-to-event 
event)))))
 
 (when (assoc "emoji" input-method-alist)
   (defun ement-room-use-emoji-input-method ()



reply via email to

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