|
From: Daniel J S. <dan...@ie...> - 2003-12-11 18:30:39
|
Ethan Merritt wrote: >I have done a little bit of research into the X11 protocols, >and here is what I have found. > >The X11 standard strongly discourages client programs from >trying to control window placement or position in the stack >(i.e. raise/lower) except by making a request of the window >manager. Basically this means that if you can't do what you >want in the window manager, then you can't do it from the >application program either. The application can set a >"please raise me" attribute for a window, but the window >manager decides whether or not to pay any attention to this. > >I think the bottom line is that gnuplot_x11 is free to mark >all its windows as belonging to the same "window_group" >if it wants to, but whether this has the effect that Petr wants >(raise them all at once) will depend entirely on the window >manager. > >Let me quote from a couple of relevant sections from >Scheifler & Gettys "X Window System" reference manual. > ><begin quote> >4.1.5 Configuring the Window >[...] > Convention >Clients that use a ConfigureWindow request to request a change >in their position in the stack should do so using None in the sibling >field. [...] Doing this is deprecated, and window managers are in any >case free to position windows in the stack as they see fit. ><end quote> > > ><begin quote> >4.1.11 Window Groups >A set of top-level windows that should be treated from the >user's point of view as related (even though they may belong >to a number of clients) should be linked together using the >window_group field of the WM_HINTS structure. [...] >It is up to the window manager to determine the policy for >treating the windows in a group. At present, there is no way >for a client to request a group, as opposed to an individual, >operation. ><end quote> > Are "stack" and "depth" the same thing? I pointed out before that X11 seems to have a routine dedicated to raising a window, i.e., the depth of the window in terms of visibility. All other window properties seem to be handled by another function, and those properties seem to be all the other items that are listed when you look at the upper-left corner of the X11 window. The menu has "maximize", "unmaximize", "in group"... and one labelled "depth". Honestly, I'm not an expert on what every one of those does. But, I'm wondering if "stack" in the documentation refers to internally how X11 arranges things in its linked list of windows, i.e.,the order in which signals are sent around the system. Dan |