Atom doesn't respect reversed scroll direction in Xubuntu


#1

I am running Xubuntu 16.04 on a Dell Latitude E5470, and I have checked “Reverse scroll direction” in Settings > Mouse and Touchpad from the Xubuntu main menu. This means that I want the page content to scroll down when I drag my fingers down on the touchpad - which seems to work fine in every other application I have tried - however in Atom the content moves up!

Is there any workaround to this issue? I cannot find anything in the Atom Editor Preferences that might help.


#2

I know about https://github.com/atom/atom/issues/11976 which has a comment about inverted scroll and some solution. I am no Linux expert so I have no idea what the solution means.


#3

Thank you that did the trick!

First I turned off Reverse scroll direction in my Xubuntu Mouse and Touchpad settings, then I ran the following:

$ xinput --list
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ ImPS/2 Generic Wheel Mouse              	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)]
    ↳ Power Button                            	id=8	[slave  keyboard (3)]
    ↳ Sleep Button                            	id=9	[slave  keyboard (3)]
    ↳ Integrated_Webcam_HD                    	id=10	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=11	[slave  keyboard (3)]
    ↳ Dell WMI hotkeys                        	id=13	[slave  keyboard (3)]
    ↳ DELL Wireless hotkeys                   	id=14	[slave  keyboard (3)]

$ xinput --list-props "ImPS/2 Generic Wheel Mouse"
Device 'ImPS/2 Generic Wheel Mouse':
	Device Enabled (137):	1
	Coordinate Transformation Matrix (139):	1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
	Device Accel Profile (260):	0
	Device Accel Constant Deceleration (261):	1.000000
	Device Accel Adaptive Deceleration (262):	1.000000
	Device Accel Velocity Scaling (263):	10.000000
	Device Product ID (255):	2, 5
	Device Node (256):	"/dev/input/event6"
	Evdev Axis Inversion (264):	0, 0
	Evdev Axes Swap (266):	0
	Axis Labels (267):	"Rel X" (147), "Rel Y" (148), "Rel Vert Wheel" (259)
	Button Labels (268):	"Button Left" (140), "Button Middle" (141), "Button Right" (142), "Button Wheel Up" (143), "Button Wheel Down" (144), "Button Horiz Wheel Left" (145), "Button Horiz Wheel Right" (146)
	Evdev Scrolling Distance (269):	1, 1, 1
	Evdev Middle Button Emulation (270):	0
	Evdev Middle Button Timeout (271):	50
	Evdev Third Button Emulation (272):	0
	Evdev Third Button Emulation Timeout (273):	1000
	Evdev Third Button Emulation Button (274):	3
	Evdev Third Button Emulation Threshold (275):	20
	Evdev Wheel Emulation (276):	0
	Evdev Wheel Emulation Axes (277):	0, 0, 4, 5
	Evdev Wheel Emulation Inertia (278):	10
	Evdev Wheel Emulation Timeout (279):	200
	Evdev Wheel Emulation Button (280):	4
	Evdev Drag Lock Buttons (281):	0

    $ xinput set-prop "ImPS/2 Generic Wheel Mouse" "Evdev Scrolling Distance" -1 1 1

Now the scroll direction is what I want in all applications.