* 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.
(cherry picked from commit
4eda77ed335f982460f818ae1b8619cbd32ba77d)
;; 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)
(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)
(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)))
(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."))