Summary: When invoking the Dictionary pop-up panel on a word inside an IFRAME that is scrolled, the pop-up panel is invoked instead on a different word in the frame (the point targeted is offset from the mouse pointer by the scroll offset of the frame). Steps to reproduce: 1) Open the attached test case 2) Click the inner frame's down scroll arrow once 3) Move the mouse pointer over "laoreet" inside the inner frame 4) Press Command-Control-D Expected result: The Dictionary pop-up panel should appear over "laoreet". Actual result: The pop-up panel appears over "vehicula".
Created attachment 7618 [details] Test case I am going to attach a patch
As many editing/accessibility bugs, this has now become a native text field regression, marking as such.
Created attachment 7619 [details] Patch, including manual test
I think there is a similar problem in -[WebCoreFrameBridge _visiblePositionForPoint] (the final coordinates passed to positionForCoordinates() are wrong). I will try to come up with a test case for that.
Comment on attachment 7619 [details] Patch, including manual test Looks great. r=me.