Skip to content

Replace homemade ScrollHelper with standard ScrollViews to hold view items

Nate Graham requested to merge ngraham/elisa:remove-scrollhelper into release/20.12

We created the ScrollHelper component to fix scrolling with touchpads, which is quite terrible out of the box with QML's default flickables.

However this solution had some drawbacks:

  • It broke touch scrolling
  • It broke fast scrolling by holding down the shift key while scrolling
  • It essentially re-wrote scroll handling locally, which is fragile
  • It required a bunch of extra code to handle scrollbar visibility which introduced various minor visual bugs in a few places

In addition, this solution was not necessary since we can get the same result by putting views inside ScrollView components, which is a 100% supported and standard paradigm. Doing so preserves the nice touchpad scrolling we already have but fixes all of the above items automatically.

This MR has an intimidating diff, but looks much less scary if you turn off whitespace changes in the diff view:

Screenshot_20201111_135342

BUG: 417859 BUG: 427967 FIXED-IN: 20.12

Edited by Nate Graham

Merge request reports