[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] emacs-26 37a3b4e: Fix erc keep-place module with new defau
From: |
Martin Rudalics |
Subject: |
[Emacs-diffs] emacs-26 37a3b4e: Fix erc keep-place module with new defaults (Bug#29111) |
Date: |
Tue, 21 Nov 2017 02:32:27 -0500 (EST) |
branch: emacs-26
commit 37a3b4ea40095ea1d47ed61d6c0c6f9d32f79e60
Author: Jay Kamat <address@hidden>
Commit: Martin Rudalics <address@hidden>
Fix erc keep-place module with new defaults (Bug#29111)
* lisp/erc/erc-goodies.el (erc-keep-place): Allow erc
keep-place to continue working with
switch-to-buffer-preserve-window-point set to t, the new default.
Copyright-paperwork-exempt: yes
---
lisp/erc/erc-goodies.el | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/lisp/erc/erc-goodies.el b/lisp/erc/erc-goodies.el
index a655d48..8906da1 100644
--- a/lisp/erc/erc-goodies.el
+++ b/lisp/erc/erc-goodies.el
@@ -147,7 +147,19 @@ Put this function on `erc-insert-post-hook' and/or
`erc-send-post-hook'."
(>= (point) erc-insert-marker))
(deactivate-mark)
(goto-char (erc-beg-of-input-line))
- (forward-line -1)))
+ (forward-line -1)
+ ;; 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 switch-to-buffer-preserve-window-point
+ (dolist (frame (frame-list))
+ (walk-window-tree
+ (lambda (window)
+ (let ((prev (assq (current-buffer)
+ (window-prev-buffers window))))
+ (when prev
+ (setf (nth 2 prev) (point-marker)))))
+ frame nil 'nominibuf)))))
;;; Distinguish non-commands
(defvar erc-noncommands-list '(erc-cmd-ME
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] emacs-26 37a3b4e: Fix erc keep-place module with new defaults (Bug#29111),
Martin Rudalics <=