What's Next for X?
Pages: 1, 2
In order to do its compositing, the compositing manager needs to know which areas of the off-screen windows have changed. This is the job of another new feature, the damage extension. It allows any application to listen for changes in windows.
As a taster of the sort of effects that the damage extension will make available, the uncover utility shows the user an overview of all windows in the system in relation to each other, but scaled so that none of them overlap.
Figure 4. Uncover (top left) shows a non-overlapping window overview
Another utility, skippy, implements something similar to the Exposé window-choosing facility from Mac OS X. Via the damage extension it keeps the contents of all the windows up to date even while minimized.
Figure 5. When the user hits F11, skippy presents a live overview of windows
As well as the glitzy new features, there's a lot of work underway in other parts of the X Window System. One initiative that will have a positive knock-on effect is the splitting up of the monolithic source code tree of X into parts that can be built independently. Currently, despite the fact that large amounts of the source code is static, everything must be rebuilt and released in a synchronized way. This modularization, happening in the Debrix project, will pave the way for more flexible development and release of X.Org.
Another important project is the "kdrive" X server. Kdrive is intended to be a small footprint; a simpler X server for use in proofs of concept or embedded systems. It provides another way for developers to quickly try out new ideas. It's quite easy to check out Kdrive from the freedesktop.org repository and give it a try yourself. See the links in the Resources section at the end of this article for instructions.
From being a foreboding and scary kind of project, the X Window System is turning into a more accessible project that appeals to developers wanting to help out and experiment. This can only have a positive long-term impact on the Linux desktop.
Kick the OS X Habit
The time of liberation is near. The current estimate of X.Org developers is that these new features will get into Linux distributions in six months or so. No longer will Linux desktop users cringe when they can't do the same fun floaty effects their Mac-owning colleagues can!
More seriously, the improvement in X technology should further unlock creativity and usability on the Linux desktop. Watch this space.
- X.Org is the home of the X.Org X distribution, adopted by most Linux distributions.
- freedesktop.org hosts a loose collection of projects aimed at the Linux desktop, including the experimental X server.
- The papers from Jim Gettys and Keith Packard for the 2004 Linux Symposium go into great detail on the future plans for the X.Org system.
- If you want to play with the new features yourself, you can check out and build a Kdrive-based server using these instructions.
- The skippy window chooser works both with and without the new damage extension, and provides a full-screen view on your windows.
Thanks to Daniel Stone for answering various questions about how the new X server works.
Edd Dumbill is co-chair of the O'Reilly Open Source Convention. He is also chair of the XTech web technology conference. Edd conceived and developed Expectnation, a hosted service for organizing and producing conferences. Edd has also been Managing Editor for XML.com, a Debian developer, and GNOME contributor. He writes a blog called Behind the Times.
Return to the O'Reilly Network