GNU bug report logs -
#75056
31.0.50; tty-child-frames with server / multiple clients possible hangs
Previous Next
Full log
View this message in rfc822 format
>> (2) do_switch_frame now has this
>>
>> if (FRAMEP (top_frame))
>> {
>> struct frame *top = XFRAME (top_frame);
>> struct frame *old_root = root_frame (top);
>> if (old_root != new_root)
>> SET_FRAME_VISIBLE (old_root, false);
>> }
>>
>> This is wrong because it will set the visibility of the old top frame to
>> nil.
>
> I don't understand that one. It doesn't, or shouldn't change, the
> visibility of the top_frame, but the visibility of its root. Can you
> please explain?
The root_frame of the old top frame is the old top frame itself. Or am
I missing something?
> My idea is that root windows on ttys become invisible/invisible when
> they are displayed on the terminal or not. Child windows on these roots
> keep their visibility. They are automatically not displayed when the
> root is not displayed, that's inherently the case when
> combine_updates_for frame is not called for invisible root frames.
I think we should use the metaphor of a top frame on a tty as that of a
maximized frame on a GUI. Such a frame hides all other normal frames on
that workspace but does not render them invisible or iconified (I ignore
z-order and groups here). If you want to optimize redisplay, then the
old concept of obscured frames will be better suited IMO.
martin
This bug report was last modified 110 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.