WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
120236
[CSS Shapes] Winding rule polygon issues
https://bugs.webkit.org/show_bug.cgi?id=120236
Summary
[CSS Shapes] Winding rule polygon issues
Alexandru Chiculita
Reported
2013-08-23 14:30:25 PDT
Winding rules are not supported correctly for some edge cases: Here is an example of a polygon that will not work correctly. polygon(321.67px 39.00px,244.33px 348.47px,62.67px 268.47px,383.33px 200.00px,59.67px 156.53px) However, a slightly different one will work: polygon(321.67px 39.00px,244.33px 348.47px,62.67px 268.47px,383.33px 202.00px,59.67px 156.53px)
Attachments
shape image
(56.10 KB, image/jpeg)
2013-08-23 14:33 PDT
,
Alexandru Chiculita
no flags
Details
Patch
(16.79 KB, patch)
2013-09-12 15:46 PDT
,
Hans Muller
no flags
Details
Formatted Diff
Diff
Patch
(19.20 KB, patch)
2013-09-13 07:35 PDT
,
Hans Muller
krit
: review+
Details
Formatted Diff
Diff
Patch
(19.20 KB, patch)
2013-09-16 08:49 PDT
,
Hans Muller
no flags
Details
Formatted Diff
Diff
Show Obsolete
(2)
View All
Add attachment
proposed patch, testcase, etc.
Alexandru Chiculita
Comment 1
2013-08-23 14:33:08 PDT
Created
attachment 209513
[details]
shape image
Hans Muller
Comment 2
2013-09-12 15:46:48 PDT
Created
attachment 211484
[details]
Patch
Hans Muller
Comment 3
2013-09-13 07:35:16 PDT
Created
attachment 211550
[details]
Patch This patch corrects some of the problems with shape-inside and self-intersecting polygons and eliminates the layout flashing behavior that prompted the original bug report. The FloatPolygon::contains() method now respoects the polygon's fillRule and the PolygonShape code used to find shape-inside intervals for the top and bottom of a line now also handles fillRule correctly.
Dirk Schulze
Comment 4
2013-09-16 08:37:04 PDT
Comment on
attachment 211550
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=211550&action=review
r=me
> Source/WebCore/platform/graphics/FloatPolygon.cpp:199 > + return (fillRule() == RULE_NONZERO) ? containsNonZero(point) : containsEvenOdd(point);
The parentheses seem unnecessary.
Hans Muller
Comment 5
2013-09-16 08:49:33 PDT
Created
attachment 211793
[details]
Patch Made the suggested change.
WebKit Commit Bot
Comment 6
2013-09-16 09:15:03 PDT
Comment on
attachment 211793
[details]
Patch Clearing flags on attachment: 211793 Committed
r155865
: <
http://trac.webkit.org/changeset/155865
>
WebKit Commit Bot
Comment 7
2013-09-16 09:15:05 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.
Top of Page
Format For Printing
XML
Clone This Bug