Closed Bug 1067130 Opened 10 years ago Closed 10 years ago

Overhaul mouse target finding, hit testing, and getObjectsUnderPoint

Categories

(Firefox Graveyard :: Shumway, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: till, Assigned: till)

References

()

Details

These three types of checking if a point intersects with one or more display objects share most requirements. The patch in PR #1711 combines them into one mechanism.

Before, they did share quite a bit of code, but far less then they do now. Additionally, the patch should speed things up quite considerably. That's particularly true for mouse target finding: before, we collected all potential candidates in a list and then did additional work to prune that list until our real target remained. Now, we do hit testing exactly until we find the target and immediately stop comparing. Things like `_mouseChildren = false` complicate this, but are handled.

Tobias, it'd be great if you could do a detailed review of this. If anything is unclear or unexplained, I should add more documentation. I think the various steps and corner cases are fairly well documented, but then I wouldn't really know, having stared at this for three days now.
Flags: needinfo?(schneider)
Review ping. I'd really like to get this landed.
Fixed by 9135783d0730ac81ae1cebe5599fecd11f55a2e3[1], with 06da940c748d6a3d2964b181995fa8dabe2c15e6[2] as a follow-up, because I'm too stupid to rebase properly and update patches correctly.


[1] https://github.com/tschneidereit/shumway/commit/9135783d0730ac81ae1cebe5599fecd11f55a2e3
[2] https://github.com/mozilla/shumway/commit/06da940c748d6a3d2964b181995fa8dabe2c15e6
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Flags: needinfo?(schneider)
Resolution: --- → FIXED
Test at https://github.com/mozilla/shumway/pull/1728 failing master -- reverted
Do we need to follow up since test is failing for bundled/iframe Shumway?
Flags: needinfo?(till)
Yeah, no idea what that was about. Test is passing reliably now, so I re-landed it: https://github.com/mozilla/shumway/pull/1745
Flags: needinfo?(till)
Product: Firefox → Firefox Graveyard
You need to log in before you can comment on or make changes to this bug.