Roadmap for mpx: 0.3.0 should do the same as 0.2.0 does but with MPX being unconditionally in the server. All #ifdef MPX removed, and the stuff 0.2.0 does merged into the X Input Extension rather than having it's own extension. A few bugs fixed, here and there. 0.3.0 will probably not be here before the christmas break.
By the time I can release 0.3.0 I hope I have access to freedesktop.org, so instead of having my private repository I can work on a branch of X.org. This will make it much easier to get a copy of MPX.
I've been working on getting MPX [1] up-to-date with the current server for the last few weeks. (MPX is a patch against X.org to get multiple mouse cursors). Thanks to Daniel Stone's changes [2], MPX fits now snugly into the event generation.
MPX now
- is integrated rather than bolted on top
- has it's own extension protocol
- does proper mouse cursor rendering
- has a lot of still-unused stuff under the hood
This is the first set of patches I can offer for people to play with. It's not overly stable or mature yet. More features will be added but you can get a grip on what it does.
The first set of patches is underway. I already changed some parts of the page, if everything builds fine I should be able to put everything online this week.
I had my first successful communication between the X Server and a client program using MPX extension requests. It was only a QueryExtensionVersion request, but you have to start somewhere. At least the infrastructure for it is in place, now I have to start adding other requests, events, etc.
XCB is great! Didn't really know anything about it till yesterday but I managed to write the client-side for the MPX extension in hardly any time at all. All you have to do is write an XML file and recompile. Whoopee. Three cheers to the XCB guys.
MPX porting to X.org is going well. From what I can tell so far, cursor rendering works properly now (although I think there may be a leak). I broke pretty much every API I encountered so far in order to get the devices passed through properly. This also makes room for a future MPX extension.
The current status:
Cursor rendering code is pretty much finished, with a bit of cleanup necessary.
Next week will be event flow adjustment.
I'm now working on getting MPX into the latest source tree. Daniel Stone merged the input hotplug branch a while ago, including a nifty redesign of some of the parts MPX was fiddling around with. From what I have done so far, MPX is now much easier to integrate.
I released the first RC of the (for now) final version of MPWM. MPWM does now what it needs to do to be a rudimentary window manager and I want to concentrate on MPX. Expect the final release of MPWM before the CSCW 2006 conference early November.