RESOLVED FIXED 101974
Boxes with rounded corners and thin borders are too slow to draw
https://bugs.webkit.org/show_bug.cgi?id=101974
Summary Boxes with rounded corners and thin borders are too slow to draw
Justin Novosad
Reported 2012-11-12 13:20:13 PST
Boxes with rounded corners and thin borders are too slow to draw
Attachments
Patch (26.57 KB, patch)
2012-11-13 07:14 PST, Justin Novosad
no flags
Patch for landing (36.60 KB, patch)
2012-11-13 13:19 PST, Justin Novosad
no flags
Patch for landing (35.45 KB, patch)
2012-11-14 07:15 PST, Justin Novosad
no flags
Patch for landing (36.76 KB, patch)
2012-11-14 10:13 PST, Justin Novosad
no flags
Patch for landing (36.50 KB, patch)
2012-11-14 10:47 PST, Justin Novosad
no flags
Simon Fraser (smfr)
Comment 1 2012-11-12 17:05:46 PST
Testcase?
Justin Novosad
Comment 2 2012-11-13 07:14:28 PST
Justin Novosad
Comment 3 2012-11-13 07:22:28 PST
The expected pixel results for the following layout tests will require rebaselining due to minor discrepancies along anti-aliased rounded corner edges: fast/borders/border-radius-wide-border-01.html fast/borders/borderRadiusInset01.html fast/forms/validation-message-appearance.html svg/custom/svg-fonts-in-html.html
WebKit Review Bot
Comment 4 2012-11-13 08:27:35 PST
Comment on attachment 173887 [details] Patch Attachment 173887 [details] did not pass chromium-ews (chromium-xvfb): Output: http://queues.webkit.org/results/14815638 New failing tests: fast/borders/border-radius-wide-border-05.html fast/forms/validation-message-appearance.html svg/custom/svg-fonts-in-html.html fast/borders/border-radius-wide-border-01.html fast/borders/borderRadiusInset01.html
Simon Fraser (smfr)
Comment 5 2012-11-13 08:52:49 PST
Comment on attachment 173887 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=173887&action=review > Source/WebCore/ChangeLog:9 > + With the current implementation RenderBox:: > + determineBackgroundBleedAvoidance() the slow path I think you're missing a 'uses' > Source/WebCore/ChangeLog:12 > + borders. This is because the BackgroundBleedShrinkBackground One space after periods. > Source/WebCore/ChangeLog:18 > + By using this approach rater than BackgroundBleedUseTransparencyLayer, rather > Source/WebCore/rendering/RenderBox.cpp:897 > +bool RenderBox::backgroundIsSingleOpaqueLayer() const Multiple sold color backgrounds would also be OK, no? > Source/WebCore/rendering/RenderBoxModelObject.cpp:703 > + adjustedRect.inflateY(-static_cast<LayoutUnit>(ceil(1 / transform.yScale()))); Whitespace at EOL? > Source/WebCore/rendering/RenderBoxModelObject.cpp:713 > + adjustedRect.inflateX(-static_cast<LayoutUnit>(ceil(1 / transform.xScale()))); We should probably provide a helper function for this shrinking. > LayoutTests/ChangeLog:12 > + * fast/borders/border-radius-wide-border-05.html: Added. Where's the pixel result? > LayoutTests/fast/borders/border-radius-wide-border-05.html:11 > + -moz-box-sizing: border-box; Remove.
Build Bot
Comment 6 2012-11-13 10:16:01 PST
Comment on attachment 173887 [details] Patch Attachment 173887 [details] did not pass mac-ews (mac): Output: http://queues.webkit.org/results/14809933 New failing tests: fast/borders/border-radius-wide-border-05.html
Justin Novosad
Comment 7 2012-11-13 10:21:17 PST
(In reply to comment #5) > Multiple sold color backgrounds would also be OK, no? > Almost. To do it right we'd need logic to optimize-out the bottom layers. Otherwise, if we just draw the multiple solid layers on top of each other, there will be color bleeding along anti-aliased edges.
Justin Novosad
Comment 8 2012-11-13 13:19:03 PST
Created attachment 173968 [details] Patch for landing
WebKit Review Bot
Comment 9 2012-11-13 18:56:55 PST
Comment on attachment 173968 [details] Patch for landing Rejecting attachment 173968 [details] from commit-queue. Failed to run "['/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch', '--status-host=queues.webkit.org', '-..." exit_code: 2 Last 500 characters of output: ucceeded at 1 with fuzz 3. patching file LayoutTests/fast/borders/border-radius-wide-border-05-expected.txt patching file LayoutTests/fast/borders/border-radius-wide-border-05.html patching file LayoutTests/platform/chromium/TestExpectations Hunk #1 FAILED at 3599. 1 out of 1 hunk FAILED -- saving rejects to file LayoutTests/platform/chromium/TestExpectations.rej Failed to run "[u'/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply', u'--force']" exit_code: 1 cwd: /mnt/git/webkit-commit-queue Full output: http://queues.webkit.org/results/14838054
Justin Novosad
Comment 10 2012-11-14 07:15:48 PST
Created attachment 174151 [details] Patch for landing
Justin Novosad
Comment 11 2012-11-14 10:12:24 PST
Comment on attachment 174151 [details] Patch for landing Forgot to "svn resolved TestExpectations". Must resubmit.
Justin Novosad
Comment 12 2012-11-14 10:13:43 PST
Created attachment 174189 [details] Patch for landing
WebKit Review Bot
Comment 13 2012-11-14 10:40:04 PST
Comment on attachment 174189 [details] Patch for landing Rejecting attachment 174189 [details] from commit-queue. Failed to run "['/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch', '--status-host=queues.webkit.org', '-..." exit_code: 2 Last 500 characters of output: um/third_party/angle --revision 1389 --non-interactive --force --accept theirs-conflict --ignore-externals' in '/mnt/git/webkit-commit-queue/Source/WebKit/chromium' 34>At revision 1389. ________ running '/usr/bin/python tools/clang/scripts/update.py --mac-only' in '/mnt/git/webkit-commit-queue/Source/WebKit/chromium' ________ running '/usr/bin/python gyp_webkit' in '/mnt/git/webkit-commit-queue/Source/WebKit/chromium' Updating webkit projects from gyp files... Total errors found: 0 in 1 files Full output: http://queues.webkit.org/results/14824840
Justin Novosad
Comment 14 2012-11-14 10:47:45 PST
Created attachment 174201 [details] Patch for landing
WebKit Review Bot
Comment 15 2012-11-14 11:12:35 PST
Comment on attachment 174201 [details] Patch for landing Clearing flags on attachment: 174201 Committed r134631: <http://trac.webkit.org/changeset/134631>
WebKit Review Bot
Comment 16 2012-11-14 11:12:40 PST
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.