MPX is becoming stable

Peter Hutterer mailinglists at
Sat Nov 11 12:59:55 PST 2006

Hey guys,

I'm happy to announce that MPX is now stable enough to play with it.
Version 0.17.1* has been shown off  at the CSCW conference and ran  
straight for more than four hours without issues and lots of  
different ppl playing around with it.  One of my colleagues is using  
it on his main machine (with gnome as desktop environment) and except  
for a few glitches (see below) it works fine.

The way how it is done is still a big hack but my plans are to  
somehow use the input hotplug branch in the future. We'll see how  
that goes.

I've also modified a ubuntu live cd (dapper drake) to use MPX as  
windowing system, the ISO can be downloaded from
That should make it fairly unobtrusive to try it out.

-) always the same cursor image.
Blame me, I still didn't manage to get the cursor rendering right. So  
I changed the default shape to be an arrow (rather than the X) and  
disabled ChangeToCursor().
-) popup window wars
If mouse0 right-clicks and a popup appears, mouse1 can make it  
disappear by clicking anywhere on the screen. I got some plans on how  
to solve that but it requires a significant amount of changes to the  
current code so I'll wait until I moved to input hotplug. This is  
actually my highest priority right now.
-) event flow
similar to popup windows: some applications behave weird with  
multiple cursors. Example is firefox, where dragging the scrollbar  
with one mouse and just moving the other mouse causes scrolling  
jumps. I'm not sure how much of that can actually be fixed in a  
generalised way. It depends a lot on the application. Need to look  
into that.
-) window manager issues
The window manager is to show off what to do with multiple cursors.  
It lacks a LOT of features of any sane window manager out there. The  
live CD will use it as default.  If you don't like it, run blackbox,  
gnome, KDE, whatever (and send me your experience reports).
-) lack of testing
I use mostly my own WM and gnome apps to test things. so I can't  
guarantee how many apps actually behave nicely. I suppose testing  
will increase once I use it myself on my machine.
-) Most of the documentation is out of date. The only thing that I  
updated recently is the list of modified files.
I'll update with the use of input hotplug.

-) you can put MPX into place instead of the standard Xorg and it  
won't crash, segfault or behave weirdly. Mind you, unless you modify  
the config file you won't get multiple cursors.
-) disabled hardware rendering for cursors.
MPX will always return false when the card wants to init the cursors  
in hardware. We need software rendering, otherwise we can only do one  
at a time. I don't think that can be fixed until the cards know about  
multiple cursors
-) fixed a lot of issues with delivery of enter/leave events. I think  
there's still some left (e.g. when a window is resized, a leave event  
is not sent until the cursor is actually moved), but you can have  
multiple buttons highlighted in gnome apps.

and of course minor fixes here and there.


* I'm tagging very often. This has to do with all the scripts for my  
testing setup.

Multi-Pointer X Server

More information about the xorg mailing list