Closed
Bug 1313170
Opened 8 years ago
Closed 8 years ago
helper_long_tap.html | Got a mouselongtap - got "touchend", expected "mouselongtap" when GPU process enabled
Categories
(Core :: Graphics, defect, P3)
Tracking
()
RESOLVED
FIXED
mozilla52
Tracking | Status | |
---|---|---|
firefox52 | --- | fixed |
People
(Reporter: rhunt, Assigned: kats)
References
Details
(Whiteboard: [gfx-noted])
Attachments
(2 files)
No description provided.
Assignee | ||
Comment 1•8 years ago
|
||
Try push with more logging: https://treeherder.mozilla.org/#/jobs?repo=try&revision=11ed136bc7ea1323261ba19156cf05fc1b9a1fb3
Assignee | ||
Updated•8 years ago
|
OS: Unspecified → Windows 8
Priority: -- → P3
Whiteboard: [gfx-noted]
Version: unspecified → Trunk
Assignee | ||
Comment 2•8 years ago
|
||
Also, this is the failure in question: https://treeherder.mozilla.org/#/jobs?repo=try&author=danderson@mozilla.com&selectedJob=29898382
Seems to be win8 only, and win8 jobs are hidden on central branches, so this technically doesn't need to block gpu process enabling. It might be a legit bug though.
Assignee | ||
Comment 3•8 years ago
|
||
From the log it looks like during the previous test (helper_bug1162771.html) touch injection fails for some reason. The log has this:
INFO - InjectTouchInput failure. GetLastError=87
87 appears to be the ERROR_INVALID_PARAMETER documented at [1]. I'm not sure what's going on there since the touch events seem to get through and that particular subtest passes.
Later after the helper_long_tap has occurred, there's another failure in the log:
INFO - InjectTouchInput failure. GetLastError=1460
Where 1460 is ERROR_TIMEOUT. Not sure what that's about either.
I think I'll try to repro this locally tomorrow, it might be easier to debug.
[1] https://msdn.microsoft.com/en-us/library/windows/desktop/hh802881(v=vs.85).aspx
Assignee | ||
Comment 5•8 years ago
|
||
I can reproduce this locally on my Win8 device even without the GPU process patches. The ERROR_INVALID_PARAMETER is because helper_bug1162771.html does a thing where it makes the element display:none, which results in different coordinates being used for the touchend than were for the touchstart. The windows injection code doesn't like this, presumably because it expects to get touchmove events in between.
The ERROR_TIMEOUT is the more serious problem though, because according to the docs [1] the injection mechanism requires a new input frame at least every 100ms. In our tests we sometimes wait longer than 100ms because we're waiting for a repaint or (in this case) a long-tap timeout, so we can't really satisfy that requirement.
I think maybe the best option here is to not use the Windows touch injection code and fall back to the fallback code we have that runs for platforms that don't support touch injection. I'll do a try push with that and see if it works.
[1] https://msdn.microsoft.com/en-us/library/windows/desktop/hh802881(v=vs.85).aspx
Assignee | ||
Comment 6•8 years ago
|
||
Assignee | ||
Comment 7•8 years ago
|
||
^ That's green. I'll add a new pref to force us into the fallback touch injection path and make sure it's set on the relevant tests.
Assignee | ||
Comment 8•8 years ago
|
||
New cleaned-up pushes with [1] and without [2] GPU process code
[1] https://treeherder.mozilla.org/#/jobs?repo=try&revision=d94d98a54e6289038b352290f6dfba3c63c69b59
[2] https://treeherder.mozilla.org/#/jobs?repo=try&revision=2f60ae748b81c8fc2a6b73a1ae1f817bd6774348
Assignee | ||
Comment 9•8 years ago
|
||
[1] above has failures, it looks like more tests need the magic pref.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=461c4ccbef1e3c803d233797374de3bb86f8a0db
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment 12•8 years ago
|
||
mozreview-review |
Comment on attachment 8805945 [details]
Bug 1313170 - Use the widget-level touch injection instead of the OS-level touch injection for some tests.
https://reviewboard.mozilla.org/r/89544/#review89020
Attachment #8805945 -
Flags: review?(dvander) → review+
Comment 13•8 years ago
|
||
mozreview-review |
Comment on attachment 8805946 [details]
Bug 1313170 - Ensure that the touchend events in helper_bug1162771 are sent with the correct coordinates.
https://reviewboard.mozilla.org/r/89546/#review89022
Attachment #8805946 -
Flags: review?(dvander) → review+
Comment 14•8 years ago
|
||
Pushed by kgupta@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/9b244c814861
Use the widget-level touch injection instead of the OS-level touch injection for some tests. r=dvander
https://hg.mozilla.org/integration/autoland/rev/c051b525c297
Ensure that the touchend events in helper_bug1162771 are sent with the correct coordinates. r=dvander
Comment 15•8 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/9b244c814861
https://hg.mozilla.org/mozilla-central/rev/c051b525c297
Status: NEW → RESOLVED
Closed: 8 years ago
status-firefox52:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla52
You need to log in
before you can comment on or make changes to this bug.
Description
•