On Thu, May 04, 2006 at 08:54:25PM +0200, Viktor Griph wrote: > When are the hide windows useful in frame.c? The call to > frame_reparent_hide_windows in frame_create_move_resize_args casue X to > generate extra VisibilityNotify events to clients during capture and > redecoration (bug #3977).
The hide windows are emtpy windows (with a "None" background pixmap). I introduced them to reduce flickering of the window decorations when a window is resized, and - more important - shaded or unshaded. The problem is that when you resize a window, you can tell X which border its subwindows should stick to. But you can not tell it where the subwindows of subwindows should go, and it's not possible to resize subwindows in the same operation. Because of this, I use the hide windows to cover some parts of the decorations, resize the window, redraw the the changed parts of the decorations windows (using a background pixmap, not using the foreground), then unmap the hide windows to uncover the changed decorations. Usually, the hide windows stay "invisible" because htey have no contents and just show what was below them until they are covered by something else. > Would it be possible to narrow down the need for > that function call to some specific case? I don't see any way but at the expense of flickering decorations and subwindows, especially with opaque resizing. Actually, if applications like xdvi have a below par redraw algorithm (i.e. they redraw whenexer they receive an Expose event), that's the applications' problem and not the problem of the window manager. Ciao Dominik ^_^ ^_^ -- Dominik Vogt, [EMAIL PROTECTED]
signature.asc
Description: Digital signature