Open Bug 1399582 Opened 7 years ago Updated 2 years ago

Make first touch-drag of scroll thumb of unlayerized scroll frame async

Categories

(Core :: Panning and Zooming, enhancement, P3)

enhancement

Tracking

()

Tracking Status
firefox55 --- unaffected
firefox56 --- unaffected
firefox57 --- fix-optional

People

(Reporter: botond, Unassigned)

References

Details

(Whiteboard: [gfx-noted])

In bug 1367765, we added async touch-dragging of scrollbar thumbs.

There is one case I did not implement there: the first drag on the thumb of an unlayerized scroll frame will still go through the main thread. (Subsequent drags will be async as the first drag will trigger layerization.)

More specifically, this affects scroll frames where the thumb isn't layerized, either (the thumb can be layerized without the scrolled contents being layerized). In such a case, we don't even get into the codepath that converts the touch events to mouse events, and so, even though the main thread will try to confirm the drag block, there will be no drag block to confirm.

I'm not sure if this is worth the effort to fix, but I'm filing a bug to track it in any case.
(Whoops. Few words missing from the description there.)
Summary: Make first touch-drag of scroll thumb of unlayerized → Make first touch-drag of scroll thumb of unlayerized scroll frame async

Is this issue still valid? Can you provide a test case to verify it for the touchscreen related implemented at the moment?

Thank you.

Flags: needinfo?(botond)

The issue is still valid. However, it's probably not very high priority. It only affects a (likely small) subset of pages on Windows or Linux touchscreen devices, and the only user-visible effect is a slight delay when starting to touch-drag a scrollbar for the first time, and even that is only likely to be noticeable if the system is under heavy load.

There was a page we used for testing scrollbar dragging that simulated a heavy CPU load by running JS code in a busy loop; I can't find it at the moment, but a testcase for this would be a simple modification of that.

(In reply to Botond Ballo [:botond] from comment #3)

There was a page we used for testing scrollbar dragging that simulated a heavy CPU load by running JS code in a busy loop

It may have been http://people.mozilla.org/~bgirard/scroll_no_paint.html, which is no longer available due to people.m.o being taken down. Sigh...

Flags: needinfo?(botond)
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.