Closed Bug 1593121 Opened 5 years ago Closed 3 years ago

Fling with overscroll doesn't ignore initial acceleration

Categories

(Core :: Panning and Zooming, defect, P5)

72 Branch
defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: sawyerbergeron, Unassigned)

References

(Blocks 2 open bugs)

Details

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:71.0) Gecko/20100101 Firefox/71.0

Steps to reproduce:

Initially demonstrated on Wayland (Linux)

  1. Have GTK supported fling enabled (apz.gtk.kinetic_scroll.enabled)
  2. Enable apz overscroll (apz.overscroll.enabled)
  3. Do a fast overscroll gesture (a "flick" to try to pull page past end of scrollview)

Actual results:

Fling acceleration is applied, resulting in an odd jump rather than a smooth animation

Expected results:

Fling acceleration should be ignored so overscroll animates smoothly back to rest position

apz.overscroll.enabled was never a supported configuration on desktop :)

Oh, whoops. Fair enough. Any plans for support in the future for this/an analogous feature?

(In reply to Sawyer Bergeron from comment #2)

Fair enough. Any plans for support in the future for this/an analogous feature?

There are plans to support it on Mac, to match the platform behaviour (bug 1124108).

For Linux, I would accept patches that improve the behaviour with apz.overscroll.enabled=true (provided they don't complicate the code too much), but I have no plans to work on them myself. (That could change if other major browsers or prominent GTK apps start having an overscroll effect on Linux. The general underlying principle is to try to have Firefox behave like other apps on a given platform.)

Last I looked into it (when following kinetic scrolling) I think I saw the code for it mostly just contained in APZ rather than platform code, so a fix for this may come for free with any fix on mac. Thanks for the info.

Priority: -- → P5

To clarify, the acceleration referred to in this bug is the "fling curve" (from bug 1091049) and not what we usually refer to as "fling acceleration" - the latter is only applied to repeated flings.

The fling curve experience was initially intended for Firefox OS. The code is not used on Android or macOS; on Android we use AndroidVelocityTracker instead, and macOS uses momentum scroll events for flings.

I think it would be reasonable to just remove the fling curve code.

Status: UNCONFIRMED → NEW
Ever confirmed: true

As far as I can tell, this behavior no longer occurs as I originally remember (I can't notice any scroll jump during overscroll on release).

If this is still known to be an issue feel free to reopen it

Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.