Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(617)

Unified Diff: third_party/WebKit/Source/core/paint/PaintControllerPaintTest.cpp

Issue 2186643002: Fold compositing display items into contained drawings if the drawing is a singleton. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: none Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | third_party/WebKit/Source/platform/graphics/paint/CompositingRecorder.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/core/paint/PaintControllerPaintTest.cpp
diff --git a/third_party/WebKit/Source/core/paint/PaintControllerPaintTest.cpp b/third_party/WebKit/Source/core/paint/PaintControllerPaintTest.cpp
index 13148f5d0160a27b84af428b528ccc8b5e4b1ff8..861bc87882da27ffeb8d8effece54325ef023634 100644
--- a/third_party/WebKit/Source/core/paint/PaintControllerPaintTest.cpp
+++ b/third_party/WebKit/Source/core/paint/PaintControllerPaintTest.cpp
@@ -69,16 +69,18 @@ TEST_F(PaintControllerPaintTestForSlimmingPaintV2, ChunkIdClientCacheFlag)
setBodyInnerHTML(
"<div id='div' style='width: 200px; height: 200px; opacity: 0.5'>"
" <div style='width: 100px; height: 100px; background-color: blue'></div>"
+ " <div style='width: 100px; height: 100px; background-color: blue'></div>"
"</div>");
PaintLayer& htmlLayer = *toLayoutBoxModelObject(document().documentElement()->layoutObject())->layer();
LayoutBlock& div = *toLayoutBlock(getLayoutObjectByElementId("div"));
LayoutObject& subDiv = *div.firstChild();
-
- EXPECT_DISPLAY_LIST(rootPaintController().getDisplayItemList(), 6,
+ LayoutObject& subDiv2 = *subDiv.nextSibling();
+ EXPECT_DISPLAY_LIST(rootPaintController().getDisplayItemList(), 7,
TestDisplayItem(layoutView(), documentBackgroundType),
TestDisplayItem(htmlLayer, DisplayItem::Subsequence),
TestDisplayItem(div, DisplayItem::BeginCompositing),
TestDisplayItem(subDiv, backgroundType),
+ TestDisplayItem(subDiv2, backgroundType),
TestDisplayItem(div, DisplayItem::EndCompositing),
TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence));
@@ -96,4 +98,23 @@ TEST_F(PaintControllerPaintTestForSlimmingPaintV2, ChunkIdClientCacheFlag)
EXPECT_TRUE(rootPaintController().clientCacheIsValid(subDiv));
}
+TEST_F(PaintControllerPaintTestForSlimmingPaintV2, CompositingFold)
+{
+ setBodyInnerHTML(
+ "<div id='div' style='width: 200px; height: 200px; opacity: 0.5'>"
+ " <div style='width: 100px; height: 100px; background-color: blue'></div>"
+ "</div>");
+ PaintLayer& htmlLayer = *toLayoutBoxModelObject(document().documentElement()->layoutObject())->layer();
+ LayoutBlock& div = *toLayoutBlock(getLayoutObjectByElementId("div"));
+ LayoutObject& subDiv = *div.firstChild();
+
+ EXPECT_DISPLAY_LIST(rootPaintController().getDisplayItemList(), 4,
+ TestDisplayItem(layoutView(), documentBackgroundType),
+ TestDisplayItem(htmlLayer, DisplayItem::Subsequence),
+ // The begin and end compositing display items have been folded into this one.
+ TestDisplayItem(subDiv, backgroundType),
+ TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence));
+}
+
+
} // namespace blink
« no previous file with comments | « no previous file | third_party/WebKit/Source/platform/graphics/paint/CompositingRecorder.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698