The next version of Ubuntu will get multitouch interface abilities, catching the Linux operating system up to Windows and Mac OS X in at least one domain.
"Every single major PC manufacturer has been asking for a touch story on Linux. This has been one of the major missing points for Linux in the PC ecosystem," said Mark Shuttleworth, founder of the company called Canonical that develops and supports Ubuntu. But multitouch support will arrive in the next version of Ubuntu, 10.10, aka Maverick Meerkat.
Adding multitouch isn't easy, particularly in the open-source world of Linux where many independent organizations and programmers are involved. Canonical programmers assembled multitouch work from different layers of Linux software, wrote gesture recognition support tools, and added an interface to make it easier for programmers to add multitouch support.
Some applications and actions shouldn't need any changes at all, Shuttleworth said. Those using GNOME's GTK and KDE's Qt interface elements, for example, should automatically benefit from some multitouch gestures, such as scrolling down through a list.
With a multitouch interface, a computing device can detect several simultaneous contact points with a trackpad or touch screen. They figure prominently on the iPhone, iPad, and Mac laptops, but the idea is now moving steadily into the mainstream as a way to interact in a more intuitive, physical way with a computer.
But just how intuitive is multitouch? Physical gestures are certainly less arcane than many computing commands--Photoshop's Ctrl-Alt-Shift-S to save a graphic for the Web, say, or Unix's "ls -al" to list all files in a directory--including hidden ones--including file size and other details.
Command-line interfaces are indeed an exercise in memorization. But at least with many apps, an array of menu commands or toolbar icons can let people discover what they might want to do or at least poke around. Multitouch commands, by comparison, can get be arbitrary and, potentially, very complicated.
One issue: there aren't many standards. Pinching to zoom out and spreading fingers to zoom in is pretty common and intuitive, but what should a three-finger swipe down do? On Firefox on Mac OS X, it moves to the bottom of a Web page, but on Safari, it does nothing. Who's to say who's right?
"If every single application picks up on different patterns for the user interface, then users are going to be mystified and not delighted" by multitouch interfaces, Shuttleworth said.
Another issue: what layer of the software stack is listening to what you're doing? Firefox is getting multitouch support, but when should the browser be gathering the multitouch input and delivering it to a Web application, and when should the operating system be gathering the input and taking appropriate actions on its own?
In Ubuntu's case, there will be some standards. One convention to be employed is that people will tell the computer what type of operation they want to perform by starting it with a particular number of finger touches--a number that can be changed mid-gesture as needed.
"If you started with two fingers, we know instantly that's going to the application. If it's initiated with three fingers, we interpret that as window management," Shuttleworth said. "We have a rich vocabulary to position windows, to minimize or maximize them, to place them efficiently, and they all start with a three-finger tap."
After the initial contact, more actions can be taken. "Rather than single, magic gestures, we're making it possible for basic gestures to be chained, or composed, into more sophisticated sentences.' The basic gestures, or primitives, are like individual verbs, and stringing them together allows for richer interactions," Shuttleworth said in his blog post.
Confusion is a problem, but it's better for Linux to be able to participate now in multitouch development rather than after things settle down, Shuttleworth said.
"This is going to be an enormously rich area of research," he said. "I expect in five years' time gestures will be much better thought through and a standard in applications."