On Fri, Nov 21, 2008 at 05:25:29AM +0200, Igor Stasenko wrote: > 2008/11/21 David T. Lewis <[EMAIL PROTECTED]>: > > > > Loosely speaking, the top-level window corresponds to an "application" > > which might have a hierarchy of windows inside it. > > Inside only, or just have a child-parent relation? I mean, does a > child-parent implies, that child window should live inside rect > designated by parent and parent always acts as background window, or > its free to be placed anywhere?
I'm not sure. Honestly I'm not an expert on this at all, I just hacked on Ian's code and looked at a couple of books. I would guess that the child windows can be placed anywhere, but that in normal operation the window manager controls the top-level window and the child windows follow along within the top-level coordinate system. But I'm not certain about this. > I'm also concerned a bit with a window manager communication. How to > tell window manager that window should have different decoration, like > having static border, or can't be closed (don't show close button) , > or having no decoration at all - only area for painting etc. > I want (at least try) to support a set of generic assets throughout > all platforms. Google ICCCM. There are some conventions for communicating with window managers, but lots of different window managers are in use and they are all different. Note, a window manager is just another X client application, separate from the X server. You could program Squeak to be an X window manager if you wanted to (might be a good project for somebody to try). > > Also, you need to decide if each top-level host window should have > > its own separate communication session to the X server such that X > > events are naturally delivered to that window, or if there should be > > one connection with code to dispatch the events to the right destination. > > Either way, the X events need to get back to the VM in such a way > > that the correct X windows are refreshed, and the correct semaphore > > or process gets alerted in the Squeak image. > > I don't see the need in having multiple comm channels. Squeak VM > having single event queue, that's makes no sense to use multiple > queues inside X11 backend. > Of couse if X11 allows to manage everything through single channel. Actually this might be mostly a matter of how much "rearranging" to do in the existing Unix X11 support code. Dispatching from a single channel is probably the right thing to do, but it might be easier to just open separate connections. I did not implement either one, so pick your poison ;) Dave _______________________________________________ Pharo-project mailing list [email protected] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
