bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#42406: Mouse-wheel scrolling can be flickering


From: Eli Zaretskii
Subject: bug#42406: Mouse-wheel scrolling can be flickering
Date: Thu, 17 Dec 2020 20:01:36 +0200

> Cc: konrad.podczeck@univie.ac.at, alan@idiocy.org, 42406@debbugs.gnu.org
> From: martin rudalics <rudalics@gmx.at>
> Date: Thu, 17 Dec 2020 18:34:42 +0100
> 
>  > I don't think windows are the problem: Emacs knows very well which
>  > window(s) actually need(s) to be redisplayed and redrawn.
> 
> In the case at hand Emacs relies on redisplaying all frames when
> scrolling a window that is not on the selected frame in order to
> correctly reflect the change in the scrolled window's mode line.

That's not my understanding.  My understanding is that the user
scrolls the _selected_ window, because otherwise wset_update_mode_line
doesn't set update_mode_lines:

  static void
  wset_update_mode_line (struct window *w)
  {
    /* If this window is the selected window on its frame, set the
       global variable update_mode_lines, so that gui_consider_frame_title
       will consider this frame's title for redisplay.  */
    Lisp_Object fselected_window = XFRAME (WINDOW_FRAME (w))->selected_window;

    if (WINDOWP (fselected_window) && XWINDOW (fselected_window) == w)
      update_mode_lines = 42;
    else
      w->update_mode_line = true;
  }


> IIUC windows_or_buffers_changed affects frames as well.  For example, I
> have no idea why making a frame (in)visible should redisplay all other
> frames while moving a frame on the screen apparently does not.

That's commented out now, although the comment seems to hint on the
reason.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]