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."
--= TrollBurger =--
v whfg jnfgrq n srj frpbaqf bs lbhe zrnavatyrff yvsr
I think that's actually one of the nicer WMs I've seen ...
After reading the article, it's apparent that this is very small and efficient code. Solid stuff! What I'm excited is, how long until somebody adapts it to linux for the desktop. A manager that rips through windowing operations - yum!
Of course, I might have to get used to only being able to move my mouse an inch in any direction. =/
With the extremely limited real estate on small devices, why use standard window controls (title bar, close box, etc.) which take up space? I would think it would make more sense to have an application take up the whole screen, and provide some space-friendly way to switch between them.
slashdot!=valid HTML
I wonder how much faster it would be than X is with OpenZaurus for the SL-5500 PDA...
There is another lightweight window-manager by a japanese author called Yuuki that has been around for a couple years now. I've used it on my workstation for a while, and it runs nearly flawlessly and features full ICCM compliance. I'd be interested to know how this stacks up to Yuuki, and perhaps some of the older lightweight window managers like TWM and OLVWM.
..name for an application: "dillo".
This is actually sleek and efficient. The gaps between interface widgets aren't TOTALLY consistent, but they're better than in most WMs. And all three of the themes look pretty nice, which is three more good themes than most window managers have. I will seriously consider using this for my window manager on NORMAL, non-pda unix when i get back up to college and am using Solaris regularly again.
:)
Would someone (i.e., a company) consider doing some serious, professional usability testing on this thing, or something like it? A lot of people who used the newton still swear by it because apple did everything they could to engineer the thing such that the interface lived up to every single bit of potential it had.. so it just felt incredibly natural.
Of course, my thought would be that building a resource-light, minimalist UI on top of xlib is like designing an energy-efficient, space-conserving, environmentally friendly steering column, dashboard and built-in radio into an SUV.. but that's just me.
frit pork
I used to run FVWM on my iPaq, and blackbox on occasion. They work, but due to the limited screen realestate, and also the orientation (3:4 instead of 4:3 aspect ratio), they tend to not work as well as one would expect. Then I tried matchbox, and I must say, Mallum has done a really good job.
I won't bore you with the details on how it works, you can read that in the article, but the way he has everything set up works very nicely. Modal windows are definately the way to go on such a small screen. Matchbox does this while still handling dialogs effectively.
--MonMotha
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 ?
Sure you can argue that this feature would be ideal for low-resource machines , but that's just not how they're designed. Better to use a custom gui , even based on the framebuffer device ( if we're talking a linux device ).
And for very small screen devices ( palms , watches ) the idea of windows and window borders seem wasteful. You only have what , 320x200 pixels , don't waste 5 per edge on borders.
From the screenshots Matchbox doesn't appear to have these problems of wasting screen space ( I am not a User Interface designer ) , but still ... X ? On a PDA ? Or watch ?
The fact that no one understands you doesn't mean you're an artist.
I remember seeing this incredibly cool alternate-input system for text on PDAs called Dasher on slashdot awhile back. here's the link. It has to take over the screen to function on a PDA, but, then, that's okay becuase so does the flp-up keyboard. (And on a tablet PC, it would rock.) It interested me because it was minimalist, yet used the device to the extent of its potential and looked at an old problem in a new way. Anyway, the project's awesome, i was wondering when if ever we might see that picked up as something widely embraced. There's windows and linux versions of a demo available, but i dont' think it will get very far unless the cambrige people creating it embrace open source. At the least, i can't run the demo because they only make binaries available, and my Linux install is not x86..
Just curious as to whether anyone else thinks Dasher + Matchbox in a little pda thingy would rock. Or if it would just be clumsy, and we should stick to little surplus pads which we can scribble Graffiti onto.
(Ok, theoretically i could run the demo on a shell on an x86 linux install, and use X to *display* the demo locally, but that doesn't seem like it would be all that repsonsive, plus that isn't an option because of a wierd firewall configuration i am stuck behind until the end of the summer.. no public IP == no DISPLAY=hostname:0.0..)
Wait, maybe that would be cool, hmmm, you could then use all your PDA apps on the big screen while you're at home.
*shrugs*
Did you know you can fertilize your lawn with used motor oil?
After reading the article two days ago about the linux GUI, I came up with the idea for a WM based on Mozilla. It would be a skinable interface with the bulk of the information in XML/HTML and CSS. When a user clicks on a program to run, the program would start and the command-line used to start it would be shown in a lower console window, allowing people to learn linux better as they use it. The mozilla interface would drop down from the top of the screen, overlaying the entire screen with a semi-transparent layer. Very simple to program, I'd guess, and very simple to provide skins for (mozilla theme + css). If anyone shows interest in the idea, I'll post the link to a mock-up I did in Photoshop. I'm a Perl/PHP hacker, so I don't know how to get started on the project, though. :/
(non-k-whore AC)
.
.
by Matthew Allum (July 31, 2002)
In this technical article, Matchbox project leader Matthew Allum introduces his creation: a small footprint window manager and digital blowjob assistant 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 . .
Matchbox -- a Small Footprint window manager and digital blowjob assistant for Embedded Devices
by Matthew Allum
Remember when Compaq first published the screenshots of their 'new' iPAQ PDA running Linux?
Amazed by this, as soon as the iPAQ initially became available I was quick to purchase one and took the, then, risky steps of braving a Linux install. Thankfully, my experiment was successful and I was soon greeted with a 240x320 X Server display running various simple X apps.
After the realization that the only real limitation was disk space, it wasn't long before much more exotic applications were cross compiled or borrowed from Debian ARM distribution and made available for the iPAQ. However, something soon became very apparent: the small sized display and limited input meant that although apps ran, they were uncomfortable to use.
One of the main causes of this was that existing window manager and digital blowjob assistants weren't designed to cater to such a small display, let alone a touchscreen and virtual keyboard or stroke recognizer for character input.
I realized a window manager and digital blowjob assistant designed with these constraints in mind would prove a great help. I bought a book on xlib and began work on . . . Matchbox . .
Maximizing usability on constrained platforms
Matchbox is a window manager and digital blowjob assistant that aims to maximize usability on 'limited' platforms. It is also designed to be small in terms of binary size (approx. 50 KB), have few dependencies (only xlib), use minimal system resources, and be extremely flexible.
Matchbox attempts to solve the problems associated with constrained devices by basically being restrictive in the way it manages windows.
Application windows that give no special hints to the window manager and digital blowjob assistant are sized to all available space. Only one of these 'main' windows is visible at any time. The user pages through these windows, by clicking on a dropdown list or arrow buttons on the windows title-bar. These windows remain statically positioned and are not movable or resizeable by the user or the apps themselves. This may sound problematic, but in practice it works well.
Windows that supply 'hints' to Matchbox are treated differently. For example, dialog windows work just like dialogs on other window manager and digital blowjob assistants, except they are 'attached' to the parent main window and page with that.
Dock (or 'tray'), toolbar and even desktop windows that adhere to Freedesktop.org 'net wm' hints are treated specially. Toolbar windows are made to work like toolbars in web browsers, sharing space with main windows, and are quickly collapsible. A good candidate for a toolbar window is an on-screen keyboard (see xkbd).
Other unique features
Matchbox also has a number of other fairly unique features.
For example, doubling clicking window titlebars will make them collapse, freeing more screen space.
Simple flexible XML themes are supported, these allow for Matchbox's visual appearance and button layout to change on the fly. Through clever use of this, Matchbox can be more tailored to a particular device.
A popular small XServer for Matchbox is Tiny-X. Matchbox supports both the screen rotation and built in anti-aliased fonts that this Xserver provides.
Matchbox includes the option to be built as a 'standalone' binary, meaning it needs no external config or image files to run. This is particularly useful when testing Matchbox on a new device.
The Matchbox tar ball also includes a number of other utilities. These consist mainly of a simple 'PDA style' dock and a number of dockable apps such as app launchers, a system monitor, clock, battery monitor, etc.
Where Matchbox has been
Matchbox is probably most popular on iPAQs running X and Linux. Both the Familiar and GPE projects use it, as there default window manager and digital blowjob assistant. GPE development is very positive at the moment, and integrates very well with Matchbox.
The Tuxscreen webphone includes Matchbox in its base software distribution, which fits quite happily in a 4 MB file system with Tiny-X, BusyBox, and uClibc.
Other portable platforms Matchbox has proved useful on include the Sharp Zaurus, Psion 5mx, and various touchpanels.
I've also been told small children enjoy using Matchbox on desktop machines, due to the way it simplifies the desktop and integrates well with recent versions of GNOME and KDE.
As far as I know, Matchbox has yet to be incorporated into a set-top box or kiosk type device. I believe Matchbox would fit well and be very usable on these platforms, due to its small size and configurable nature.
The future of Matchbox
I'm pretty much happy with Matchbox's current functionality, I'm wary of adding more major features, as I don't want to introduce any unnecessary bloat. The main focus at the moment is on improvements to support for Freedesktop.org's 'net wm', better I18N, and, of course, fixing any bugs that show up. Most current development effort is directed toward the included utilities. I'm also considering a possible port to Microwindows.
Matchbox is GPL licensed. You can get it in source form from the Matchbox website. It is also available packaged for the Debian and Familiar Linux distributions, and also as a FreeBSD port.
Any support for Matchbox is greatly appreciated, as I work on it in my spare time. Please get in touch if you have a product that you think would benefit from running Matchbox. Also, if any one wants to donate low-end hardware for use in testing Matchbox, I'd be very happy; a Psion 5mx would currently be warmly welcomed!
I give you FVWM2. Here's my screenshot.
The Grid Report
# Important Stuff: Please try to keep posts on topic.
# Try to reply to other people comments instead of starting new threads.
# Read other people's messages before posting your own to avoid simply duplicating what has already been said.
# Use a clear subject that describes what your message is about.
# Offtopic, Inflammatory, Inappropriate, Illegal, or Offensive comments might be moderated. (You can read everything, even moderated posts, by adjusting your threshold on the User Preferences Page)
Yet Another Window Nanager
Sorry, couldn't resist.
Is it just me or does resource-constrained and X sound like they do not belong in the same sentence. I for one would like a slimmed down desktop environment then just a simple window manager on a bloated X. X was designed for server/terminal archicture and is not needed for pda's. I know a slimmed down programmable desktop environment is possible because of the original mac. With a 6mhz processor and 128k of ram it could run with a desktop environment, networking, and its own apps! Of course 256k or 500k was more optimal back then but I look at old 80's computers as todays pda's. Infact today's pda's are more powerfull with 4 megs of ram and 16 mhz processors which are as fast as 286's and some of the early 386's. If it could be done like the original mac and Windows 2.0 then it can be done with pda's.
:-)
If I had better coding skills I would like to play around with gtk or qt-embedded and actually create one for the hell of it. I would even create some of the functionality of kparts and call it kparts-lite. This would be a programmers haeven. Hmmm maybe I just found a perfect project for myself.
http://saveie6.com/
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).
./configure, make and make install.
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,
Make the appropriate modifications to ~/.xinitrc.
Alcohol and Calculus don't mix. Don't drink and derive.
because in developement the software would still overwork the processors causing them to flare up and make the PDA's burn away like burning Matchbox
ha.....ha.....ha.....
hmm....
Jesus saves souls and redeems them for valuable cash prizes
The reason a lot of people say that X is a memory hog is because when they run top, all they see is X. In fact, X is a hog because X mmap the graphics memory and pixmaps to be more efficient. If you take away these, X is quite efficient. Of course, for the ultimately efficiency, Matchbox is GREAT! I just want to point out some of the misunderstanding out there.
X looks big when you run 'top'. But the truth is that X memory maps the whole memory on the graphics card plus it caches a lot of the pixmaps other programs use. In essence, if you strip away these things that is not part of X, X is quite effient. Of course, it will never be as efficient as a stand alone windowing system, but it is very efficient considering the good things X has. Of course, I applaud the efforts for Matchbox; it looks GREAT! And it does what it intends to very well.
Now.. the only question is... will it whip out a virtual match and burn windows CE to bits, or any other incarnation of windows which can be run on a PDA? :)
And so we go, on with our lives
We know the truth, but prefer lies
Lies are simple, simple is bliss
What a filthy, filthy man you are!
It's interesting that you should mention the Newton... IIRC, it completely abandoned the concept of windows.
Most of its 'natural feel' came from subtler details than the appearance of the screen. For example, it stored all data as a giant 'soup' of information that all applicatoins could draw on. Enter an address in one app, it's immediately recognized by others. It helped reduce the sense of modality that one gets using most PDAs.
Another interesting example: drawing a horizontal line across the screen created a new 'document' -- a natural, intuitive gesture of separation that eliminated the need for additional UI controls.
Sad that they axed it before the hardware could catch up with the UI -- that sucker was an absolute beast to haul around compared to even the largest palm pilot.
--the verb
Support The DrudgeReport; Visit Our Advertisers
WASH POST: Bush Admin Split over Iraq...
IRAQ 'CLOSE TO NUCLEAR BOMB GOAL'
Passive smoking can kill your cat... TIMEWARNER to charge flood victims for cable boxes... Archerd: Democrats seeking Hollywood money... Republicans will tie ANWR to Iraq; Say threat in Baghdad necessitates oil drilling in Alaska... Ventura Goofs On God... AP WORLD
AP NATIONAL
AP WASHINGTON
AP BUSINESS
AP ENTERTAINMENT
AP ON THE HOUR
AP HEADLINES
AP BREAKING
SEARCH
Headline:
Date Range:
Within 14 Days Within 13 Days Within 12 Days Within 11 Days Within 10 Days Within 9 Days Within 8 Days Within 7 Days Within 6 Days Within 5 Days Within 4 Days Within 3 Days Within 2 Days Within 1 Day
Any word(s) in article:
ANANOVA
DOW JONES
BLOOMBERG
PAKISTAN WIRE
PAKISTAN BROADCASTING
ISLAMIC REPUBLIC WIRE
ITAR-TASS
KYODO WIRE
PR NEWSWIRE
[SHOWBIZ] PR WIRE
SCRIPPS HOWARD
US INFO WIRE
U.S. NEWSWIRE
WORLDWIRES
XINHUA ABC NEWS
AD AGE DEADLINE
BBC
BBC AUDIO
BILLBOARD
BOSTON GLOBE
BROADCASTING & CABLE
CBS NEWS
C-SPAN SCHEDULE
CHICAGO TRIB
CHICAGO SUN-TIMES
CHRISTIAN SCIENCE
CNN
CNN TRANSCRIPTS
DAILY VARIETY
D.C. DAYBOOK
E!
ELECTRONIC MEDIA
EMERGENCY NET
ENT WEEKLY
FINANCIAL TIMES
FORBES MAG
FOX NEWS
INTERNATIONAL HERALD TRIB
HILL
H'WOOD REPORTER
HUMAN EVENTS
INSIGHT MAG
INVEST BUS DAILY
JERUSALEM POST
JEWISH WORLD REVIEW
LA DAILY NEWS
LA TIMES
LUCIANNE.COM
MEDIA CHECK
MEDIA LIFE
MSNBC
MUCHMUSIC
NATION
NATIONAL ENQUIRER
NATIONAL REVIEW
NEW REPUBLIC
NY DAILY NEWS
NY OBSERVER
NY POST
NY TIMES
NEW YORKER
NEWSBYTES
NEWSWEEK
N. KOREAN NEWS
PEOPLE MAG
R & R
REASON MAG
ROLL CALL
SKY NEWS
SLATE: PAPERS
STAR
TIME MAG
TV SHOPTALK
[U.K.] DAILY MIRROR
DAILY RECORD
[U.K.] EVENING STANDARD
[U.K.] EXPRESS
[U.K.] GUARDIAN
[U.K.] INDEPENDENT
[U.K.] NEWS OF THE WORLD
[U.K.] PEOPLENEWS
[U.K.] STAR
[U.K.] SUN
U.K. TABLOIDS
[U.K.] TELEGRAPH
[U.K.] TIMES
US NEWS
USA TODAY
VILLAGE VOICE
WASH POST
WASH TIMES
WEEKLY STANDARD
WORLDNETDAILY
UPDATE: Mob Kills 2 in Ill. After Van Crash... US Senate Fails to Pass Medicare Drug Plan... Agents leaving Border Patrol in droves, union says... French spa to host next G8 summit... GLASSMAN/HASSETT: Dow 36000 Revisited... MATT DRUDGE
3 AM GIRLS
CINDY ADAMS
ARMY ARCHERD
DAVE BARRY
MICHAEL BARONE
PETER BART
BOB BARTLEY
STEPHEN BATTAGLIO
MARILYN BECK/SMITH
BLANKLEY
GLORIA BORGER
L. BRENT BOZELL
BRESLIN
DAVID BRODER
PAT BUCHANAN
BILL BUCKLEY
MONA CHAREN
ELEANOR CLIFT
RICHARD COHEN
PAUL COLFORD
JOE CONASON
ANN COULTER
STANLEY CROUCH
MICHAEL DALY
LOU DOBBS
MAUREEN DOWD
STEVE DUNLEAVY
ROGER EBERT
JOSEPH FARAH
SUZANNE FIELDS
ARI FLEISCHER
MICHAEL FLEMING
ROGER FRIEDMAN
JOHN FUND
LEAH GARCHIK
BILL GERTZ
GEORGIE GEYER
JONAH GOLDBERG
ELLEN GOODMAN
MARTIN GROVE
LLOYD GROVE
PETE HAMILL
CARL HIAASEN
NAT HENTOFF
CHRISTOPHER HITCHENS
H'WOOD REPORTER E-MAIL
ARIANNA HUFFINGTON
INSIDE BELTWAY
INSIDE POLITICS
INSIDE THE RING
MOLLY IVINS
AL KAMEN
MICKEY KAUS
KEITH J. KELLY
MICHAEL KELLY
MICHAEL KINSLEY
HARRY KNOWLES
MORT KONDRACKE
KRAUTHAMMER
LARRY KUDLOW
HOWIE KURTZ
JOHN LEO
DAVID LIMBAUGH
RUSH LIMBAUGH
HAL LINDSEY
RICH LOWRY
MICHELLE MALKIN
CHRIS MATTHEWS
MARY MCGRORY
MICHAEL MEDVED
DICK MORRIS
PEGGY NOONAN
BOB NOVAK
OFF THE RECORD
KATE O'BEIRNE
MARVIN OLASKY
BILL O'REILLY
PAGE SIX
ANDREA PEYSER
JIM PINKERTON
JOHN PODHORETZ
TV PROGRAMMING INSIDER
WES PRUDEN
ANNA QUINDLEN
WILLIAM RASPBERRY
REX REED
RICHARD REEVES
J. MAX ROBINS
RICHARD ROEPER
RUSH/MOLLOY
BILL SAFIRE
SCHLAFLY
TOM SHALES
GAIL SHISTER
LIZ SMITH
MICHAEL SNEED
JOE SOBRAN
THOMAS SOWELL
ANDREW SULLIVAN
HELEN THOMAS
CAL THOMAS
HUNTER S. THOMPSON
NEAL TRAVIS
TV COLUMN
DEB WEISS
JEFFREY WELLS
GEORGE WILL
WALTER WILLIAMS
WASHINGTON WHISPERS
BILL ZWECKER
GERTH ZEROS IN ON CHENEY... AIRLINES TO TRIM FLIGHTS ON SEPT 11... Accounting controls on EU budget 'unreliable'... Man Accused of Raping Nine Women He Met Through Internet... Pentagon: Hamas experimenting with chemical weapons... AGENCE FRANCE-PRESSE
AFP INTERNATIONAL
AFP NEWS WRAP
AFX
UPI WIRE
UPI NATIONAL
UPI WORLD
AP/REUTERS PHOTO WIRE
REUTERS ROUNDUP
REUTERS SPOTLIGHT
REUTERS WORLD
REUTERS POLITICS
REUTERS ODD
SEARCH
*FINDS ANY STORY LINKED ON DRUDGE WEATHER ACTION
QUAKE SHEET x x x x x VISITS TO DRUDGE
07/31/02
004,776,309 IN PAST 24 HOURS
107,519,403 IN PAST 31 DAYS
895,224,122 IN PAST YEAR DRUDGE ARCHIVES DRUDGE REFERENCE DESK EMAIL: DRUDGE@DRUDGEREPORT.COM SUPER-POWERED BY ALLEGIANCE TELECOM... DRUDGE NATIONAL PRESS CLUB SPEECH TRANSCRIPT
w3rd.
Who would run a lean, small-footprint second window manager ON TOP OF the first window manager that already takes 75% of their CPU resources? What is the world coming to? We already have window manager managers. I suppose someone might want to use Matchbox for their window manager manager window manager.
It doesn't make sense to me to make this front page news. I've written a window manager, and while it may be tricky at times (especially with ICCCM), it isn't a big deal.
BTW my dog pissed today. I think I'll ask Slashdot to share it with the world.
WARNING: This sig does not contain a joke
Has anyone tried running Matchbox on such a device, or a smaller screen (Curious,
Michel
Michel
Fedora Project Contribut
I called it Stinky Fuck Stick. I just didn't think!
IceWM, "The Cool Window Manager" :-) came out
to be a small-footprint, functional X11 window
manager. Which it was (I think it was about
1.2M or less of RAM when I had it running).
Now it got deeper theme support, KDE and GNOME hints, sound support...
I wished I could still run it in 1.2M. :-(
The problem is that you can't simply turn off most of the bloat, and just taking an older version of the code isn't an option, too, since it contained several bugs. Guess it: The bugs were fixed and bloat was added.
I really hope these guys aren't going to do the same mistake.
42. Easy. What is 32 + 8 + 2?
But it looks, to me, an awful lot like Qtopia, except the 'menu' button in the lower left is a lot bigger. So... what's the point?
404 Error:
Why bother there already is such a thing at:
http://opie.handhelds.org
No it's not a window manager but it is a small footprint gui, and there already are tons of projects which are useable w/it.
Hmm: sed "s/digital/digital blowjob/g" article > article-poted