aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJay Kamat2017-11-21 08:31:40 +0100
committerMartin Rudalics2017-11-21 08:31:40 +0100
commit37a3b4ea40095ea1d47ed61d6c0c6f9d32f79e60 (patch)
treea894a6444c212cebeb077ecf7d15cd7190a93c80
parent6c312605bf6d89ae90df8e45121776226bf3550b (diff)
downloademacs-37a3b4ea40095ea1d47ed61d6c0c6f9d32f79e60.tar.gz
emacs-37a3b4ea40095ea1d47ed61d6c0c6f9d32f79e60.zip
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
-rw-r--r--lisp/erc/erc-goodies.el14
1 files changed, 13 insertions, 1 deletions
diff --git a/lisp/erc/erc-goodies.el b/lisp/erc/erc-goodies.el
index a655d48a6ac..8906da1e47d 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'."
147 (>= (point) erc-insert-marker)) 147 (>= (point) erc-insert-marker))
148 (deactivate-mark) 148 (deactivate-mark)
149 (goto-char (erc-beg-of-input-line)) 149 (goto-char (erc-beg-of-input-line))
150 (forward-line -1))) 150 (forward-line -1)
151 ;; if `switch-to-buffer-preserve-window-point' is set,
152 ;; we cannot rely on point being saved, and must commit
153 ;; it to window-prev-buffers.
154 (when switch-to-buffer-preserve-window-point
155 (dolist (frame (frame-list))
156 (walk-window-tree
157 (lambda (window)
158 (let ((prev (assq (current-buffer)
159 (window-prev-buffers window))))
160 (when prev
161 (setf (nth 2 prev) (point-marker)))))
162 frame nil 'nominibuf)))))
151 163
152;;; Distinguish non-commands 164;;; Distinguish non-commands
153(defvar erc-noncommands-list '(erc-cmd-ME 165(defvar erc-noncommands-list '(erc-cmd-ME