Metro widget code needs updating to maintain contract with APZ code

RESOLVED FIXED in mozilla34

Status

()

Core
Widget: WinRT
RESOLVED FIXED
3 years ago
3 years ago

People

(Reporter: kats, Assigned: kats)

Tracking

33 Branch
mozilla34
x86
Windows 8.1
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(3 attachments, 1 obsolete attachment)

Bug 1009073 made a bunch of changes in the APZ code to clean up how events flow around. As part of that widget-side code has to change as well. At the time I made the necessary changes to B2G in TabChild, but neglected to make the necessary changes to Metro. Without these changes input events are generally going to be misbehaving a lot.

I also want to do this so we can un-block the people working on pointer events in bug 1036985, as Metro seems to be the only platform they have access to.
Created attachment 8461902 [details] [diff] [review]
WIP v1
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #0)
> Bug 1009073 made a bunch of changes in the APZ code to clean up how events
> flow around.

Bug 1009733.
Oops, thanks!
Blocks: 1009733
No longer blocks: 1009073
Depends on: 1043644
Created attachment 8462251 [details] [diff] [review]
Part 1 - remove widgetlistener

Not sure if you want to review these changes or not...
Attachment #8462251 - Flags: review?(jmathies)
Created attachment 8462252 [details] [diff] [review]
Part 2 - The rewrite to deal with APZ input requirements
Attachment #8461902 - Attachment is obsolete: true
Attachment #8462252 - Flags: review?(jmathies)
Created attachment 8462253 [details] [diff] [review]
Part 3 - Fix the metro-equivalent of bug 1041451

To prevent out-of-order responses we need to flush responses in the long-tap handler. This required introducing a way to invoke MetroInput code from APZController.
Attachment #8462253 - Flags: review?(jmathies)

Updated

3 years ago
Attachment #8462251 - Flags: review?(jmathies) → review+

Comment 7

3 years ago
(In reply to Kartikaya Gupta (email:kats@mozilla.com) from comment #5)
> Created attachment 8462252 [details] [diff] [review]
> Part 2 - The rewrite to deal with APZ input requirements

This is going to take a little time to get through and test. I'm on pto today but will get to this over the weekend. Thanks for reworking this!

Comment 8

3 years ago
Comment on attachment 8462252 [details] [diff] [review]
Part 2 - The rewrite to deal with APZ input requirements

Generally looks correct, and some testing of touch input doesn't expose any major issues.


mochitest-metro appears to be broken at the moment - filed bug 1045727. So I can't run front end tests. R= all the same so we can get this work in.
Attachment #8462252 - Flags: review?(jmathies) → review+

Updated

3 years ago
Attachment #8462253 - Flags: review?(jmathies) → review+
I wasn't entirely sure if this was better to land on metro or m-i but I figured m-i was better because it didn't make sense to leave the old code lying around on central if it doesn't work with the new APZ code. It's also better to keep the metro tree as close to m-c as possible, so unless we do back-merges it's generally better to land on m-c first.

https://hg.mozilla.org/integration/mozilla-inbound/rev/a9bfd9765389
https://hg.mozilla.org/integration/mozilla-inbound/rev/ea78d99118f7
https://hg.mozilla.org/integration/mozilla-inbound/rev/22a756462d5d
https://hg.mozilla.org/mozilla-central/rev/a9bfd9765389
https://hg.mozilla.org/mozilla-central/rev/ea78d99118f7
https://hg.mozilla.org/mozilla-central/rev/22a756462d5d
Status: NEW → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
You need to log in before you can comment on or make changes to this bug.