Squeak as a window manager

Duane Maxwell dmaxwell at entrypoint.com
Wed Apr 19 19:14:47 UTC 2000


Cliff Crawford writes:
>Actually, now that I have de-lurked, I have a Serious Question to ask.
>Has anyone ever thought of using Squeak as a window manager for X?  It
>seems like a good idea, since it would be much more customizable than
>the other window managers available.  The only thing I can't figure out
>is how to get an external program, like an xterm, display itself inside
>of a Squeak window.  Of course I'm very new to Squeak so it's possible
>there's an obvious way to do this that I'm missing..:)

Yes, it can be done, with some hacking to the X code in the UNIX VM and
some clever Squeak code.

One approach is to reparent the external X window to be owned by Squeak's
main window.  Then you create a morph class which will have access (through
a plugin) to X so that it can track and provide clipping information about
other morphs, and send appropriate events, to the child window.
Translucency is a bit of a problem, and you obviously can't expect some of
the halo controls to work (rotate, duplicate, etc).  It's not trivial, but
it works pretty well once you get it all under control.

Another approach, which involves reimplementing X in Squeak, is a more
substantial effort.

-- Duane






More information about the Squeak-dev mailing list