[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: comint-preoutput-filter-functions and flickering redisplay in TTY
From: |
Nicolas Richard |
Subject: |
Re: comint-preoutput-filter-functions and flickering redisplay in TTY |
Date: |
Tue, 03 Jun 2014 14:27:44 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.91 (gnu/linux) |
Mario Lang <address@hidden> writes:
> To reproduce: Install chess.el, call M-x chess-ics RET, login to
> freechess.org (as guest is OK), and wait a bit. Your screen (at least in -nw
> mode)
> should start to flicker noticeably every once in a while.
>
> Any ideas why?
I tried it in my GUI emacs (just to try chess.el, in fact) and noticed
very frequent recentering of my window, even when not in the *chess-ics*
buffer.
By tracing "recenter" I found that tabulated-list-print calls (recenter)
without checking what the selected window is.
here's the patch I applied, perhaps you can try it out and see if it
fixes the problem for you.
diff --git a/lisp/emacs-lisp/tabulated-list.el
b/lisp/emacs-lisp/tabulated-list.el
index d0d71dd..dd1166f 100644
--- a/lisp/emacs-lisp/tabulated-list.el
+++ b/lisp/emacs-lisp/tabulated-list.el
@@ -323,7 +323,9 @@ to the entry with the same ID element as the current line."
(if saved-pt
(progn (goto-char saved-pt)
(move-to-column saved-col)
- (recenter))
+ (when (eq (window-buffer (selected-window))
+ (current-buffer))
+ (recenter)))
(goto-char (point-min)))))
(defun tabulated-list-print-entry (id cols)
--
Nico.