emacs-devel
[Top][All Lists]
Advanced

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

Re: "Final" version of tty child frames


From: Gerd Möllmann
Subject: Re: "Final" version of tty child frames
Date: Fri, 17 Jan 2025 10:35:01 +0100
User-agent: Gnus/5.13 (Gnus v5.13)

martin rudalics <rudalics@gmx.at> writes:

>> If one wants, one could sharpen the second point a bit. Glyphs from
>> child frames can only ever appear if
>>
>> - in a current matrix
>>
>>    matrix == w->current_matrix
>>
>> - if w->frame is a root frame (NILP (w->frame->parent_frame)
>>    IOW, the current matrix of child frames will never show this
>>    phenomenon.
>>
>>    struct frame *f = XFRAME (w->frame);
>>    is_tty_root_frame (f);
>>
>> - w is the selected window
>>
>> - that root frame has visible child frames. Something like
>>
>>    Lisp_Object z_order = frames_in_reverse_z_order (f, true);
>>    bool has_visible_child = CONSP (XCDR (z_order);
>>
>> Which might be easier to understand than the below.
>
> I am a bit lost with this. 

Understandable.

> Just note one aspect which you can test with my example file: With C-l
> and M-l you get two child frames overlapping each other. Now in the
> child frame beneath move the cursor in the area right of the child
> frame above to the left so that it is hidden and back again until it
> is visible. Here I have two child frames and no root frame involved.
> Does your "sharpened second point" handle that?

Yes, if I understand you correctly. The combined update works by
producing a _root_ current matrix that has child frames copied to it, so
to speak. Child frame matrices are entirely left alone.

BTW, as I said else-mail, I've made me a branch for my terminal matrices
idea. So, it it's not an urgent problem, maybe we could wait a bit, and
see if my idea flies.



reply via email to

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