Support for multiple independent mouse cursors
mailinglists at who-t.net
Tue Apr 25 18:11:34 PDT 2006
Yes, it is possible. MPX supports it to a certain extent.
Each window (that is, each GUI element) can be assigned an access
list. Only devices in the access list (or in the case of the DENY
access list only devices NOT in the access list) will send events to
the given window. Because it is window-based you can even do things
like 5 users access the same application but only one user can press
the save button.
The interface is very basic at the moment, but the support is there.
The only problems that are there is that it is hard to do it on a per-
process basis. A process can open multiple connections to the X
Server and there's no way to determine which connection belongs to
which process. the _NET_WM_CLIENT atom is voluntarily and doesn't
work to well. The only way I found around that is the following:
modify X lib so that each time a window is created it also sets an
atom on this window to the PID of the process that opened it. MPWM
supports this so-called FORCE_PID hack and colours the windows
If you look at the screenshot http://wearables.unisa.edu.au/mpx/
images/gimp_dualinputproblems.png you can see that one of the buttons
is coloured red. That means that the WM knows that GIMP belongs to
the red user.
If you want to automatically assign an application you would need a
similar hack to set the user ID to a given window.
Talking about that I realized that I did not include the FORCE_PID
patches for xlib. I will update the website.
On 26/04/2006, at 9:55 AM, Friedrich W. H. Kossebau wrote:
> Am Mittwoch, 26. April 2006 01:34, schrieb Peter Hutterer:
> [Multi-Pointer X Server (MPX)]
>> I'd appreciate any feedback.
> Cool, cool stuff :)
> Now if the following works a dream came true for me:
> Is there any possibility to bind cursors* to users? So events are
> only sent to
> windows of programs run by that user? And also those windows where
> the owner
> of the running program invited others to join (think whiteboard)?
> * and other input devices
> Friedrich, a plain casual observer of X development
> xorg mailing list
> xorg at lists.freedesktop.org
More information about the xorg