-
-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
hit test issue: 2 absolute divs create an opaque region for mouse events #8759
Comments
/cc @mbrubeck |
The two positioned divs are layerized into the same layer, so |
Note that this is only a problem when the layer is on top of an iframe, because that causes the compositor to send the mouse event message to the wrong document. Perhaps if this happens, the script task could detect it and forward the message to the child document. |
…nner window Fixes servo#8759. This adds a slow path for cases where the compositor's layer-based hit testing is incorrect. To optimize for this case, we could instead replace the layer hit testing with display-list hit testing done in the paint task.
…nner window Fixes servo#8759. This adds a slow path for cases where the compositor's layer-based hit testing is incorrect. To optimize for this case, we could instead replace the layer hit testing with display-list hit testing done in the paint task.
…nner window Fixes servo#8759. This adds a slow path for cases where the compositor's layer-based hit testing is incorrect. To optimize for this case, we could instead replace the layer hit testing with display-list hit testing done in the paint task.
…nner window Fixes servo#8759. This adds a slow path for cases where the compositor's layer-based hit testing is incorrect. To optimize for this case, we could instead replace the layer hit testing with display-list hit testing done in the paint task.
…nner window Fixes servo#8759. This adds a slow path for cases where the compositor's layer-based hit testing is incorrect. To optimize for this case, we could instead replace the layer hit testing with display-list hit testing done in the paint task.
Add slow path for hit testing of iframe behind positioned content layer Fixes browser.html blocker #8759. r? @pcwalton This adds a slow path for cases where the compositor's layer-based hit testing is incorrect. If the script task discovers that a mouse event should have been dispatched to an iframe, it bounces the event back to the constellation to be forwarded to the correct pipeline. This isn't terribly slow (on the slow path, it adds one extra round-trip message between script and constellation), but if we want to optimize this better we could instead replace the compositor's layer hit testing with display list hit testing in the paint task. This would be a more complicated change that I think we should save for a follow-up. This only fixes mouse input for now. A basically-identical change will be needed for touch-screen input, whether we stick with this approach or switch to the paint task. <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8785) <!-- Reviewable:end -->
…nner window Fixes servo#8759. This adds a slow path for cases where the compositor's layer-based hit testing is incorrect. To optimize for this case, we could instead replace the layer hit testing with display-list hit testing done in the paint task.
Add slow path for hit testing of iframe behind positioned content layer Fixes browser.html blocker #8759. r? @pcwalton This adds a slow path for cases where the compositor's layer-based hit testing is incorrect. If the script task discovers that a mouse event should have been dispatched to an iframe, it bounces the event back to the constellation to be forwarded to the correct pipeline. This isn't terribly slow (on the slow path, it adds one extra round-trip message between script and constellation), but if we want to optimize this better we could instead replace the compositor's layer hit testing with display list hit testing in the paint task. This would be a more complicated change that I think we should save for a follow-up. This only fixes mouse input for now. A basically-identical change will be needed for touch-screen input, whether we stick with this approach or switch to the paint task. <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8785) <!-- Reviewable:end -->
The text was updated successfully, but these errors were encountered: