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

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

bug#11822: 24.1; emacsclient terminal mode captures escape characters as


From: Eli Zaretskii
Subject: bug#11822: 24.1; emacsclient terminal mode captures escape characters as text
Date: Tue, 15 Sep 2015 17:29:33 +0300

> From: Stefan Monnier <monnier@iro.umontreal.ca>
> Cc: Eli Zaretskii <eliz@gnu.org>,  11822@debbugs.gnu.org
> Date: Fri, 11 Sep 2015 20:51:46 -0400
> 
> > (Also: Iconifying the remote frame doesn't seem to help. In
> > prepare_menu_bars, when all_windows is set but some_windows is not, the
> > call to x_consider_frame_title, which can trigger face realization, *is*
> > called for iconified frames.)
> 
> Maybe instead of doing
> 
>   prepare_menu_bars:
>     (forall frames (compute-title-and-stuff))
>   later:
>     (forall frames (recompute-glyph-matrices-and-then-display))
> 
> we should do
> 
>   (forall frames
>     (compute-title-and-stuff)
>     (recompute-glyph-matrices-and-then-display))

But what we do now is not exactly what's outlined above.  Instead,
it's something like

  prepare_menu_bars:
    if (windows_or_buffers_changed)
      (forall frames (compute-title-and-stuff))
  later:
    if (windows_or_buffers_changed)
      (forall frames (recompute-glyph-matrices-and-then-display))
    else
      (for selected-frame (recompute-glyph-matrices-and-then-display))

So the problematic calls to face realization are once again triggered
by the face_change flag, which in turns assigns a non-zero value to
windows_or_buffers_changed, which then causes the loop in
prepare_menu_bars.  IOW, making face_change a frame-local flag should
solve this issue as well.





reply via email to

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