Title: [139031] trunk
- Revision
- 139031
- Author
- christophe.du...@intel.com
- Date
- 2013-01-07 22:03:20 -0800 (Mon, 07 Jan 2013)
Log Message
[CoordinatedGraphics] Support invalidation tracking for CoordinatedGraphicsLayer
https://bugs.webkit.org/show_bug.cgi?id=106002
Reviewed by Noam Rosenthal.
Source/WebKit2:
Add calls to addRepaintRect() to CoordinatedGraphicsLayer so that
we can track invalidation in the composited layer.
* WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
(WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
(WebCore::CoordinatedGraphicsLayer::setNeedsDisplay): Pass a FloatRect instead
of an IntRect to setNeedsDisplayInRect() since it is what it expects.
(WebCore::CoordinatedGraphicsLayer::setNeedsDisplayInRect):
LayoutTests:
Unskip several tests that require invalidation tracking for EFL WK2 now that
it is supported by Coordinated Graphics.
* platform/efl-wk2/TestExpectations:
* platform/efl/TestExpectations:
* platform/efl/compositing/repaint/invalidations-on-composited-layers-expected.txt: Added.
Use same expectation as mac port.
* platform/efl/fast/images/repaint-subrect-grid-expected.txt: Added. We are sometimes
1 pixel off compared to the global expectation likely due to lack for subpixel layout
support.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (139030 => 139031)
--- trunk/LayoutTests/ChangeLog 2013-01-08 04:58:03 UTC (rev 139030)
+++ trunk/LayoutTests/ChangeLog 2013-01-08 06:03:20 UTC (rev 139031)
@@ -1,3 +1,21 @@
+2013-01-07 Christophe Dumez <christophe.du...@intel.com>
+
+ [CoordinatedGraphics] Support invalidation tracking for CoordinatedGraphicsLayer
+ https://bugs.webkit.org/show_bug.cgi?id=106002
+
+ Reviewed by Noam Rosenthal.
+
+ Unskip several tests that require invalidation tracking for EFL WK2 now that
+ it is supported by Coordinated Graphics.
+
+ * platform/efl-wk2/TestExpectations:
+ * platform/efl/TestExpectations:
+ * platform/efl/compositing/repaint/invalidations-on-composited-layers-expected.txt: Added.
+ Use same expectation as mac port.
+ * platform/efl/fast/images/repaint-subrect-grid-expected.txt: Added. We are sometimes
+ 1 pixel off compared to the global expectation likely due to lack for subpixel layout
+ support.
+
2013-01-07 Hajime Morrita <morr...@google.com>
Document::m_activeNode should be always an Element.
Modified: trunk/LayoutTests/platform/efl/TestExpectations (139030 => 139031)
--- trunk/LayoutTests/platform/efl/TestExpectations 2013-01-08 04:58:03 UTC (rev 139030)
+++ trunk/LayoutTests/platform/efl/TestExpectations 2013-01-08 06:03:20 UTC (rev 139031)
@@ -141,7 +141,6 @@
fast/repaint/inline-overflow.html
fast/repaint/inline-relative-positioned.html
fast/repaint/overflow-flipped-writing-mode-block.html
-fast/repaint/overflow-flipped-writing-mode-table.html
fast/repaint/text-in-relative-positioned-inline.html
fast/repaint/trailing-floats-root-line-box-overflow.html
fast/table/simple_paint.html
@@ -1616,7 +1615,6 @@
Bug(EFL) animations/negative-delay.html [ Failure Pass ]
Bug(EFL) compositing/bounds-in-flipped-writing-mode.html [ Failure ]
Bug(EFL) compositing/iframes/leave-compositing-iframe.html [ Failure ]
-Bug(EFL) compositing/repaint/invalidations-on-composited-layers.html [ Failure ]
Bug(EFL) compositing/visibility/visibility-composited.html [ Failure ]
Bug(EFL) editing/selection/caret-rtl.html [ Failure Pass ]
Bug(EFL) editing/selection/caret-at-bidi-boundary.html [ Crash Pass ]
Added: trunk/LayoutTests/platform/efl/compositing/repaint/invalidations-on-composited-layers-expected.txt (0 => 139031)
--- trunk/LayoutTests/platform/efl/compositing/repaint/invalidations-on-composited-layers-expected.txt (rev 0)
+++ trunk/LayoutTests/platform/efl/compositing/repaint/invalidations-on-composited-layers-expected.txt 2013-01-08 06:03:20 UTC (rev 139031)
@@ -0,0 +1,26 @@
+(repaint rects
+ (rect 8 13 784 15)
+ (rect 8 413 784 28)
+ (rect 0 421 800 28)
+)
+(GraphicsLayer
+ (bounds 800.00 600.00)
+ (children 1
+ (GraphicsLayer
+ (bounds 800.00 600.00)
+ (children 1
+ (GraphicsLayer
+ (position 8.00 41.00)
+ (bounds 400.00 400.00)
+ (children 1
+ (GraphicsLayer
+ (position 50.00 50.00)
+ (bounds 75.00 75.00)
+ )
+ )
+ )
+ )
+ )
+ )
+)
+
Added: trunk/LayoutTests/platform/efl/fast/images/repaint-subrect-grid-expected.txt (0 => 139031)
--- trunk/LayoutTests/platform/efl/fast/images/repaint-subrect-grid-expected.txt (rev 0)
+++ trunk/LayoutTests/platform/efl/fast/images/repaint-subrect-grid-expected.txt 2013-01-08 06:03:20 UTC (rev 139031)
@@ -0,0 +1,25 @@
+(repaint rects
+ (rect -100 -100 18 18)
+ (rect 0 0 18 18)
+ (rect 0 0 18 18)
+ (rect 18 0 18 18)
+ (rect 18 0 18 18)
+ (rect 36 0 18 18)
+ (rect 36 0 18 18)
+ (rect -9 18 18 18)
+ (rect -9 18 18 18)
+ (rect 9 18 18 18)
+ (rect 9 18 18 18)
+ (rect 27 18 18 18)
+ (rect 27 18 18 18)
+ (rect 45 18 18 18)
+ (rect 45 18 18 18)
+ (rect 0 36 18 18)
+ (rect 0 36 18 18)
+ (rect 18 36 18 18)
+ (rect 18 36 18 18)
+ (rect 36 36 18 18)
+ (rect 36 36 18 18)
+ (rect -100 -100 18 18)
+)
+
Modified: trunk/LayoutTests/platform/efl-wk2/TestExpectations (139030 => 139031)
--- trunk/LayoutTests/platform/efl-wk2/TestExpectations 2013-01-08 04:58:03 UTC (rev 139030)
+++ trunk/LayoutTests/platform/efl-wk2/TestExpectations 2013-01-08 06:03:20 UTC (rev 139031)
@@ -317,9 +317,6 @@
# The following test makes the fast/parser/document-write-ignores-later-network-bytes.html test crash
webkit.org/b/98345 fast/parser/document-open-in-unload.html [ Skip ]
-# Requires TestRunner displayInvalidatedRegion() support.
-webkit.org/b/98523 fast/images/repaint-subrect-grid.html [ Failure ]
-
# NPP_SetWindow is not called with proper size for the first time.
webkit.org/b/98746 plugins/netscape-plugin-setwindow-size-2.html [ Failure ]
Modified: trunk/Source/WebKit2/ChangeLog (139030 => 139031)
--- trunk/Source/WebKit2/ChangeLog 2013-01-08 04:58:03 UTC (rev 139030)
+++ trunk/Source/WebKit2/ChangeLog 2013-01-08 06:03:20 UTC (rev 139031)
@@ -1,3 +1,19 @@
+2013-01-07 Christophe Dumez <christophe.du...@intel.com>
+
+ [CoordinatedGraphics] Support invalidation tracking for CoordinatedGraphicsLayer
+ https://bugs.webkit.org/show_bug.cgi?id=106002
+
+ Reviewed by Noam Rosenthal.
+
+ Add calls to addRepaintRect() to CoordinatedGraphicsLayer so that
+ we can track invalidation in the composited layer.
+
+ * WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
+ (WebCore::CoordinatedGraphicsLayer::setContentsNeedsDisplay):
+ (WebCore::CoordinatedGraphicsLayer::setNeedsDisplay): Pass a FloatRect instead
+ of an IntRect to setNeedsDisplayInRect() since it is what it expects.
+ (WebCore::CoordinatedGraphicsLayer::setNeedsDisplayInRect):
+
2013-01-07 Anders Carlsson <ander...@apple.com>
Remove PLATFORM(WIN) #ifdefs
Modified: trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp (139030 => 139031)
--- trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp 2013-01-08 04:58:03 UTC (rev 139030)
+++ trunk/Source/WebKit2/WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp 2013-01-08 06:03:20 UTC (rev 139031)
@@ -318,6 +318,8 @@
m_canvasNeedsDisplay = true;
if (client())
client()->notifyFlushRequired(this);
+
+ addRepaintRect(contentsRect());
}
void CoordinatedGraphicsLayer::setContentsToCanvas(PlatformLayer* platformLayer)
@@ -429,14 +431,17 @@
void CoordinatedGraphicsLayer::setNeedsDisplay()
{
- setNeedsDisplayInRect(IntRect(IntPoint::zero(), IntSize(size().width(), size().height())));
+ setNeedsDisplayInRect(FloatRect(FloatPoint(), size()));
}
void CoordinatedGraphicsLayer::setNeedsDisplayInRect(const FloatRect& rect)
{
if (m_mainBackingStore)
m_mainBackingStore->invalidate(IntRect(rect));
+
didChangeLayerState();
+
+ addRepaintRect(rect);
}
CoordinatedLayerID CoordinatedGraphicsLayer::id() const
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes