Bug 61232

Summary: Allow ShadowBlur to do tiling when the context is scaled
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: Layout and RenderingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED FIXED    
Severity: Normal CC: dglazkov, mdelaney7, simon.fraser, webkit.review.bot
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch
mitz: review+, webkit.review.bot: commit-queue-
Archive of layout-test-results from ec2-cr-linux-03 none

Description Simon Fraser (smfr) 2011-05-20 19:09:33 PDT
If the context is scaled, we should try to keep on the tiling code path in ShadowBlur for performance, but we have do some device-pixel alignment when drawing.
Comment 1 Simon Fraser (smfr) 2011-05-20 19:13:48 PDT
Created attachment 94306 [details]
Patch
Comment 2 Simon Fraser (smfr) 2011-05-20 19:15:10 PDT
<rdar://problem/9063427>
Comment 3 WebKit Review Bot 2011-05-20 19:18:12 PDT
Attachment 94306 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCor..." exit_code: 1

Source/WebCore/platform/graphics/transforms/AffineTransform.h:136:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Total errors found: 1 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 Matthew Delaney 2011-05-20 19:38:29 PDT
Comment on attachment 94306 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=94306&action=review

> Source/WebCore/ChangeLog:6
> +        https://bugs.webkit.org/show_bug.cgi?id=61232

This "preservesAxisAlignment" allows scales and rotations of factors of 90 degrees. So, it avoids skews and non-axis-alignned resulting rotations.
Comment 5 Matthew Delaney 2011-05-20 19:43:55 PDT
Also, don't we want to have some new test cases (pixel-only tests, likely) that add a non-integral scale and/or x*90 degree rotation to make sure there are no pixel cracks?
Comment 6 Simon Fraser (smfr) 2011-05-20 20:07:18 PDT
Filed bug 61234 on possible pixel cracks with this patch.
Comment 7 Simon Fraser (smfr) 2011-05-20 20:11:13 PDT
Created attachment 94310 [details]
Patch
Comment 8 WebKit Review Bot 2011-05-20 20:13:24 PDT
Attachment 94310 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'LayoutTests/fast/box-shadow/scaled-box-sha..." exit_code: 1

Source/WebCore/platform/graphics/transforms/AffineTransform.h:136:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Total errors found: 1 in 5 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 9 WebKit Review Bot 2011-05-20 20:45:17 PDT
Comment on attachment 94310 [details]
Patch

Attachment 94310 [details] did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/8720506

New failing tests:
fast/box-shadow/scaled-box-shadow.html
Comment 10 WebKit Review Bot 2011-05-20 20:45:22 PDT
Created attachment 94314 [details]
Archive of layout-test-results from ec2-cr-linux-03

The attached test failures were seen while running run-webkit-tests on the chromium-ews.
Bot: ec2-cr-linux-03  Port: Chromium  Platform: Linux-2.6.35-28-virtual-x86_64-with-Ubuntu-10.10-maverick
Comment 11 Simon Fraser (smfr) 2011-05-20 21:21:04 PDT
http://trac.webkit.org/changeset/87009