Slashdot Mirror


Matchbox -- a Small Footprint Window Manager

An anonymous reader writes "In this technical article at LinuxDevices.com, Matchbox project leader Matthew Allum introduces his creation Matchbox: a small footprint window manager for PDAs and other resource-constrained embedded devices. Allum recalls why he decided to embark on the project, outlines its key objectives, describes its architecture and unique characteristics, and ponders its future. Cool piece of software; good read."

5 of 114 comments (clear)

  1. Re:Low footprint and X by lpontiac · · Score: 5, Informative
    Don't get me wrong , I'm all for X on a desktop. But where in these devices is there a need for remote displays ?

    Development work. With platforms like the Palm or Windows CE, you generally need to choose between working on an emulator (which is slower than the device) or the device (which gets irritating when you've been testing a UI for hours and would really, really like to be able to enter text quickly).

    Being able to run the app on the handheld, but manipulate it on the desktop, would be very handy. I think recent Windows CE devices have this ability. (Most devices don't have enough bandwidth between the handheld and the desktop for it to be viable).

    Remember that when X was first invented, your average Unix workstation was less powerful than today's PDAs (permanent storage and display size aside). I don't think it's too much overhead.

  2. Re:small and efficient by lpontiac · · Score: 3, Informative

    I use LWM. It's ultra small and provides a bare minimum of features. The only thing I miss (but not enough to bother hacking it in myself :) is the ability to just get a WM-drawn border when dragging a window around, rather than having the entire window drawn again and again and again..

    andrew@endor:~> ls -l `which lwm`
    -rwxr-xr-x 1 root wheel 23952 Jan 23 2002 /usr/X11R6/bin/lwm

  3. Mac OS X by bdesham · · Score: 5, Informative

    If anyone's interested, I just ported this to Mac OS X, so you can use this WM with XDarwin. You need Xfree86 installed (you can get it from Fink).

    Untar and ungzip the package.
    cd to the source directory.
    With your favorite editor, edit utils/Makefile.am by deleting the reference to minivol on the bin_PROGRAMS line, and removing the minivol_SOURCES line.
    Run automake, ./configure, make and make install.
    Make the appropriate modifications to ~/.xinitrc.

    --
    Alcohol and Calculus don't mix. Don't drink and derive.
  4. Re:Low footprint and X by g4dget · · Score: 5, Informative
    X11 is low footprint. X11 is smaller, for example, than a comparable Qt/Embedded environment. X11 is also very efficient: as others have pointed out, too: it was designed for machines less powerful than your PDA. The X11 protocol was hand-designed, unlike the RPC and distributed object protocols in vogue now, which have better tool support but bigger overhead as well. And X11 has been widely used in embedded systems over the years.

    I think the reason why people think that X11 is big and resource intensive is because it scales up: if you allow it to (and most desktop installations do), it will take advantage of lots of memory and have all sorts of optional packages installed. Most likely your desktop X11 server includes various compression, image, 3D, and video functionality.

    And X11 brings a lot of really useful features to the table. The fact that both client and server are user processes and are separate means that X11-based systems are very robust. The fact that window management and input methods are separate means that developers can really explore different options and pick the best for their device. For example, ]any handwriting input method developed for one X11-based handheld will work on almost any other, even if the user interfaces and toolkits are otherwise completely different. X11 is well-modularized.

    The remote display capabilities are enormously useful for debugging. For example, you can prototype and debug your application on your desktop and just display on the handheld, in order to see how the UI works on a small screen. Or, you can have applications and development tools on the handheld pop up windows on the desktop.

  5. Re:Hm by Dicky · · Score: 3, Informative
    As you typically don't have many applications open on a handheld, isn't there a way to use the scroll button in combination with otehr buttons to either a) scroll the window b) scroll through open applications or c) scroll through the list of availbale applications?

    On the iPAQ, at least, the matchbox packages which mallum has been putting out are setup to bind the record button (on the side of the device) as a command button. Holding down that button and hitting left and right on the joypad scrolls through the open top-level windows. I frequently run my iPAQ with the title bar minimised away, and flip through windows this way. I tend to leave the dock open, because having a clock/wireless strength meter/memory & CPU meter visible is nice. There are more shortcut keys listed in the matchbox manual on mallum's handhelds.org page...

    --
    Paranoia isn't an infectious condition, it's a way of life