Bug 1476586 - Mouse left to right inversion not working after upgrading from Fedora 24 to Fedora 26
Summary: Mouse left to right inversion not working after upgrading from Fedora 24 to F...
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: cinnamon-settings-daemon
Version: 32
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Alternative GTK desktop environments
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-07-30 13:36 UTC by yousifjkadom@yahoo.com
Modified: 2020-05-30 11:12 UTC (History)
7 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-05-30 10:33:16 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description yousifjkadom@yahoo.com 2017-07-30 13:36:37 UTC
Description of problem:

I'm left-handed user & already activated left handed user mouse support on Fedora 24. It was very O.K & effecting both mouse & touchpad (double touch & single touch).

After upgrade, left hand user mouse support NOT EFFECTIVE AT ALL NEITHER ON MOUSE NOR ON TOUCHPAD !!!!

Now mouse clicks are of right handed user & double touch of touch pad work as right click while single touch of touch pad works as left click (please not that both double touch & three touch are disabled by default from mouse setting). This position never altered by activating or deactivating of left mouse setting !!!


Additional info:

1) This happen only after upgrade from Fedora 24 to Fedora 26 (this mean only happen when upgrade to Cinnamon 3.4.4. Issue was not existing before upgrading to Cinnamon version 3.4.4. Mouse inversion option was very O.K on Fedora 24).

2) I selected "mousetweaks" just to post this bug. I'm not sure about it. Cinnamon is a fork of GNOME but is this mean that "mousetweaks" is abnormal component or not, I'm not sure. Please correct to me.

3) Is it bug related to Cinnamon or to Fedora ?

Comment 1 yousifjkadom@yahoo.com 2017-08-02 10:47:42 UTC
Sorry, I forget to give data on my hardware system:

Lenovo ThinkPad e550 with Intel core i7 5500 CPU @ 2.40 GH X 2, RAM = 8 GB, HHD = 1 TB, Hybrid VGA (Intel Corporation HD Graphic 5500 + Radeon R7 M265 2GB)
Reply With Quote

Any further data you need ?

Comment 2 Shing-Shong Shei 2017-08-02 17:37:19 UTC
This happens when upgrading from RHEL 7.3 to 7.4, too. 

gnome-control-center mouse

and click on either Left or Right does not have any effect.

Comment 3 leigh scott 2017-08-07 23:29:14 UTC
(In reply to yousifjkadom from comment #0)
> Description of problem:
> 
> I'm left-handed user & already activated left handed user mouse support on
> Fedora 24. It was very O.K & effecting both mouse & touchpad (double touch &
> single touch).
> 
> After upgrade, left hand user mouse support NOT EFFECTIVE AT ALL NEITHER ON
> MOUSE NOR ON TOUCHPAD !!!!
> 
> Now mouse clicks are of right handed user & double touch of touch pad work
> as right click while single touch of touch pad works as left click (please
> not that both double touch & three touch are disabled by default from mouse
> setting). This position never altered by activating or deactivating of left
> mouse setting !!!
> 
> 
> Additional info:
> 
> 1) This happen only after upgrade from Fedora 24 to Fedora 26 (this mean
> only happen when upgrade to Cinnamon 3.4.4. Issue was not existing before
> upgrading to Cinnamon version 3.4.4. Mouse inversion option was very O.K on
> Fedora 24).
> 
> 2) I selected "mousetweaks" just to post this bug. I'm not sure about it.
> Cinnamon is a fork of GNOME but is this mean that "mousetweaks" is abnormal
> component or not, I'm not sure. Please correct to me.
> 
> 3) Is it bug related to Cinnamon or to Fedora ?

Cinnamon doesn't require the use of mousetweaks, I doubt it has any affect on cinnamon-settings-daemon as cinnamon uses different schemas.

cinnamon-settings mouse tab has an option to enable it.


cinnamon-settings mouse


I have tested it and it works fine

