Red Hat Bugzilla – Bug 483639
Switching to left handed mouse breaks touchpad tapping
Last modified: 2009-07-16 16:06:50 EDT
Description of problem:
In Gnome desktop use System->Preferences->Hardware->Mouse and select Left Handed mouse orientation. The touchpad also changes to left-handed on the buttons but the "tap" facility now acts like a right click for normal right handed mouse operation - i.e. tapping no longer works.
Version-Release number of selected component (if applicable):
How reproducible: Every time
Steps to Reproduce:
1. Change to left handed mouse
2. Touchpad also changes to left handed and tap no longer works to select
Actual results: Touchpad tapping is broken when it should not be broken by switching to left handed mouse.
Expected results: Touchpad tapping should remain working normally even if the mouse is switched to left handed.
Additional info: Smolt info at
Machine is a Samsung Q35 laptop.
This is a long standing issue as reported in
Ditto still broken as per
# rpm -q gnome-settings-daemon
It's possible your touchpad isn't listed as one. Could you please attach the output of "xinput --list" to this bug?
Created attachment 341323 [details]
file containing output of xinput --list
Output of xinput --list when logged in to gnome with the mouse set as left handed.
Peter, xinput doesn't list the type of device in --list. Would it be sufficient to check for input.touchpad in lshal, or does evdev have some other heuristics for detection?
I tried lshal and grepped for input.touchpad - which is not present. I'll run other tests when you can suggest what to do next.
In the device list returned by XListInputDevices, info->type will be the XI_TOUCHPAD ("TOUCHPAD") atom defined in XI.h. The synaptics driver sets that, evdev does the same.
fwiw, xinput --list will list it in the next release too.
http://cgit.freedesktop.org/xorg/app/xinput/tree/src/list.c, line 69
a problem may be chained button mappings though, if you set left-handed for the virtual core pointer, all devices posting through this device will be left-handed. so you'd have to apply the inverse mapping to the touchpad to get it to be right-handed.
Should be fixed in this build for F-10:
Note that this completely disables the button swapping for touchpads, because there's no way (that I know) to swap only the physical button's mapping, and not the touchpad tap (bug 498249)
Please test, and I'll push this package as an F-10 update.
This package does not work.
What it did was to have the same effect as the original package in changing both the mouse and the touchpad from right to left-handed, but worse was that when logging back in it had reverted to right-handed behaviour despite the gnome preference still showing it was left-handed!
Please do NOT push this as an update.
(In reply to comment #9)
> This package does not work.
> What it did was to have the same effect as the original package in changing
> both the mouse and the touchpad from right to left-handed,
That'd be because you were still running the old code.
> but worse was that
> when logging back in it had reverted to right-handed behaviour despite the
> gnome preference still showing it was left-handed!
Yes, the touchpad will be right-handed because we can't separate the mapping for tap and for the physical buttons. So you get one or the other. If this isn't good enough for left-handed users, I'll close this and we'll have to wait for the driver to be fixed.
The original hope was that switching the "mouse" from right to left-handed would change only the mouse and leave the touchpad as it was - so that the mouse was operating left-handed and the touchpad as right handed.
This was because the user that I was configuring for has a problem with the mouse when operating right handed (medical reasons) but the touchpad use was fine as it was without any adjustment. Certainly making it change so that a single tap did not have the equivalent of left click made the touchpad very user unfriendly.
I guess in F11 there is an additional option to use synclient to define the TapButton functions that can be run as a script during login?
I will try the code from #8 again - I thought I had logged out and back in before testing after installing it but I was multi-tasking at the time and it is possible I missed that. I will report back either tonight or tomorrow night.
I have re-tested the version at
After installing the rpm, and then logging out and back in, and then using the gnome preferences to switch to left-handed, both the mouse and the touchpad remain right-handed, both before and after logging out and back in again, despite the gnome preferences panel showing that it is left-handed. So this version does not work. After installing it I checked that it was indeed installed using rpm -q gnome-settings-daemon which showed the correct version (2.24.1-10.fc10) was being used. On switching back to the original version (-7) the mouse reverted to correct switching to left-handed with the touchpad also left handed once the gnome preferences were selected as left-handed.
By the way just to be clear, in the original system with the old (2.24.1-7) version, the touchpad single tap when set as left-handed has the same effect as a right-click for an original right-handed mouse) instead of being the same as a left click in an original right-handed mouse, and the two buttons below the touchpad are also left-handed (i.e. reversed from the normal right-handed operation).
With the buttons below the touchpad having switched to being left handed as well as the mouse button reversal, then the system is usable, but touchpad single tap now cannot do selection of items on the desktop - and double tapping does not work once the switch to left-handed has been made. This means that double tap does nothing at all and the touchpad is unusable.
If the effect of switching to left-handed was that both the mouse buttons as well as the touchpad buttons were reversed when the left-handed selection is made, but the touchpad tap and double tap remains unchanged (i.e. as it was for right-handed operation) then the system would become properly usable in the left-handed mode.
I know this description may be slightly confusing but I hope it can be understood?
Maybe the behaviour has been changed for F11? Can anyone confirm?
I found that by installing gsynaptics and copying the hal policy file /usr/share/hal/fdi/policy/20thirdparty/10-synaptics.fdi to /etc/hal/fdi/policy/ then synclient became usable. In this case I can get at least some functionality of the touchpad back by executing
in a terminal whilst the mouse has been switched to left handed.
This keeps the mouse left-handed as planned, and the buttons below the touchpad remain left-handed (i.e. reversed from normal operation - but at least the touchpad now executes a single tap to highlight items on the desktop and select menus from the taskbar. Triple tapping now gives the effect of a double mouse click.
I have not explored further to find how to get a double tap to act as a double mouse click but this is at least usable now in left handed mode.
These commands could easily now be added to the startup for the left handed user.
With the above settings, I have now easily made a shell script and added it to the gnome startup and this works. Additionally the effect of a double mouse click can be done using a double finger tap.
I also note that there are Ubuntu
and still not fixed at
and Suze bug reports for the same problem as this one. i.e. the desired behaviour in a laptop when switching to a left-handed mouse should be to leave the entire touchpad properties unchanged. The comment I added in #15 is a workaround only in the absence of a proper fix.
So, this isn't fixable in F10. To fix the problem in F11, we're changing XInput devices properties, the touchpad's button mapping.
Under F10, you'd need to use XShm to change the touchpad's properties, for which gnome-settings-daemon doesn't have any support.
So the question is, which is less broken, the package I provided, or the original behaviour (I'd think my package...)?
That patch should fix it for F-11:
for the archives (from an irc log):
An alternative is to map tap buttons to a higher button number in the driver (using the synaptics property or synclient) and then map those buttons to 1/2/3 using XSetDeviceButtonMapping.
This way, if the physical buttons 1/2/3 are remapped, the tap buttons still post through the logical buttons 1/2/3 and are unaffected by the mapping.
This cannot automatically be done in the driver as it relies on the simultaneous button mapping in the server. Such a mapping has to be integrated into the desktop environment.
Sorry about the delay in response - I now have F11 on a laptop that I can test and I will test and report in the next few days.
I have now had a chance to test this with a fully up to date F11 system.
The version of gnome-settings-daemon
Switching to left handed mouse does indeed switch to left handed on the mouse, and as intended the touchpad settings remain unchanged.
So this is now the correct behaviour and I am closing this bug.