Reverse embedding - windows inside XUL

Erik <[email protected]>
Newsgroups gmane.comp.mozilla.devel.embedding
Message-ID <[email protected]>
I am researching for a project, my aim being to write a window/desktop
manager that uses Gecko as the rendering engine, with content being
primarily done with XUL.

I know that window managers usually use xlib to access the screen and
draw the desktop. But I'm uncertain about how to go about this.

From what I've seen so far, Gecko seems to be using Cairo to do its
rendering, and I presume that Cairo is talking directly to X to draw the
rendered UI on the screen. But can this work without a window manager?
Do I need to write or reuse a tiny barebones window manager just so
Gecko can get a fullscreen window and draw the desktop on it?

But by far, another huge issue seems to be other programs opening
windows, which I gather they do through widget libraries that talk to X.
It would be nice if any windows opened could be either in the main
desktop XUL document (ideal for layering and effects) or independent XUL
windows in their own right, so that any window decoration and control
etc. can be done with XUL and javascript. The problem is, how do you get
an up-to-date copy of the program's client area and render it inside a
XUL box element? A netscape plugin perhaps? Or some other more elegant
solution?

Any helpful comments or links would be much appreciated.


Thanks,
Erik
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.