discuss-gnustep
[Top][All Lists]
Advanced

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

Re: setLevel: implementation idea for X backend


From: Wim Oudshoorn
Subject: Re: setLevel: implementation idea for X backend
Date: Fri, 27 Feb 2004 19:14:49 +0100
User-agent: Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3.50 (darwin)

hns@computer.org (Dr. Nikolaus Schaller) writes:

> Dear all, when starting recently to think about setLevel: for our
> mySTEP derivate, I have learned that there is no setLevel: in
> GNUstep unless the window manager tries its best (which isn't for
> mySTEP).
...
> * Calling setLevel: reparents the window to a different level. If
> there is no Xlib function to reparent (I haven't found one yet), 

Well, you mean the call XReparentWindow ().

> My idea now is to use a two-level window hierarchy to implement the
> required behavior in the X backend:
>
> * The Root window has a set (array) of full-screen
> invisible/transparent child windows which represent the stacking
> levels.
>
> * All NSWindows are children of their current level, so
> XRaiseWindow(), XLowerWindow() etc. constrain them within their
> level.

But I have a few remarks.

* Window managers normally decorate the toplevel windows (by
  reparenting them).  So I would guess that this leads to
  non-decorated windows.

* I think that if a window is invisible its children are also
  invisible

* As far as I know there exists no such thing as a transparant window
  And I do not think that the Shapes extension is going to help you.

Disclaimer.

I do not have an XWindows system at hand, and it is a few
years that I did anything in X.  Also I did not really check
all the facts mentioned above, so I could be totally wrong.

Wim Oudshoorn.





reply via email to

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