RESOLVED FIXED 15564
HitTesting is incorrect for test-anchor: middle
https://bugs.webkit.org/show_bug.cgi?id=15564
Summary HitTesting is incorrect for test-anchor: middle
Adam Rofer
Reported 2007-10-19 09:54:59 PDT
When text-anchor="middle" occurs, this causes the glyphs to not be rendered that occur before the path (which is correct behavior). When this happens, however, the entire X and Y domain less than the fallen-off text is treated (with onMouseOver) as if the text were covering the entire area. This is not the case in other SVG viewers.
Attachments
Initial patch (6.56 KB, patch)
2007-11-25 03:14 PST, Nikolas Zimmermann
aroben: review+
DRT reduction (551 bytes, image/svg+xml)
2007-11-25 03:16 PST, Nikolas Zimmermann
no flags
Eric Seidel (no email)
Comment 1 2007-10-19 12:12:27 PDT
We'll need to build a DRT compatible test, but the attached reduction is great, thanks!
Nikolas Zimmermann
Comment 2 2007-10-19 13:50:21 PDT
Hi Adam, thanks a lot for the nice report. I'm aware of the bug, it's especially nicely visible in Web Inspector (the <textPath> x/y origin starts at 0x0, when text-anchor is not "start". The reduction looks excellent, I'm going to make a DRT compatible layout test out of it! Greetings, Niko
Nikolas Zimmermann
Comment 3 2007-11-25 03:14:48 PST
Created attachment 17503 [details] Initial patch Bug fixed, contains a DRT compatible reduction of Adams nice testcase!
Nikolas Zimmermann
Comment 4 2007-11-25 03:16:42 PST
Created attachment 17504 [details] DRT reduction
Adam Roben (:aroben)
Comment 5 2007-11-25 04:08:07 PST
Comment on attachment 17503 [details] Initial patch + it++; We normally use the prefix increment operator on iterators, for efficiency. + if (pathData) + return pathData->hidden; + + return false; This can just be return pathData && pathData->hidden; Make sure you land the layout test and results with it. r=me
Nikolas Zimmermann
Comment 6 2007-11-25 05:06:01 PST
Landed in r28015. Incorported all of Adams comments.
Note You need to log in before you can comment on or make changes to this bug.