emacs-devel
[Top][All Lists]
Advanced

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

Re: MPS: face-cache


From: Eli Zaretskii
Subject: Re: MPS: face-cache
Date: Tue, 30 Apr 2024 16:17:04 +0300

> From: Gerd Möllmann <gerd.moellmann@gmail.com>
> Cc: eller.helmut@gmail.com,  emacs-devel@gnu.org
> Date: Tue, 30 Apr 2024 14:57:01 +0200
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > As another "interesting" anomaly, the implementation of TTY menus
> > writes directly into the frame glyph matrix, see
> > xdisp.c:display_tty_menu_item.  I wonder whether there's something we
> > need to do about that as well, since the menu text comes from Lisp
> > strings.
> 
> I see, the pane_string in tty_menu_show, for example.
> 
> The char * in the tty_menu would keep the string_data alive and
> immovable if they were on the stack somewhere. Alas, I don't understand
> how the menus are handled. Is there some form of "event loop" running
> when the menu is up and interacted with? Or is it "normal" keyboard.c
> input handling?

Some of both, actually.  We re-enter the normal input processing, see
tty_menu_activate, but we inhibit redisplay (because the display
engine has no idea someone wrote int its matrices behind its back) and
manage screen updates ourselves.  We also inhibit GC (in
tty_menu_show).



reply via email to

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