Comment 4 Shing-Shong Shei 2017-09-03 19:02:17 UTC
The old faithful way does the trick for me:

xmodmap -e "pointer = 3 2 1 4 5"

This essentially swaps the left/right buttons (1 and 3).

Comment 5 yousifjkadom@yahoo.com 2017-09-08 15:44:38 UTC
@Shing-Shong Shei

Dear can you explain more about command xmodmap -e "pointer = 3 2 1 4 5"

1) You said left/right buttons (1 & 3). O.K this mean that to reverse to right handed we need to run xmodmap -e "pointer = 1 2 3 4 5" Isn't it ?

2) what 2, 4, & 5 mean ?

@leigh scot

What I have to do so as to supply you with helpful information ? Also, is this bug related to Fedora or to Cinnamon DE ? If it it related to Cinnamon DE, please inform me so as to file a bug report on their site.

Best.

Comment 6 Shing-Shong Shei 2017-09-08 16:00:31 UTC
Hi Leigh,

xmodmap is an utility for modifying keymaps and pointer button mappings in X. If you just run xmodmap, you will see the key binding (and their corresponding keycode). "xmodmap -pp" will show the "print pointer map" as shown bellow:

$ xmodmap -pp
There are 20 pointer buttons defined.

    Physical        Button
     Button          Code
        1              3
        2              2
        3              1
        4              4
        5              5
...

Usually all you care are the first three which usually correspond to left/middle/right button. (Mice on PC used to have three buttons. But now the middle one is replaced by wheel now.) So as you can see in my output, I have already swapped physical button 1 and 3 (on the left column) and the result is shown on the right column. You don't need to worry about 4 or 5 which usually correspond to the additional buttons on some mice (such as side buttons for go forward or backward, say, in gaming).

Also I notice that this change is not permanent; i.e., when you log out and back in, you need to run it again.

Hope this helps.

Comment 7 Peter Hutterer 2017-11-07 05:28:16 UTC
if you're under X, please run xinput list-props <device name> where the device name is from xinput list. Check for the libinput Left Handed Enabled property and whether it is set for the device. If not, the issue is in Cinnamon.

If it is set, please run sudo libinput debug-events --enable-left-handed and then click on the mouse - what's the output of that?

Comment 8 yousifjkadom@yahoo.com 2017-11-07 11:18:28 UTC
Hi. I'm not understand what you mean by "if you're under X". But I run: 

xinput list

& it's output is the following:

⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ AlpsPS/2 ALPS DualPoint TouchPad        	id=11	[slave  pointer  (2)]
⎜   ↳ AlpsPS/2 ALPS DualPoint Stick           	id=12	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ Power Button                            	id=6	[slave  keyboard (3)]
    ↳ Video Bus                               	id=7	[slave  keyboard (3)]
    ↳ Video Bus                               	id=8	[slave  keyboard (3)]
    ↳ Integrated Camera: Integrated C         	id=9	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=10	[slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                  	id=13	[slave  keyboard (3)]

Please what I have to select from them ? Can you give me command:

xinput list-props <device name>

exactly how I have to write it ? I mean what I have exactly to put instead of <device name> ??

Comment 9 yousifjkadom@yahoo.com 2017-11-07 11:40:53 UTC
Sorry I remove "need info" lebel accidentally & can not return it again.

Comment 10 yousifjkadom@yahoo.com 2017-11-07 12:45:25 UTC
Hi. I run command "xinput list-props divicename for all of mouse + touchpad elements. One of them "AlpsPS/2 ALPS DualPoint TouchPad" has Left hand support enabled (=1), while "AlpsPS/2 ALPS DualPoint Stick" has it disabled (=0) !

Please examine output & give me your next instruction: run "sudo libinput debug-events --enable-left-handed" or not.

Output:

xinput list-props 'Virtual core pointer'
Device 'Virtual core pointer':
	Device Enabled (143):	1
	Coordinate Transformation Matrix (145):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000

--------------

xinput list-props 'Virtual core XTEST pointer'
Device 'Virtual core XTEST pointer':
	Device Enabled (143):	1
	Coordinate Transformation Matrix (145):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	XTEST Device (262):	1

-------------

xinput list-props 'AlpsPS/2 ALPS DualPoint TouchPad'
Device 'AlpsPS/2 ALPS DualPoint TouchPad':
	Device Enabled (143):	1
	Coordinate Transformation Matrix (145):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Tapping Enabled (278):	1
	libinput Tapping Enabled Default (279):	0
	libinput Tapping Drag Enabled (280):	1
	libinput Tapping Drag Enabled Default (281):	1
	libinput Tapping Drag Lock Enabled (282):	0
	libinput Tapping Drag Lock Enabled Default (283):	0
	libinput Tapping Button Mapping Enabled (284):	1, 0
	libinput Tapping Button Mapping Default (285):	1, 0
	libinput Natural Scrolling Enabled (286):	1
	libinput Natural Scrolling Enabled Default (287):	0
	libinput Left Handed Enabled (288):	1
	libinput Left Handed Enabled Default (289):	0
	libinput Accel Speed (290):	0.000000
	libinput Accel Speed Default (291):	0.000000
	libinput Scroll Methods Available (292):	1, 1, 0
	libinput Scroll Method Enabled (293):	1, 0, 0
	libinput Scroll Method Enabled Default (294):	1, 0, 0
	libinput Click Methods Available (295):	1, 1
	libinput Click Method Enabled (296):	1, 0
	libinput Click Method Enabled Default (297):	1, 0
	libinput Middle Emulation Enabled (298):	0
	libinput Middle Emulation Enabled Default (299):	0
	libinput Send Events Modes Available (263):	1, 1
	libinput Send Events Mode Enabled (264):	0, 0
	libinput Send Events Mode Enabled Default (265):	0, 0
	libinput Disable While Typing Enabled (300):	1
	libinput Disable While Typing Enabled Default (301):	1
	Device Node (266):	"/dev/input/event4"
	Device Product ID (267):	2, 8
	libinput Drag Lock Buttons (302):	<no items>
	libinput Horizontal Scroll Enabled (303):	0

-------------------

xinput list-props 'AlpsPS/2 ALPS DualPoint Stick'
Device 'AlpsPS/2 ALPS DualPoint Stick':
	Device Enabled (143):	1
	Coordinate Transformation Matrix (145):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	libinput Natural Scrolling Enabled (286):	0
	libinput Natural Scrolling Enabled Default (287):	0
	libinput Left Handed Enabled (288):	0
	libinput Left Handed Enabled Default (289):	0
	libinput Accel Speed (290):	0.000000
	libinput Accel Speed Default (291):	0.000000
	libinput Accel Profiles Available (304):	1, 1
	libinput Accel Profile Enabled (305):	1, 0
	libinput Accel Profile Enabled Default (306):	1, 0
	libinput Scroll Methods Available (292):	0, 0, 1
	libinput Scroll Method Enabled (293):	0, 0, 1
	libinput Scroll Method Enabled Default (294):	0, 0, 1
	libinput Button Scrolling Button (307):	2
	libinput Button Scrolling Button Default (308):	2
	libinput Middle Emulation Enabled (298):	0
	libinput Middle Emulation Enabled Default (299):	0
	libinput Send Events Modes Available (263):	1, 0
	libinput Send Events Mode Enabled (264):	0, 0
	libinput Send Events Mode Enabled Default (265):	0, 0
	Device Node (266):	"/dev/input/event3"
	Device Product ID (267):	2, 8
	libinput Drag Lock Buttons (302):	<no items>
	libinput Horizontal Scroll Enabled (303):	1

---------------------

Waiting your kind response.

Comment 11 Peter Hutterer 2017-11-07 22:33:53 UTC
The touchpad:
	libinput Left Handed Enabled (288):	1

The pointing stick:
	libinput Left Handed Enabled (288):	0

This indicates that only the touchpad is switched to left-handed mode, so the software buttons on the touchpad (bottom left/right corners of the touchpad) should be switched. Is that correct?
See also https://wayland.freedesktop.org/libinput/doc/latest/clickpad_softbuttons.html

The physical buttons above the touchpad are wired to the pointing stick (the red thing between the g/h keys) and that one is still in right-handed mode.

Please run "sudo libinput debug-events --enable-left-handed" to check what buttons you see when clicking. This enables left-handed mode on all devices. The tool has a man page if you're unclear about the usage.

Comment 12 yousifjkadom@yahoo.com 2017-11-08 18:15:43 UTC
(In reply to Peter Hutterer from comment #11)
> The touchpad:
> 	libinput Left Handed Enabled (288):	1
> 
> The pointing stick:
> 	libinput Left Handed Enabled (288):	0
> 
> This indicates that only the touchpad is switched to left-handed mode, so
> the software buttons on the touchpad (bottom left/right corners of the
> touchpad) should be switched. Is that correct?
> See also
> https://wayland.freedesktop.org/libinput/doc/latest/clickpad_softbuttons.html
> 
> The physical buttons above the touchpad are wired to the pointing stick (the
> red thing between the g/h keys) and that one is still in right-handed mode.
> 
> Please run "sudo libinput debug-events --enable-left-handed" to check what
> buttons you see when clicking. This enables left-handed mode on all devices.
> The tool has a man page if you're unclear about the usage.

Hi. 1st of all, I would like to apologize about my private e-mail that I sent you. I sent you that private e-mail because I confused your last repley in bug number 103598 that I created in Freedesktop.org bug tracker ! I confused your replay as if it were about this bug 1476586 ! Sorry !

Let we complete discussion:

I run "sudo libinput debug-events --enable-left-handed"

But no correction happened !!! Only I see codes when I clicked left/right mouse bottom but no activation of left hand support ! You said "This enables left-handed mode on all devices" but no enabling happened !

I read man page but did not find something of help - please correct to me.

Comment 13 yousifjkadom@yahoo.com 2017-11-08 18:28:49 UTC
I forgot to mention that when I run:

sudo libinput debug-events --enable-left-handed

then pressed bottom on my left side code appeared in terminal was RIGHT, while when I pressed bottom on my right hand then code appeared in terminal contain LEFT.

This mean that inversion should be activated: left hand became active. But in fact it is still right hand & left hand still NOT active !!

What is this ? Where is the defect ?

Comment 14 Peter Hutterer 2017-11-08 23:40:36 UTC
I'm struggling to parse the above two messsages, sorry. You run sudo libinput debug-events --enable-left-handed and the buttons are swapped correctly in the terminal output? Note that this tool has *no* effect on the graphical environment, only the terminal output matters here. It's a debugging tool only.

Which buttons are we talking about here anyway? The software buttons on the bottom of the touchpad or the physical buttons above the touchpad?

Comment 15 yousifjkadom@yahoo.com 2017-11-09 04:51:17 UTC
(In reply to Peter Hutterer from comment #14)
> I'm struggling to parse the above two messsages, sorry. You run sudo
> libinput debug-events --enable-left-handed and the buttons are swapped
> correctly in the terminal output? Note that this tool has *no* effect on the
> graphical environment, only the terminal output matters here. It's a
> debugging tool only.
> 
> Which buttons are we talking about here anyway? The software buttons on the
> bottom of the touchpad or the physical buttons above the touchpad?

1) yes, the buttons are swapped correctly in the terminal output. Click physically right assigned left in terminal, while click physically left assigned right in terminal.

2) I'm talking about the physical buttons above the touchpad.

Comment 16 Peter Hutterer 2017-11-09 05:31:48 UTC
punting back to cinnamon. libinput works as expected and the xinput property output shows that the property is never set for the trackpoint device, only for the touchpad device. So libinput, as requested, only sets the touchpad to left-handed.

Comment 17 leigh scott 2017-11-09 09:11:21 UTC
(In reply to Peter Hutterer from comment #16)
> punting back to cinnamon. libinput works as expected and the xinput property
> output shows that the property is never set for the trackpoint device, only
> for the touchpad device. So libinput, as requested, only sets the touchpad
> to left-handed.

Thank you for establishing it's a trackpoint device issue, I wouldn't have ever got it from the reporters description.

any clues :-)

https://github.com/linuxmint/cinnamon-settings-daemon/blob/master/plugins/mouse/csd-mouse-manager.c#L527

Comment 18 Peter Hutterer 2017-11-09 23:45:56 UTC
I don't see anything that sticks out so now I'm wondering if it's some typo or some other cornercase falling through. Probably best to liberally sprinkle printfs over the codebase and providing a scratch build to test it.

Comment 19 yousifjkadom@yahoo.com 2018-01-26 14:45:14 UTC
Issue is still existing on cinnamon-setting-daemon version 3.6.1 1.fc26

Comment 20 Luis Verissimo 2018-04-08 11:25:51 UTC
I have exactly the same issue after upgrading from F27 to F28 beta using gnome shell.

Comment 21 Fedora End Of Life 2018-05-03 08:37:49 UTC
This message is a reminder that Fedora 26 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 26. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '26'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not
able to fix it before Fedora 26 is end of life. If you would still like
to see this bug fixed and are able to reproduce it against a later version
of Fedora, you are encouraged  change the 'version' to a later Fedora
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.

Comment 22 Fedora End Of Life 2018-05-29 12:54:52 UTC
Fedora 26 changed to end-of-life (EOL) status on 2018-05-29. Fedora 26
is no longer maintained, which means that it will not receive any
further security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 23 yousifjkadom@yahoo.com 2018-06-05 10:49:51 UTC
Hi. I upgraded my Fedora 26 to 28 using DNF without any error message. But issue is still existing after upgrade to Fedora 28 !

So, I re-open the bug.

Comment 24 Ben Cotton 2019-05-02 20:50:03 UTC
This message is a reminder that Fedora 28 is nearing its end of life.
On 2019-May-28 Fedora will stop maintaining and issuing updates for
Fedora 28. It is Fedora's policy to close all bug reports from releases
that are no longer maintained. At that time this bug will be closed as
EOL if it remains open with a Fedora 'version' of '28'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 28 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 25 Ben Cotton 2019-05-28 22:35:54 UTC
Fedora 28 changed to end-of-life (EOL) status on 2019-05-28. Fedora 28 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 26 yousifjkadom@yahoo.com 2019-06-01 20:06:34 UTC
Hi. I upgraded from Fedora 28 to 30 using CLI via tty terminal, but this ancient bug is still existing !

Comment 27 Ben Cotton 2020-04-30 21:52:31 UTC
This message is a reminder that Fedora 30 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 30 on 2020-05-26.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '30'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 30 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 28 Ben Cotton 2020-05-26 15:33:07 UTC
Fedora 30 changed to end-of-life (EOL) status on 2020-05-26. Fedora 30 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 29 yousifjkadom@yahoo.com 2020-05-30 10:09:26 UTC
I'm upgraded from Fedora 30 to 32 from within tty terminal very smoothly & without any error message. But the issue is still existing without any fix !

Comment 30 leigh scott 2020-05-30 10:33:16 UTC
I don't intend to address this, please file the issue upstream.

Comment 31 yousifjkadom@yahoo.com 2020-05-30 11:12:24 UTC
@leigh scot
I'm already file the issue to upstream since long time ! - see:
https://github.com/linuxmint/cinnamon-settings-daemon/issues/197#issuecomment-519570758


Note You need to log in before you can comment on or make changes to this bug.