RESOLVED FIXED Bug 177953
RenderSVGRoot should check the renderers inside its visualOverflowRect for hit testing if the overflow is visible
https://bugs.webkit.org/show_bug.cgi?id=177953
Summary RenderSVGRoot should check the renderers inside its visualOverflowRect for hi...
Said Abou-Hallawa
Reported 2017-10-05 11:09:42 PDT
Created attachment 322862 [details] test case 1. Open the attached test case. 2. Click on the green rectangle. Result: no alert messages. Expected: an alert message comes up when clicking the green rectangle. NOTES: The green rectangle is an SVGRectElement inside an SVGSVGElement. The SVGRectElement positioned outside the rectangle of the root element. The SVGRectElement is drawn only because the overflow of the SVGSVGElement is set to be visible. Since the SVGRectElement is drawn, it should be accessible through elementFromPoint() and the hit testing.
Attachments
test case (293 bytes, text/html)
2017-10-05 11:09 PDT, Said Abou-Hallawa
no flags
Patch (4.27 KB, patch)
2017-10-05 11:26 PDT, Said Abou-Hallawa
no flags
Patch (4.30 KB, patch)
2017-10-05 11:39 PDT, Said Abou-Hallawa
no flags
Patch (5.10 KB, patch)
2017-10-05 14:25 PDT, Said Abou-Hallawa
no flags
Said Abou-Hallawa
Comment 1 2017-10-05 11:26:05 PDT
Said Abou-Hallawa
Comment 2 2017-10-05 11:28:11 PDT
Said Abou-Hallawa
Comment 3 2017-10-05 11:39:13 PDT
Simon Fraser (smfr)
Comment 4 2017-10-05 13:03:14 PDT
Comment on attachment 322871 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=322871&action=review > Source/WebCore/ChangeLog:5 > + https://bugs.webkit.org/show_bug.cgi?id=177953 > + Should be a link to the radar here. > Source/WebCore/ChangeLog:13 > + If an SVGElement is positioned outside the rectangle of the root element, > + it can still be drawn if the root element has "overflow: visible" applied. > + But since SVGElement can be drawn in this case, it should be accessible > + through nodeAtPoint() which is used for hit testing. Does this do the right thing if another HTML element overlaps the visual overflow and has higher z-index?
Said Abou-Hallawa
Comment 5 2017-10-05 14:25:32 PDT
Said Abou-Hallawa
Comment 6 2017-10-05 14:26:42 PDT
Comment on attachment 322871 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=322871&action=review >> Source/WebCore/ChangeLog:13 >> + through nodeAtPoint() which is used for hit testing. > > Does this do the right thing if another HTML element overlaps the visual overflow and has higher z-index? Yes it does. I includes this case in the new layout test which is attached to this patch.
WebKit Commit Bot
Comment 7 2017-10-05 14:54:19 PDT
Comment on attachment 322918 [details] Patch Clearing flags on attachment: 322918 Committed r222934: <http://trac.webkit.org/changeset/222934>
WebKit Commit Bot
Comment 8 2017-10-05 14:54:21 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.