Squeak as a window manager (Was: Somebody spamming Squeakers)
Lex Spoon
lex at cc.gatech.edu
Thu Apr 20 15:10:46 UTC 2000
"Pennell, David" <dpennell at quallaby.com> wrote:
> This message is in MIME format. Since your mail reader does not understand
> this format, some or all of this message may not be legible.
>
> ------_=_NextPart_001_01BFAA30.B21210C6
> Content-Type: text/plain;
> charset="iso-8859-1"
>
> You would have to make Squeak look like a new X device.
> X used to come with a dumb frame buffer driver that
> would probably be straightforward to map into a Squeak
> FormCanvas. Alternatively, you could map higher level
> X operations (vectors, etc.) into Squeak drawing primitives.
>
> I presume that the VNC X-server uses the frame-buffer
> mode to grab bits, compress them and move them over the net.
>
I read the question differently. In X, a window manager is a program
that manages all the other windows; it doesn't draw the windows itself.
Then again, implementing such a beastie is notoriously difficult and
bug-prone. What if this window disappears while you're clicking here
and holding the shift key, and then you release the shift key and press
a different mouse button.... aa!
So maybe he was asking the question you meant: how hard would it be to
write an X *server* in Squeak. And one answer is: I've thought a lot
about it, and even started on a project once to do it. You can
certainly grab a copy of the X Protocol from ftp.x11.org. There is a
directory called DOCS in there somewhere, and a directory called
protocol.
The problem I ran into, was simply that it's a a big protocol. It's
doable, but expect to spend at least a month on it (vague, vague
estimate). A Squeak X server would mean that Unix users can have an
all-Squeak desktop, and just run Netscape and emacs into my Squeak
window. Ah, very cool.
Well, if someone wants to go after this, I for one would use the thing.
:) And congratulations in advance to anyone has the energy and stamina
to finish such a beastie!
-Lex
More information about the Squeak-dev
mailing list
|