Closed
Bug 1057252
Opened 10 years ago
Closed 9 years ago
Slow scrolling due to very small deltaY on wheel events (we use deltaMode = 1 (lines), IE/Chrome use 0 (pixels))
Categories
(Core :: Widget: Win32, defect)
Tracking
()
RESOLVED
WONTFIX
People
(Reporter: sawrubh, Unassigned)
Details
STR:
* Open http://9gag.tv/p/a5y74W/barely-legal-pawn-breaking-bad-bryan-cranston-aaron-paul-julia-louis-dreyfus?ref=tcl
* Scroll the list of videos on the right.
* This happens on Tumblr as well. Open Tumblr.
* Login and go to Dashboard.
* Click Customize.
* Scroll in the left panel which allows you to edit themes.
What happens:
Very slow scrolling. It scrolls alright in Chrome.
Reporter | ||
Comment 1•10 years ago
|
||
Apparently fixed now.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → WORKSFORME
Reporter | ||
Comment 2•10 years ago
|
||
I see this issue again. Not sure if it's an issue of the browser or the website.
Status: RESOLVED → REOPENED
Resolution: WORKSFORME → ---
Comment 3•10 years ago
|
||
This is an issue in the script in jarvis-lib.<hash>.min.js in the code that starts:
function j(c) {
if (m.contentRatio < 1) {
(after un-blackboxing + prettifying the source in the debugger)
It looks like:
function j(c) {
if (m.contentRatio < 1) {
var d = c || window.event,
e = 'delta' + m.options.axis.toUpperCase(),
f = - (d[e] || d.detail || - 1 / 3 * d.wheelDelta) / 40;
m.contentPosition -= f * m.options.wheelSpeed,
d[e] ends up being deltaY, which is some small number on Firefox (3 or -3 in my case)
m.options.wheelSpeed is set to 40, so the division and wheelSpeed cancel each other out and we scroll by 3 or 4 pixels.
Chrome, on the other hand, seems to be using deltaY == 100 here.
The trick is that the wheel event per the w3c spec lets you define deltaY in 3 ways: by pixels, lines or pages. We use lines, so '3' means '3 lines of text' whereas chrome uses pixels, which explains the difference. The page should read event.deltaMode, too (seems to be correctly set in both Chrome, FF and IE) and judge based on that.
That being said... both IE and Chrome use pixels. I don't know why / under what circumstances we use lines. Is there any reason not to switch to px to be consistent? smaug, do you know?
Component: Untriaged → DOM: Events
Flags: needinfo?(bugs)
Product: Firefox → Core
Summary: Scrolls very slowly on 9gag.tv and Tumblr Settings page → Slow scrolling due to very small deltaY on wheel events
Updated•10 years ago
|
Summary: Slow scrolling due to very small deltaY on wheel events → Slow scrolling due to very small deltaY on wheel events (we use deltaMode = 1 (lines), IE/Chrome use 0 (pixels))
Comment 4•10 years ago
|
||
Because we don't actually have any accurate pixel information in this case.
We deal with line or page scrolling only in Windows widget code.
Component: DOM: Events → Widget: Win32
Flags: needinfo?(bugs)
Comment 5•9 years ago
|
||
(In reply to Olli Pettay [:smaug] from comment #4)
> Because we don't actually have any accurate pixel information in this case.
> We deal with line or page scrolling only in Windows widget code.
Based on that, this seems like a won't fix
Status: REOPENED → RESOLVED
Closed: 10 years ago → 9 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•