Rootless mode revisited...
Jehan
nahor@bravobrava.com
Wed Oct 9 09:41:00 GMT 2002
Thomas Chadwick wrote:
> I just had a thought on how to implement rootless mode and I'm hoping
> someone more familiar with Windows programming and/or the XWin server
> might let me know if it's a dead-end before I spend too much time
> researching it further.
>
> The idea I had is this: Can we exploit the features of the Windows API
> that allow for non-rectangular windows to achieve a "pseudo-rootless"
> mode? I have looked into it enough to find that non-rectangular Windows
> windows are really collections of multiple rectangles, ellipses, etc.
> Seems to me XWin could exploit this by simply {adding|removing} a
> rectangle {to|from} the collection that makes up its shape whenever an
> Xclient is {created|destroyed}.
>
> I call it "pseudo-rootless" mode because you would still need to run an
> XWindows window manager to decorate the Xclients, as opposed to having
> the Windows window manager do the decoration.
>
> What I don't know is how well Windows will handle, for instance, moving
> an Xclient window around once it's been created, since that would
> involve dynamically manipulating the shape of a Windows window.
>
> What I also don't know is whether or not the way XWin uses DirectDraw
> and frame-buffering somehow precludes the use of the Windows
> window-shaping APIs.
I thought of something similar but "less pseudo". Currently, XWin draws
in a buffer and copy this buffer to the XWin window. If one knows how to
get the X windows position, one could create one Windows window per X
Window a copy just the part matching the X window. This has the
advantage over your method to give one button in the taskbar per X window.
If the Windows windows are fully opaque (which is the case for every
body except a few geeks), the fact that, when windows overlap, the
bottom window contains part of the top windows should not be a problem
(it should be hidden by the top windows)
Jehan
More information about the Cygwin-xfree
mailing list