Animation of scrolling tab strip finishes too sharp when scrolling to the beginning/end of tab stip

VERIFIED FIXED in Firefox 54

Status

()

Toolkit
XUL Widgets
VERIFIED FIXED
8 months ago
7 months ago

People

(Reporter: 684sigma, Assigned: masayuki)

Tracking

({regression})

53 Branch
mozilla55
regression
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox52 unaffected, firefox-esr52 unaffected, firefox53 wontfix, firefox54 verified, firefox55 verified)

Details

MozReview Requests

()

Submitter Diff Changes Open Issues Last Updated
Loading...
Error loading review requests:

Attachments

(1 attachment)

(Reporter)

Description

8 months ago
I have a problem with Firefox Beta 53. It doesn't happen in Firefox ESR 45
Sometimes animation of scrolling in tab strip finishes too sharp.
I noticed one specific scenario when it happens

1. Open many tabs so that some tabs are invisible, scroll tab strip to the beginning
2. Hover mouse over tab strip and quickly rotate mouse wheel down several times to scroll tab strip to the end

Result: Tab strip scrolls the the end too sharp
Expected: Animation should slow down in the end, like it happens when I triple-click on ">" button in tab strip
(Reporter)

Updated

8 months ago
Has STR: --- → yes
Keywords: regression

Comment 1

8 months ago
Build ID: 20170323030203
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0

Reproducible on Nightly 55.0a1, 54.0a1 and 53.0a1 on Windows 10 x 64.
Status: UNCONFIRMED → NEW
status-firefox52: --- → unaffected
status-firefox53: --- → affected
status-firefox54: --- → affected
status-firefox55: --- → affected
Ever confirmed: true

Updated

8 months ago
status-firefox53: affected → fix-optional
(Reporter)

Comment 2

8 months ago
The regression was made in two steps.

First step: normal smooth scrolling was changed to scrolling without animation
Mozregression-gui generated this regression range:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=75174a724d6516bb643710498862a44feeedde6d&tochange=f4f6a59b53106e9ff550b18e374a401ecea78e2a
->
1316505 – Tabbar scrolls too fast with wheel supporting high resolution scroll on Windows
https://bugzilla.mozilla.org/show_bug.cgi?id=1316505

Second step: animation was added again, but it is now not working correctly (see Comment #0)
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=4d1a2b1de7f53acaa8cbd41a727efd4637e788a7&tochange=9fc13b45970ab17567ff53ff4f34a6a605852707
->
1320609 – tabbar should scroll smoothly even when wheel device doesn't support high resolution scroll
https://bugzilla.mozilla.org/show_bug.cgi?id=1320609
Blocks: 1320609, 1316505
Has Regression Range: --- → yes
Component: Tabbed Browser → XUL Widgets
Flags: needinfo?(masayuki)
Product: Firefox → Toolkit
https://treeherder.mozilla.org/#/jobs?repo=try&revision=5adc6aa932434d517ed99ac6d3399a667eee00dc
https://treeherder.mozilla.org/#/jobs?repo=try&revision=58973053a7c1f5e8c6d7b4755bad8dd5b48eee98
(Assignee)

Updated

7 months ago
Assignee: nobody → masayuki
Status: NEW → ASSIGNED
Flags: needinfo?(masayuki)
Comment hidden (mozreview-request)

Comment 6

7 months ago
mozreview-review
Comment on attachment 8856964 [details]
Bug 1349828 Smooth scroller of <scrollbox> should not try to scroll to outside of the range

https://reviewboard.mozilla.org/r/128760/#review132008
Attachment #8856964 - Flags: review?(mstange) → review+

Comment 7

7 months ago
Pushed by masayuki@d-toybox.com:
https://hg.mozilla.org/integration/autoland/rev/b01f44c896b2
Smooth scroller of <scrollbox> should not try to scroll to outside of the range r=mstange

Comment 8

7 months ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/b01f44c896b2
Status: ASSIGNED → RESOLVED
Last Resolved: 7 months ago
status-firefox55: affected → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla55
Please request Aurora approval on this when you're comfortable doing so.
status-firefox53: fix-optional → wontfix
status-firefox-esr52: --- → unaffected
Flags: needinfo?(masayuki)
Reporter, could you check if this bug is actually fixed on Nightly?
https://www.mozilla.org/en-US/firefox/channel/desktop/
Flags: needinfo?(684sigma)
(Reporter)

Comment 11

7 months ago
User Agent 	Mozilla/5.0 (Windows NT 6.1; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0
Nightly 55 (2017-04-14)

This bug is fixed
Flags: needinfo?(684sigma)
Comment on attachment 8856964 [details]
Bug 1349828 Smooth scroller of <scrollbox> should not try to scroll to outside of the range

Thank you for your report and confirmation of the fix!

Approval Request Comment
[Feature/Bug causing the regression]:
For Windows and Linux users, looks like this is a regression of bug 1316505 and bug 1320609. For most (not using 3rd party's mouse) Mac users, this is a long standing bug.

[User impact if declined]:
Scroll tab bar, XUL scrollable elements with mouse wheel (or swipe of touchpad) may cause too fast scroll even when it reaches the end soon. (No problem for operation, just a bug of look and feel.)

[Is this code covered by automated tests?]:
No because it's impossible to test the scroll speed down when scrolled area will reach its end soon.

[Has the fix been verified in Nightly?]:
Yes.

[Needs manual test from QE? If yes, steps to reproduce]:
Yes.

1. Open a lot of tabs (it's better to open different favicon pages for easier to check scroll speed by your eyes) to scroll tabs (easier to test this with narrower window).
2. Turn mouse wheel much fast on tab bar to scroll tabs to the end.

Then, scroll speed should be slower down when it reaches the end of its left-most or right-most tab.

If you use some pointing devices which support high resolution scrolling, e.g., trackpad of MacBook, expensive mice of Logitech, it may be difficult to see the difference of the behavior between 53 and Nightly.

[List of other uplifts needed for the feature/fix]:
No.

[Is the change risky?]:
No.

[Why is the change risky/not risky?]:
The cause of this bug is, <scrollbox>'s smooth scroller stores scroll destination everywhere. I.e., it may store scroll destination as outside of actual scrollable range.  This patch clamps the destination into scrollable range.  Therefore, the scroll speed becomes slow down when it reaches the end soon. (I.e., this patch doesn't touch complicated animation logic.)

[String changes made/needed]:
No.
Flags: needinfo?(masayuki)
Attachment #8856964 - Flags: approval-mozilla-aurora?
Comment on attachment 8856964 [details]
Bug 1349828 Smooth scroller of <scrollbox> should not try to scroll to outside of the range

Fix an animation of scrolling tab issue and was verified. Aurora54+.
Attachment #8856964 - Flags: approval-mozilla-aurora? → approval-mozilla-aurora+

Comment 14

7 months ago
https://hg.mozilla.org/releases/mozilla-aurora/rev/9ac3ed4401b5
status-firefox54: affected → fixed
Flags: qe-verify+
Verified as fixed on Firefox 54 beta 4 and latest Nightly 55.0a1 under Win 10 64-bit, Mac OS X 10.11 and Ubuntu 16.04 64-bit.
The issue was most visible on Windows.
Status: RESOLVED → VERIFIED
status-firefox54: fixed → verified
status-firefox55: fixed → verified
Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.