Closed Bug 1177651 Opened 9 years ago Closed 9 years ago

test_moz_mouse_pixel_scroll_event.html fails with APZ enabled

Categories

(Core :: Panning and Zooming, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla42
Tracking Status
firefox42 --- fixed

People

(Reporter: kats, Assigned: kats)

References

Details

Attachments

(3 files, 4 obsolete files)

test_moz_mouse_pixel_scroll_event.html (in m-e10s-1) fails with APZ enabled on Linux. I was able to reproduce locally and debug using rr. The first problem turned out to be that the MozMousePixelScroll event that the test waits for becomes asynchronous with APZ enabled, and so the test needs to be updated to yield after synthesizing the wheel event.

Even with that fixed though there appears to be a race somewhere (which I *can't* reproduce locally) that causes some of the test assertions to fail on try.
Attached patch Patch (obsolete) — Splinter Review
This fixes the issue I identified above, but the test isn't fully green yet.
Doing a preventDefault on a MozMousePixelScroll event is supposed to cancel the scrolling, so APZ needs to wait for the response, and therefore layout needs to put areas covered by these events in the dispatch-to-content region.
We may or may not need this also. It was one of my earlier attempts at fixing this problem (before I figured out part 2 and the dependent bug).

I did a try push without this patch at https://treeherder.mozilla.org/#/jobs?repo=try&revision=5b0b2ea9d345, if that's green then we shouldn't need this.
The test is still failing but with a lower frequency it appears. I did another push with the part 3 patch at https://treeherder.mozilla.org/#/jobs?repo=try&revision=a6f1df7f8cc5, but I also discovered another potential problem - the AddEventListener call in the test doesn't trigger a new layers transaction, so the event regions on the APZ side are stale. We might need to trigger a layout flush of some sort if an APZ-aware listener is added or removed.
Attachment #8626960 - Attachment description: Part 3 WIP → Part 3 - Extend content response timeout to deal with the test running slowly in automation
Attachment #8626960 - Attachment is obsolete: true
Attachment #8627260 - Flags: review?(dvander)
Attachment #8627257 - Flags: review?(dvander) → review+
Attachment #8627258 - Flags: review?(dvander) → review+
Attachment #8627260 - Flags: review?(dvander) → review+
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #6)
> The test is still failing but with a lower frequency it appears. I did
> another push with the part 3 patch at
> https://treeherder.mozilla.org/#/jobs?repo=try&revision=a6f1df7f8cc5, but I
> also discovered another potential problem - the AddEventListener call in the
> test doesn't trigger a new layers transaction, so the event regions on the
> APZ side are stale. We might need to trigger a layout flush of some sort if
> an APZ-aware listener is added or removed.

Yuck. That could explain why other tests are intermittently failing.
(In reply to David Anderson [:dvander] from comment #10)
> Yuck. That could explain why other tests are intermittently failing.

Possibly, yeah. I filed bug 1178743 for it.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: