Daniel Mendler's corfu at-point completion package works on tty with child frames, as an example to take a look at. On Wed, Sep 18, 2024 at 10:27 AM Robert Pluim wrote: > >>>>> On Wed, 18 Sep 2024 16:15:56 +0200, martin rudalics > said: > > >> AFAICT from the Elisp Info docs, one is currently free to change the > >> parent-frame as one sees fit. That is, one can make a child a root > >> frame, a root frame a child, or change the parent of a child to > another > >> root. > >> > >> I'm currently inclined to disallow parent-frame changes on ttys > >> entirely, unless it is used for something. Couldn't find something > >> today, but maybe something is a package outside Emacs' repo, or I'm > just > >> ont looking for the right thing. > > martin> I'm not aware of people using multiple frames on TTYs and I > have no idea > martin> whether child frames out there are even intended to be > reparented. > > I do it all the time. But obviously they each occupy the full > terminal. > > martin> Reparenting is useful because you can set up one child frame > for some > martin> special purpose, make it invisible when you don't need it, and > move it > martin> to another frame and make it visible there whenever you want > to. On > martin> GUIs, this approach has the advantage that you can avoid the > (at least > martin> here) costly process of setting up frame faces every time > anew. Emacs > martin> tooltips do that by default and I recall that showing a > tooltip every > martin> time incurred two entire GC cycles here. > > Would setting up frame faces be that expensive on tty? Iʼd really love > to have tty child frames, even if they were not blazingly fast. > > In any case, I took a quick look at "posframe", it doesnʼt do any > reparenting that I can see. > > Robert > -- > >