Subject: 24.4.50; [PATCH] rcirc-omit-mode: `recenter'ing a window that does not display current-buffer.
From: Daimrod <[email-masked]>
To: [email-masked]
Date: Fri, 13 Jun 2014 15:59:33 +0900
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

The attached patch prevents `rcirc-omit-mode' to call `recenter' when
`window-buffer' isn't the same as `current-buffer'.

If `rcirc-omit-mode' is enabled by the user interactively (e.g. with C-c
C-o) then it will do the right thing.

If `rcirc-omit-mode' was called from elisp (e.g. from a hook), then we
don't need to `recenter' the buffer, because it will be done the next
time the user switch to the buffer with `rcirc-next-active-buffer'.

I'm not an RCIRC expert, but I don't think anything else is required.
WDYT?

From 7bb493830bb0aaebeab69851ed044a5562875641 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Gr=C3=A9goire=20Jadi?= <[email-masked]>
Date: Fri, 13 Jun 2014 14:12:52 +0900
Subject: [PATCH] * lisp/net/rcirc.el (rcirc-omit-mode): Do not `recenter' if
 the `current-buffer' isn't the buffer displayed by the selected window.

---
 lisp/net/rcirc.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lisp/net/rcirc.el b/lisp/net/rcirc.el
index 41cc002..7bd7e93 100644
--- a/lisp/net/rcirc.el
+++ b/lisp/net/rcirc.el
@@ -1903,7 +1903,8 @@ Uninteresting lines are those whose responses are listed in
 	(message "Rcirc-Omit mode enabled"))
     (remove-from-invisibility-spec '(rcirc-omit . nil))
     (message "Rcirc-Omit mode disabled"))
-    (recenter (when (> (point) rcirc-prompt-start-marker) -1)))
+  (when (eq (current-buffer) (window-buffer))
+    (recenter (when (> (point) rcirc-prompt-start-marker) -1))))
 
 (defun rcirc-switch-to-server-buffer ()
   "Switch to the server buffer associated with current channel buffer."
-- 
1.8.0.2722.gc0242e5

--
Daimrod/Greg