[CSS Filters] Filters should render using sRGB until the specification says how it...
authorachicu@adobe.com <achicu@adobe.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 28 Aug 2012 21:02:13 +0000 (21:02 +0000)
committerachicu@adobe.com <achicu@adobe.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 28 Aug 2012 21:02:13 +0000 (21:02 +0000)
commitf7498ad600c833c8b1aee018695aff750fab5494
tree42c40507fb4e90c15527b0e50725387ac3c7d4ae
parentba760033085b34b68ce3674bde9f43a10e80004a
[CSS Filters] Filters should render using sRGB until the specification says how it works
https://bugs.webkit.org/show_bug.cgi?id=94372

Reviewed by Dirk Schulze.

Source/WebCore:

The short-hand version of the CSS Filters should render using sRGB until a CSS property is added
to allow choosing the color space to be used when computing the filters.
For now I've just made all the CSS filters use sRGB by defualt. Note that this change has no effect on SVG filters.

Test: css3/filters/null-effect-check.html

* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::build):

LayoutTests:

Added test to check that blur(0) grayscale(0) is the same as grayscale(0) blur(0).
Also rebaselined expected results on Safari Mac, Chromium Mac/Linux.

* css3/filters/filter-change-repaint-composited-expected.png:
* css3/filters/filter-change-repaint-expected.png:
* css3/filters/filter-repaint-blur-expected.png:
* css3/filters/filter-repaint-child-layers-expected.png:
* css3/filters/filter-repaint-composited-fallback-crash-expected.png:
* css3/filters/filter-repaint-composited-fallback-expected.png:
* css3/filters/filter-repaint-sepia-expected.png:
* css3/filters/filter-repaint-shadow-clipped-expected.png:
* css3/filters/filter-repaint-shadow-expected.png:
* css3/filters/filter-repaint-shadow-rotated-expected.png:
* css3/filters/null-effect-check-expected.html: Added.
* css3/filters/null-effect-check.html: Added.
* css3/filters/remove-filter-rendering-expected.png:
* platform/chromium-linux/css3/filters/crash-hw-sw-switch-expected.png:
* platform/chromium-linux/css3/filters/custom/custom-filter-shader-cache-expected.png:
* platform/chromium-linux/css3/filters/custom/effect-custom-combined-missing-expected.png:
* platform/chromium-linux/css3/filters/custom/effect-custom-expected.png:
* platform/chromium-linux/css3/filters/custom/filter-repaint-custom-clipped-expected.png:
* platform/chromium-linux/css3/filters/custom/filter-repaint-custom-expected.png:
* platform/chromium-linux/css3/filters/custom/filter-repaint-custom-rotated-expected.png:
* platform/chromium-linux/css3/filters/effect-brightness-clamping-expected.png:
* platform/chromium-linux/css3/filters/effect-brightness-expected.png:
* platform/chromium-linux/css3/filters/filter-empty-element-crash-expected.png:
* platform/chromium-mac/css3/filters/add-filter-rendering-expected.png:
* platform/chromium-mac/css3/filters/crash-filter-change-expected.png:
* platform/chromium-mac/css3/filters/crash-hw-sw-switch-expected.png:
* platform/chromium-mac/css3/filters/custom/custom-filter-shader-cache-expected.png:
* platform/chromium-mac/css3/filters/custom/effect-color-check-expected.png:
* platform/chromium-mac/css3/filters/custom/effect-custom-combined-missing-expected.png:
* platform/chromium-mac/css3/filters/custom/effect-custom-expected.png:
* platform/chromium-mac/css3/filters/custom/filter-repaint-custom-clipped-expected.png:
* platform/chromium-mac/css3/filters/custom/filter-repaint-custom-expected.png:
* platform/chromium-mac/css3/filters/custom/filter-repaint-custom-rotated-expected.png:
* platform/chromium-mac/css3/filters/effect-blur-expected.png:
* platform/chromium-mac/css3/filters/effect-brightness-clamping-expected.png:
* platform/chromium-mac/css3/filters/effect-brightness-expected.png:
* platform/chromium-mac/css3/filters/effect-combined-expected.png:
* platform/chromium-mac/css3/filters/effect-contrast-expected.png:
* platform/chromium-mac/css3/filters/effect-drop-shadow-expected.png:
* platform/chromium-mac/css3/filters/effect-grayscale-expected.png:
* platform/chromium-mac/css3/filters/effect-hue-rotate-expected.png:
* platform/chromium-mac/css3/filters/effect-invert-expected.png:
* platform/chromium-mac/css3/filters/effect-opacity-expected.png:
* platform/chromium-mac/css3/filters/effect-reference-expected.png:
* platform/chromium-mac/css3/filters/effect-reference-external-expected.png:
* platform/chromium-mac/css3/filters/effect-reference-hw-expected.png:
* platform/chromium-mac/css3/filters/effect-reference-ordering-expected.png:
* platform/chromium-mac/css3/filters/effect-saturate-expected.png:
* platform/chromium-mac/css3/filters/effect-sepia-expected.png:
* platform/chromium-mac/css3/filters/filter-repaint-blur-expected.png: Added.
* platform/chromium-mac/css3/filters/filter-repaint-blur-expected.txt: Added.
* platform/chromium-mac/css3/filters/filter-repaint-child-layers-expected.png: Added.
* platform/chromium-mac/css3/filters/filter-repaint-child-layers-expected.txt: Added.
* platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-crash-expected.png: Added.
* platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-crash-expected.txt: Added.
* platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-expected.png: Added.
* platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-expected.txt: Added.
* platform/chromium-mac/css3/filters/filter-repaint-expected.png:
* platform/chromium-mac/css3/filters/filter-repaint-sepia-expected.png: Copied from LayoutTests/platform/chromium-mac/css3/filters/multiple-filters-invalidation-expected.png.
* platform/chromium-mac/css3/filters/filter-repaint-sepia-expected.txt: Added.
* platform/chromium-mac/css3/filters/filter-repaint-shadow-clipped-expected.png: Copied from LayoutTests/platform/chromium-mac/css3/filters/custom/filter-repaint-custom-rotated-expected.png.
* platform/chromium-mac/css3/filters/filter-repaint-shadow-clipped-expected.txt: Added.
* platform/chromium-mac/css3/filters/filter-repaint-shadow-expected.png: Added.
* platform/chromium-mac/css3/filters/filter-repaint-shadow-expected.txt: Added.
* platform/chromium-mac/css3/filters/filter-repaint-shadow-rotated-expected.png: Copied from LayoutTests/platform/chromium-mac/css3/filters/custom/filter-repaint-custom-rotated-expected.png.
* platform/chromium-mac/css3/filters/filter-repaint-shadow-rotated-expected.txt: Added.
* platform/chromium-mac/css3/filters/filtered-inline-expected.png:
* platform/chromium-mac/css3/filters/multiple-filters-invalidation-expected.png:
* platform/chromium-mac/css3/filters/nested-filters-expected.png:
* platform/chromium-mac/css3/filters/regions-expanding-expected.png:
* platform/chromium-mac/css3/filters/simple-filter-rendering-expected.png:
* platform/chromium-win/css3/filters/add-filter-rendering-expected.png:
* platform/chromium-win/css3/filters/crash-filter-change-expected.png:
* platform/chromium-win/css3/filters/custom/effect-color-check-expected.png:
* platform/chromium-win/css3/filters/effect-blur-expected.png:
* platform/chromium-win/css3/filters/effect-combined-expected.png:
* platform/chromium-win/css3/filters/effect-contrast-expected.png:
* platform/chromium-win/css3/filters/effect-drop-shadow-expected.png:
* platform/chromium-win/css3/filters/effect-grayscale-expected.png:
* platform/chromium-win/css3/filters/effect-hue-rotate-expected.png:
* platform/chromium-win/css3/filters/effect-invert-expected.png:
* platform/chromium-win/css3/filters/effect-opacity-expected.png:
* platform/chromium-win/css3/filters/effect-reference-expected.png:
* platform/chromium-win/css3/filters/effect-reference-external-expected.png:
* platform/chromium-win/css3/filters/effect-reference-hw-expected.png:
* platform/chromium-win/css3/filters/effect-reference-ordering-expected.png:
* platform/chromium-win/css3/filters/effect-saturate-expected.png:
* platform/chromium-win/css3/filters/effect-sepia-expected.png:
* platform/chromium-win/css3/filters/filter-repaint-expected.png:
* platform/chromium-win/css3/filters/filtered-inline-expected.png:
* platform/chromium-win/css3/filters/multiple-filters-invalidation-expected.png:
* platform/chromium-win/css3/filters/nested-filters-expected.png:
* platform/chromium-win/css3/filters/regions-expanding-expected.png:
* platform/chromium-win/css3/filters/simple-filter-rendering-expected.png:
* platform/chromium/TestExpectations: css3/filters directory needs rebaseline on Windows.
* platform/chromium/css3/filters/blur-filter-page-scroll-expected.png:
* platform/chromium/css3/filters/blur-filter-page-scroll-parents-expected.png:
* platform/chromium/css3/filters/blur-filter-page-scroll-self-expected.png:
* platform/mac/TestExpectations: Unskipped old failing tests.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@126927 268f45cc-cd09-0410-ab3c-d52691b4dbfc
101 files changed:
LayoutTests/ChangeLog
LayoutTests/css3/filters/filter-change-repaint-composited-expected.png
LayoutTests/css3/filters/filter-change-repaint-expected.png
LayoutTests/css3/filters/filter-repaint-blur-expected.png
LayoutTests/css3/filters/filter-repaint-child-layers-expected.png
LayoutTests/css3/filters/filter-repaint-composited-fallback-crash-expected.png
LayoutTests/css3/filters/filter-repaint-composited-fallback-expected.png
LayoutTests/css3/filters/filter-repaint-sepia-expected.png
LayoutTests/css3/filters/filter-repaint-shadow-clipped-expected.png
LayoutTests/css3/filters/filter-repaint-shadow-expected.png
LayoutTests/css3/filters/filter-repaint-shadow-rotated-expected.png
LayoutTests/css3/filters/null-effect-check-expected.html [new file with mode: 0644]
LayoutTests/css3/filters/null-effect-check.html [new file with mode: 0644]
LayoutTests/css3/filters/remove-filter-rendering-expected.png
LayoutTests/platform/chromium-linux/css3/filters/crash-hw-sw-switch-expected.png
LayoutTests/platform/chromium-linux/css3/filters/custom/custom-filter-shader-cache-expected.png
LayoutTests/platform/chromium-linux/css3/filters/custom/effect-custom-combined-missing-expected.png
LayoutTests/platform/chromium-linux/css3/filters/custom/effect-custom-expected.png
LayoutTests/platform/chromium-linux/css3/filters/custom/filter-repaint-custom-clipped-expected.png
LayoutTests/platform/chromium-linux/css3/filters/custom/filter-repaint-custom-expected.png
LayoutTests/platform/chromium-linux/css3/filters/custom/filter-repaint-custom-rotated-expected.png
LayoutTests/platform/chromium-linux/css3/filters/effect-brightness-clamping-expected.png
LayoutTests/platform/chromium-linux/css3/filters/effect-brightness-expected.png
LayoutTests/platform/chromium-mac/css3/filters/add-filter-rendering-expected.png
LayoutTests/platform/chromium-mac/css3/filters/crash-filter-change-expected.png
LayoutTests/platform/chromium-mac/css3/filters/crash-hw-sw-switch-expected.png
LayoutTests/platform/chromium-mac/css3/filters/custom/custom-filter-shader-cache-expected.png
LayoutTests/platform/chromium-mac/css3/filters/custom/effect-color-check-expected.png
LayoutTests/platform/chromium-mac/css3/filters/custom/effect-custom-combined-missing-expected.png
LayoutTests/platform/chromium-mac/css3/filters/custom/effect-custom-expected.png
LayoutTests/platform/chromium-mac/css3/filters/custom/filter-repaint-custom-clipped-expected.png
LayoutTests/platform/chromium-mac/css3/filters/custom/filter-repaint-custom-expected.png
LayoutTests/platform/chromium-mac/css3/filters/custom/filter-repaint-custom-rotated-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-blur-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-brightness-clamping-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-brightness-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-combined-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-contrast-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-drop-shadow-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-grayscale-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-hue-rotate-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-invert-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-opacity-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-reference-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-reference-external-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-reference-hw-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-reference-ordering-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-saturate-expected.png
LayoutTests/platform/chromium-mac/css3/filters/effect-sepia-expected.png
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-blur-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-blur-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-child-layers-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-child-layers-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-crash-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-crash-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-composited-fallback-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-expected.png
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-sepia-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-sepia-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-shadow-clipped-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-shadow-clipped-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-shadow-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-shadow-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-shadow-rotated-expected.png [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filter-repaint-shadow-rotated-expected.txt [new file with mode: 0644]
LayoutTests/platform/chromium-mac/css3/filters/filtered-inline-expected.png
LayoutTests/platform/chromium-mac/css3/filters/multiple-filters-invalidation-expected.png
LayoutTests/platform/chromium-mac/css3/filters/nested-filters-expected.png
LayoutTests/platform/chromium-mac/css3/filters/regions-expanding-expected.png
LayoutTests/platform/chromium-mac/css3/filters/simple-filter-rendering-expected.png
LayoutTests/platform/chromium-win/css3/filters/add-filter-rendering-expected.png
LayoutTests/platform/chromium-win/css3/filters/crash-filter-change-expected.png
LayoutTests/platform/chromium-win/css3/filters/custom/effect-color-check-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-blur-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-combined-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-contrast-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-drop-shadow-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-grayscale-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-hue-rotate-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-invert-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-opacity-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-reference-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-reference-external-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-reference-hw-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-reference-ordering-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-saturate-expected.png
LayoutTests/platform/chromium-win/css3/filters/effect-sepia-expected.png
LayoutTests/platform/chromium-win/css3/filters/filter-repaint-expected.png
LayoutTests/platform/chromium-win/css3/filters/filtered-inline-expected.png
LayoutTests/platform/chromium-win/css3/filters/multiple-filters-invalidation-expected.png
LayoutTests/platform/chromium-win/css3/filters/nested-filters-expected.png
LayoutTests/platform/chromium-win/css3/filters/regions-expanding-expected.png
LayoutTests/platform/chromium-win/css3/filters/simple-filter-rendering-expected.png
LayoutTests/platform/chromium/TestExpectations
LayoutTests/platform/chromium/css3/filters/blur-filter-page-scroll-expected.png
LayoutTests/platform/chromium/css3/filters/blur-filter-page-scroll-parents-expected.png
LayoutTests/platform/chromium/css3/filters/blur-filter-page-scroll-self-expected.png
LayoutTests/platform/mac/TestExpectations
Source/WebCore/ChangeLog
Source/WebCore/rendering/FilterEffectRenderer.cpp