Title: [107822] trunk
- Revision
- 107822
- Author
- [email protected]
- Date
- 2012-02-15 10:44:33 -0800 (Wed, 15 Feb 2012)
Log Message
Source/WebCore: Fix for incorrect/offset image in CSS filters (non-composited path)
https://bugs.webkit.org/show_bug.cgi?id=78626
Reviewed by Darin Adler.
Test: css3/filters/multiple-filters-invalidation.html
* rendering/FilterEffectRenderer.cpp:
(WebCore::FilterEffectRenderer::prepare):
When invalidating results, invalidate all intermediate filter
results, not just the last effect's result.
LayoutTests: New test to exercise invalidation of multiple CSS filters.
https://bugs.webkit.org/show_bug.cgi?id=78626
Reviewed by Darin Adler.
* css3/filters/multiple-filters-invalidation-expected.txt: Added.
* css3/filters/multiple-filters-invalidation.html: Added.
* platform/mac-snowleopard/css3/filters/multiple-filters-invalidation-expected.png: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (107821 => 107822)
--- trunk/LayoutTests/ChangeLog 2012-02-15 16:09:30 UTC (rev 107821)
+++ trunk/LayoutTests/ChangeLog 2012-02-15 18:44:33 UTC (rev 107822)
@@ -1,3 +1,14 @@
+2012-02-14 Stephen White <[email protected]>
+
+ New test to exercise invalidation of multiple CSS filters.
+ https://bugs.webkit.org/show_bug.cgi?id=78626
+
+ Reviewed by Darin Adler.
+
+ * css3/filters/multiple-filters-invalidation-expected.txt: Added.
+ * css3/filters/multiple-filters-invalidation.html: Added.
+ * platform/mac-snowleopard/css3/filters/multiple-filters-invalidation-expected.png: Added.
+
2012-02-15 No'am Rosenthal <[email protected]>
[Texmap] Support filters in TextureMapperImageBuffer
Added: trunk/LayoutTests/css3/filters/multiple-filters-invalidation-expected.txt (0 => 107822)
--- trunk/LayoutTests/css3/filters/multiple-filters-invalidation-expected.txt (rev 0)
+++ trunk/LayoutTests/css3/filters/multiple-filters-invalidation-expected.txt 2012-02-15 18:44:33 UTC (rev 107822)
@@ -0,0 +1 @@
+
Added: trunk/LayoutTests/css3/filters/multiple-filters-invalidation.html (0 => 107822)
--- trunk/LayoutTests/css3/filters/multiple-filters-invalidation.html (rev 0)
+++ trunk/LayoutTests/css3/filters/multiple-filters-invalidation.html 2012-02-15 18:44:33 UTC (rev 107822)
@@ -0,0 +1,30 @@
+<html>
+<head>
+<style>
+html {
+ -webkit-filter: brightness(0.1) contrast(120%);
+}
+#rect {
+ background: red;
+ width: 100px;
+ height: 100px;
+}
+</style>
+</head>
+<body>
+<div id="rect"></div>
+</body>
+<script>
+function changeBackground() {
+ document.getElementById("rect").style.background = ""
+}
+
+if (window.layoutTestController) {
+ layoutTestController.dumpAsText(true);
+ layoutTestController.display();
+ changeBackground();
+} else
+ window.setTimeout(changeBackground, 250);
+
+</script>
+</html>
Modified: trunk/LayoutTests/platform/chromium/test_expectations.txt (107821 => 107822)
--- trunk/LayoutTests/platform/chromium/test_expectations.txt 2012-02-15 16:09:30 UTC (rev 107821)
+++ trunk/LayoutTests/platform/chromium/test_expectations.txt 2012-02-15 18:44:33 UTC (rev 107822)
@@ -3890,6 +3890,7 @@
BUGWK78529 LINUX DEBUG GPU : fast/canvas/canvas-text-alignment.html = IMAGE
+BUGWK78561 : css3/filters/multiple-filters-invalidation.html = MISSING
BUGWK78561 WIN : css3/filters/crash-hw-sw-switch.html = MISSING
BUGWK78561 WIN : css3/filters/filter-empty-element-crash.html = MISSING
Added: trunk/LayoutTests/platform/mac-snowleopard/css3/filters/multiple-filters-invalidation-expected.png
(Binary files differ)
Property changes on: trunk/LayoutTests/platform/mac-snowleopard/css3/filters/multiple-filters-invalidation-expected.png
___________________________________________________________________
Added: svn:mime-type
Modified: trunk/Source/WebCore/ChangeLog (107821 => 107822)
--- trunk/Source/WebCore/ChangeLog 2012-02-15 16:09:30 UTC (rev 107821)
+++ trunk/Source/WebCore/ChangeLog 2012-02-15 18:44:33 UTC (rev 107822)
@@ -1,3 +1,17 @@
+2012-02-14 Stephen White <[email protected]>
+
+ Fix for incorrect/offset image in CSS filters (non-composited path)
+ https://bugs.webkit.org/show_bug.cgi?id=78626
+
+ Reviewed by Darin Adler.
+
+ Test: css3/filters/multiple-filters-invalidation.html
+
+ * rendering/FilterEffectRenderer.cpp:
+ (WebCore::FilterEffectRenderer::prepare):
+ When invalidating results, invalidate all intermediate filter
+ results, not just the last effect's result.
+
2012-02-15 Alexander Pavlov <[email protected]>
Web Inspector: "Minus" (Delete) button disappears for hovered watch _expression_ in Watches pane
Modified: trunk/Source/WebCore/rendering/FilterEffectRenderer.cpp (107821 => 107822)
--- trunk/Source/WebCore/rendering/FilterEffectRenderer.cpp 2012-02-15 16:09:30 UTC (rev 107821)
+++ trunk/Source/WebCore/rendering/FilterEffectRenderer.cpp 2012-02-15 18:44:33 UTC (rev 107822)
@@ -326,7 +326,8 @@
m_graphicsBufferAttached = true;
}
m_sourceGraphic->clearResult();
- lastEffect()->clearResult();
+ for (size_t i = 0; i < m_effects.size(); ++i)
+ m_effects[i]->clearResult();
}
void FilterEffectRenderer::apply()
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes