emacs-diffs
[Top][All Lists]
Advanced

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

master 4eda77ed335 1/7: Fix regression in erc-keep-place-indicator-mode


From: F. Jason Park
Subject: master 4eda77ed335 1/7: Fix regression in erc-keep-place-indicator-mode
Date: Sun, 31 Dec 2023 10:07:48 -0500 (EST)

branch: master
commit 4eda77ed335f982460f818ae1b8619cbd32ba77d
Author: F. Jason Park <jp@neverwas.me>
Commit: F. Jason Park <jp@neverwas.me>

    Fix regression in erc-keep-place-indicator-mode
    
    * lisp/erc/erc-goodies.el (erc-keep-place): Revert portion of
    65735efdca0 "Improve multi-window erc-keep-place-indicator-mode" that
    skipped modifying `window-prev-buffers' when the indicator's minor
    mode was enabled.
    * test/lisp/erc/erc-scenarios-keep-place-indicator.el: Modify test to
    assert that point's place is preserved after switching away from a
    buffer with the indicator enabled.
    * test/lisp/erc/resources/keep-place/follow.eld: Update.
    This feature was originally introduced by bug#59943.
---
 lisp/erc/erc-goodies.el                             | 3 +--
 test/lisp/erc/erc-scenarios-keep-place-indicator.el | 9 ++++++++-
 test/lisp/erc/resources/keep-place/follow.eld       | 5 +++++
 3 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/lisp/erc/erc-goodies.el b/lisp/erc/erc-goodies.el
index 9d385b628dc..a0502a3b75c 100644
--- a/lisp/erc/erc-goodies.el
+++ b/lisp/erc/erc-goodies.el
@@ -471,8 +471,7 @@ For use with `keep-place-indicator' module."
     ;; if `switch-to-buffer-preserve-window-point' is set,
     ;; we cannot rely on point being saved, and must commit
     ;; it to window-prev-buffers.
-    (when (and switch-to-buffer-preserve-window-point
-               (not erc-keep-place-indicator-mode))
+    (when switch-to-buffer-preserve-window-point
       (dolist (frame (frame-list))
         (walk-window-tree
          (lambda (window)
diff --git a/test/lisp/erc/erc-scenarios-keep-place-indicator.el 
b/test/lisp/erc/erc-scenarios-keep-place-indicator.el
index 7566288066e..8ebef5404c1 100644
--- a/test/lisp/erc/erc-scenarios-keep-place-indicator.el
+++ b/test/lisp/erc/erc-scenarios-keep-place-indicator.el
@@ -107,6 +107,7 @@
         (switch-to-buffer "#spam") ; lower follows, speaks to sync
         (erc-scenarios-common-say "two")
         (funcall expect 10 "<bob> Cause they take")
+        (goto-char (point-max))
 
         ;; Upper switches back first, finds indicator gone.
         (other-window 1)
@@ -126,7 +127,13 @@
           (should (looking-back (rx "you can cog")))
           (should (= (pos-bol) (window-start)))
           (should (= (overlay-start erc--keep-place-indicator-overlay)
-                     (pos-bol))))))
+                     (pos-bol)))))
+
+      (ert-info ("description")
+        (erc-send-input-line "#spam" "three")
+        (save-excursion (erc-d-t-search-for 10 "Ready"))
+        (switch-to-buffer "#spam")
+        (should (< (point) erc-input-marker))))
 
     (erc-keep-place-mode -1)
     (erc-scrolltobottom-mode -1)))
diff --git a/test/lisp/erc/resources/keep-place/follow.eld 
b/test/lisp/erc/resources/keep-place/follow.eld
index e857c17175d..db9352d93be 100644
--- a/test/lisp/erc/resources/keep-place/follow.eld
+++ b/test/lisp/erc/resources/keep-place/follow.eld
@@ -71,3 +71,8 @@
 
  (0.03 ":bob!~u@2q6ysndq32az6.irc PRIVMSG #chan :alice: No egma, no riddle, no 
l'envoy; no salve in the mail, sir. O! sir, plantain, a plain plantain: no 
l'envoy, no l'envoy: no salve, sir, but a plantain.")
  (0.03 ":alice!~u@2q6ysndq32az6.irc PRIVMSG #chan :Signior Iachimo will not 
from it. Pray, let us follow 'em."))
+
+((privmsg 10 "PRIVMSG #spam :three")
+ ;; Third check point.
+ (0.01 ":bob!~u@2q6ysndq32az6.irc PRIVMSG #spam :Moved.")
+ (0.01 ":bob!~u@2q6ysndq32az6.irc PRIVMSG #chan :Ready."))



reply via email to

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