codemirror / codemirror5

In-browser code editor (version 5, legacy)
http://codemirror.net/5/
MIT License
26.84k stars 4.97k forks source link

Scrolling with trackpad not smooth on Chromium-based browsers on Ubuntu #4730

Open xlambein opened 7 years ago

xlambein commented 7 years ago

Hello,

I've noticed a problem when scrolling on my laptop in Chromium-based browsers. It's hard to describe, but basically, when scrolling a document, the scroll bar will move slowly and kind-of "vibrates" back and forth, making it quite hard to actually scroll up or down. This does not happen when clicking on and dragging the scroll bar, or when using a scroll wheel on a mouse. I'm guessing this has something to do with horizontal scrolling messing things up?

I am on Ubuntu 17.04 with Unity. I had the problem with 16.10 too. I also tried on Firefox, but the issue only shows up on Chrome/Chromium. I don't know which version of CodeMirror causes this, I noticed the bug on the software Abricotine and on the online CodeMirror demos (e.g. https://codemirror.net/demo/complete.html).

Thanks for your help :)

marijnh commented 7 years ago

I'm not seeing this on Chrome 57 on Debian—but it may well be that this is dependent on the events generated by the trackpad driver, in which case it'd be tricky to reproduce on different hardware.

grg2rsr commented 7 years ago

Experiencing the same, Dell XPS 13 with Ubuntu 17.04. The bug is visible in the official demo, chromium 60.0.3112.113. Firefox 55.0.2 runs fine. @xlambein , do you by any chance have the same laptop (or same touchpad)?

xinput --list gives

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ ELAN Touchscreen                          id=10   [slave  pointer  (2)]
⎜   ↳ DLL0704:01 06CB:76AE Touchpad             id=12   [slave  pointer  (2)]
xlambein commented 7 years ago

Yup I have that one exactly.

grg2rsr commented 7 years ago

I can confirm that this is related to horizontal two finger scroll. Deactivating it via synclient HorizTwoFingerScroll=0 leads to smooth scrolling in the codemirror demo