GNU bug report logs - #42406
Mouse-wheel scrolling can be flickering

Previous Next

Package: emacs;

Reported by: Konrad Podczeck <konrad.podczeck <at> univie.ac.at>

Date: Fri, 17 Jul 2020 15:37:02 UTC

Severity: normal

Full log


Message #258 received at 42406 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: martin rudalics <rudalics <at> gmx.at>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 42406 <at> debbugs.gnu.org,
 Alan Third <alan <at> idiocy.org>, konrad.podczeck <at> univie.ac.at
Subject: Re: bug#42406: Mouse-wheel scrolling can be flickering
Date: Thu, 17 Dec 2020 18:24:26 -0500
> Why penalize people with >= 2 windows per selected frame when scrolling
> one of them by updating all the others' mode, header, tab lines?

Because nobody implemented the code to optimize that extra work away.
BTW, the patch below is what I use in my own branch now.


        Stefan


diff --git a/src/window.c b/src/window.c
index 20b0ef1525..c4f89b934e 100644
--- a/src/window.c
+++ b/src/window.c
@@ -224,7 +224,12 @@ wset_update_mode_line (struct window *w)
   Lisp_Object fselected_window = XFRAME (WINDOW_FRAME (w))->selected_window;
 
   if (WINDOWP (fselected_window) && XWINDOW (fselected_window) == w)
-    update_mode_lines = 42;
+    {
+      /* FIXME: This should be in xdisp.c, next to fset_redisplay
+         and friends!  */
+      update_mode_lines = 2;    /* FIXME: REDISPLAY_SOME  */
+      XFRAME (WINDOW_FRAME (w))->redisplay = true;
+    }
   else
     w->update_mode_line = true;
 }





This bug report was last modified 4 years and 25 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.