Closed Bug 932792 Opened 11 years ago Closed 11 years ago

Drag scroll using the scroll bar results in jitter/shaky scroll

Categories

(Firefox for Metro Graveyard :: General, defect)

28 Branch
x86_64
Windows 8.1
defect
Not set
major

Tracking

(Not tracked)

RESOLVED FIXED
Firefox 28

People

(Reporter: majjisrinadh, Assigned: kats)

References

Details

(Whiteboard: [block28])

Attachments

(1 file, 1 obsolete file)

User Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:28.0) Gecko/20100101 Firefox/28.0 (Beta/Release) Build ID: 20131030030201 Steps to reproduce: Start Firefox in Metro mode and go to any webpage and scroll the page using scroll bar on the right hand side Actual results: The scroll is working but the movement is shaky, meaning while scrolling the page and the scroll bar are shaking with small amplitude and high frequency up and down. P.S. the scrolling with up/down keys and multi-touch gestures is smooth and fine Expected results: scrolling must have been smooth, just like in the desktop version of firefox
Severity: normal → major
OS: All → Windows 8.1
Hardware: All → x86_64
Keywords: 64bit
Whiteboard: [triage]
Blocks: 915723
No longer blocks: metrov1backlog
Summary: Scrolling using Scroll bar is Buggy → Drag scroll using the scroll bar suffers from jank
Testing on a surface pro, I also see the scroll thumb jumping around, emulating the jank in the page.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: 64bit
Whiteboard: [triage] → [block28]
I'll look into this.
Assignee: nobody → bugmail.mozilla
Initial logging indicates that apzc.js is sending us jumpy scroll coordinates in the. APZC is never requesting a repaint (which is expected, since I'm not doing touch-based scrolling), so that's not the cause of jumpiness. It appears to be emanating from somewhere in Gecko. I will dig further.
Actually it's not coming from gecko. It's coming from trying to unapply the APZC transform on the input that corresponds to dragging the scrollbar around.
Summary: Drag scroll using the scroll bar suffers from jank → Drag scroll using the scroll bar results in jitter/shaky scroll
Attached patch Treat scrollbars as chrome (obsolete) — Splinter Review
The scrollbars were getting treated as content, and so we were unapplying APZ transforms on the mouse events directed to them. As dragging the scrollbar around changes the scroll position and the transform in the APZ code, this could result in crazy hysteresis loops which resulted in the strange behaviour.
Attachment #832514 - Flags: review?(jmathies)
Comment on attachment 832514 [details] [diff] [review] Treat scrollbars as chrome >+ var onScrollbar = false; >+ for (var node = aEvent.originalTarget; node instanceof XULElement; node = node.parentNode) { Nit: Use 'let' instead of 'var' on both of these lines.
Attachment #832514 - Flags: review?(jmathies) → review+
Updated per review comment, carrying r+
Attachment #832514 - Attachment is obsolete: true
Attachment #832929 - Flags: review+
This should land on fx-team which is currently closed.
Keywords: checkin-needed
Keywords: checkin-needed
Whiteboard: [block28] → [block28][fixed-in-fx-team]
Status: NEW → RESOLVED
Closed: 11 years ago
Flags: in-testsuite?
Resolution: --- → FIXED
Whiteboard: [block28][fixed-in-fx-team] → [block28]
Target Milestone: --- → Firefox 28
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: