Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "config.h" | 5 #include "config.h" |
| 6 #include "core/paint/DisplayItemListPaintTest.h" | 6 #include "core/paint/DisplayItemListPaintTest.h" |
| 7 | 7 |
| 8 #include "core/layout/LayoutText.h" | 8 #include "core/layout/LayoutText.h" |
| 9 #include "core/layout/line/InlineTextBox.h" | 9 #include "core/layout/line/InlineTextBox.h" |
| 10 #include "core/page/FocusController.h" | 10 #include "core/page/FocusController.h" |
| 11 #include "core/paint/DeprecatedPaintLayerPainter.h" | 11 #include "core/paint/DeprecatedPaintLayerPainter.h" |
| 12 #include "core/paint/LayerClipRecorder.h" | 12 #include "core/paint/LayerClipRecorder.h" |
| 13 #include "core/paint/LayoutObjectDrawingRecorder.h" | 13 #include "core/paint/LayoutObjectDrawingRecorder.h" |
| 14 #include "core/paint/ScopeRecorder.h" | 14 #include "core/paint/ScopeRecorder.h" |
| 15 #include "platform/graphics/GraphicsContext.h" | 15 #include "platform/graphics/GraphicsContext.h" |
| 16 #include "platform/graphics/paint/DrawingDisplayItem.h" | 16 #include "platform/graphics/paint/DrawingDisplayItem.h" |
| 17 | 17 |
| 18 namespace blink { | 18 namespace blink { |
| 19 | 19 |
| 20 TEST_F(DisplayItemListPaintTest, FullDocumentPaintingWithCaret) | 20 TEST_F(DisplayItemListPaintTest, FullDocumentPaintingWithCaret) |
| 21 { | 21 { |
| 22 setBodyInnerHTML("<div id='div' contentEditable='true' style='outline:none'> XYZ</div>"); | 22 setBodyInnerHTML("<div id='div' contentEditable='true' style='outline:none'> XYZ</div>"); |
| 23 document().page()->focusController().setActive(true); | 23 document().page()->focusController().setActive(true); |
| 24 document().page()->focusController().setFocused(true); | 24 document().page()->focusController().setFocused(true); |
| 25 LayoutView& layoutView = *document().layoutView(); | 25 DeprecatedPaintLayer& rootLayer = *layoutView().layer(); |
| 26 DeprecatedPaintLayer& rootLayer = *layoutView.layer(); | |
| 27 Element& div = *toElement(document().body()->firstChild()); | 26 Element& div = *toElement(document().body()->firstChild()); |
| 28 LayoutObject& divLayoutObject = *document().body()->firstChild()->layoutObje ct(); | 27 LayoutObject& divLayoutObject = *document().body()->firstChild()->layoutObje ct(); |
| 29 InlineTextBox& textInlineBox = *toLayoutText(div.firstChild()->layoutObject( ))->firstTextBox(); | 28 InlineTextBox& textInlineBox = *toLayoutText(div.firstChild()->layoutObject( ))->firstTextBox(); |
| 30 | 29 |
| 31 GraphicsContext context(&rootDisplayItemList()); | 30 GraphicsContext context(&rootDisplayItemList()); |
| 32 DeprecatedPaintLayerPaintingInfo paintingInfo(&rootLayer, LayoutRect(0, 0, 8 00, 600), GlobalPaintNormalPhase, LayoutSize()); | 31 DeprecatedPaintLayerPaintingInfo paintingInfo(&rootLayer, LayoutRect(0, 0, 8 00, 600), GlobalPaintNormalPhase, LayoutSize()); |
| 33 DeprecatedPaintLayerPainter(rootLayer).paintLayerContents(&context, painting Info, PaintLayerPaintingCompositingAllPhases); | 32 DeprecatedPaintLayerPainter(rootLayer).paintLayerContents(&context, painting Info, PaintLayerPaintingCompositingAllPhases); |
| 34 rootDisplayItemList().commitNewDisplayItems(); | 33 rootDisplayItemList().commitNewDisplayItems(); |
| 35 | 34 |
| 36 EXPECT_DISPLAY_LIST_BASE(rootDisplayItemList().displayItems(), 2, | 35 EXPECT_DISPLAY_LIST_BASE(rootDisplayItemList().displayItems(), 2, |
| 37 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 36 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 38 TestDisplayItem(textInlineBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground))); | 37 TestDisplayItem(textInlineBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground))); |
| 39 | 38 |
| 40 div.focus(); | 39 div.focus(); |
| 41 document().view()->updateAllLifecyclePhases(); | 40 document().view()->updateAllLifecyclePhases(); |
| 42 EXPECT_TRUE(rootDisplayItemList().clientCacheIsValid(layoutView.displayItemC lient())); | 41 EXPECT_TRUE(rootDisplayItemList().clientCacheIsValid(layoutView().displayIte mClient())); |
| 43 EXPECT_FALSE(rootDisplayItemList().clientCacheIsValid(divLayoutObject.displa yItemClient())); | 42 EXPECT_FALSE(rootDisplayItemList().clientCacheIsValid(divLayoutObject.displa yItemClient())); |
| 44 EXPECT_TRUE(rootDisplayItemList().clientCacheIsValid(textInlineBox.displayIt emClient())); | 43 EXPECT_TRUE(rootDisplayItemList().clientCacheIsValid(textInlineBox.displayIt emClient())); |
| 45 DeprecatedPaintLayerPainter(rootLayer).paintLayerContents(&context, painting Info, PaintLayerPaintingCompositingAllPhases); | 44 DeprecatedPaintLayerPainter(rootLayer).paintLayerContents(&context, painting Info, PaintLayerPaintingCompositingAllPhases); |
| 46 rootDisplayItemList().commitNewDisplayItems(); | 45 rootDisplayItemList().commitNewDisplayItems(); |
| 47 | 46 |
| 48 EXPECT_DISPLAY_LIST_BASE(rootDisplayItemList().displayItems(), 3, | 47 EXPECT_DISPLAY_LIST_BASE(rootDisplayItemList().displayItems(), 3, |
| 49 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 48 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 50 TestDisplayItem(textInlineBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground)), | 49 TestDisplayItem(textInlineBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground)), |
| 51 TestDisplayItem(divLayoutObject, DisplayItem::Caret)); // New! | 50 TestDisplayItem(divLayoutObject, DisplayItem::Caret)); // New! |
| 52 } | 51 } |
| 53 | 52 |
| 54 TEST_F(DisplayItemListPaintTest, InlineRelayout) | 53 TEST_F(DisplayItemListPaintTest, InlineRelayout) |
| 55 { | 54 { |
| 56 setBodyInnerHTML("<div id='div' style='width:100px; height: 200px'>AAAAAAAAA A BBBBBBBBBB</div>"); | 55 setBodyInnerHTML("<div id='div' style='width:100px; height: 200px'>AAAAAAAAA A BBBBBBBBBB</div>"); |
| 57 LayoutView& layoutView = *document().layoutView(); | 56 DeprecatedPaintLayer& rootLayer = *layoutView().layer(); |
| 58 DeprecatedPaintLayer& rootLayer = *layoutView.layer(); | |
| 59 Element& div = *toElement(document().body()->firstChild()); | 57 Element& div = *toElement(document().body()->firstChild()); |
| 60 LayoutBlock& divBlock = *toLayoutBlock(document().body()->firstChild()->layo utObject()); | 58 LayoutBlock& divBlock = *toLayoutBlock(document().body()->firstChild()->layo utObject()); |
| 61 LayoutText& text = *toLayoutText(divBlock.firstChild()); | 59 LayoutText& text = *toLayoutText(divBlock.firstChild()); |
| 62 InlineTextBox& firstTextBox = *text.firstTextBox(); | 60 InlineTextBox& firstTextBox = *text.firstTextBox(); |
| 63 DisplayItemClient firstTextBoxDisplayItemClient = firstTextBox.displayItemCl ient(); | 61 DisplayItemClient firstTextBoxDisplayItemClient = firstTextBox.displayItemCl ient(); |
| 64 | 62 |
| 65 GraphicsContext context(&rootDisplayItemList()); | 63 GraphicsContext context(&rootDisplayItemList()); |
| 66 DeprecatedPaintLayerPaintingInfo paintingInfo(&rootLayer, LayoutRect(0, 0, 8 00, 600), GlobalPaintNormalPhase, LayoutSize()); | 64 DeprecatedPaintLayerPaintingInfo paintingInfo(&rootLayer, LayoutRect(0, 0, 8 00, 600), GlobalPaintNormalPhase, LayoutSize()); |
| 67 DeprecatedPaintLayerPainter(rootLayer).paintLayerContents(&context, painting Info, PaintLayerPaintingCompositingAllPhases); | 65 DeprecatedPaintLayerPainter(rootLayer).paintLayerContents(&context, painting Info, PaintLayerPaintingCompositingAllPhases); |
| 68 rootDisplayItemList().commitNewDisplayItems(); | 66 rootDisplayItemList().commitNewDisplayItems(); |
| 69 | 67 |
| 70 EXPECT_DISPLAY_LIST_BASE(rootDisplayItemList().displayItems(), 2, | 68 EXPECT_DISPLAY_LIST_BASE(rootDisplayItemList().displayItems(), 2, |
| 71 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 69 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 72 TestDisplayItem(firstTextBox, DisplayItem::paintPhaseToDrawingType(Paint PhaseForeground))); | 70 TestDisplayItem(firstTextBox, DisplayItem::paintPhaseToDrawingType(Paint PhaseForeground))); |
| 73 | 71 |
| 74 div.setAttribute(HTMLNames::styleAttr, "width: 10px; height: 200px"); | 72 div.setAttribute(HTMLNames::styleAttr, "width: 10px; height: 200px"); |
| 75 document().view()->updateAllLifecyclePhases(); | 73 document().view()->updateAllLifecyclePhases(); |
| 76 EXPECT_TRUE(rootDisplayItemList().clientCacheIsValid(layoutView.displayItemC lient())); | 74 EXPECT_TRUE(rootDisplayItemList().clientCacheIsValid(layoutView().displayIte mClient())); |
| 77 EXPECT_FALSE(rootDisplayItemList().clientCacheIsValid(divBlock.displayItemCl ient())); | 75 EXPECT_FALSE(rootDisplayItemList().clientCacheIsValid(divBlock.displayItemCl ient())); |
| 78 EXPECT_FALSE(rootDisplayItemList().clientCacheIsValid(firstTextBoxDisplayIte mClient)); | 76 EXPECT_FALSE(rootDisplayItemList().clientCacheIsValid(firstTextBoxDisplayIte mClient)); |
| 79 DeprecatedPaintLayerPainter(rootLayer).paintLayerContents(&context, painting Info, PaintLayerPaintingCompositingAllPhases); | 77 DeprecatedPaintLayerPainter(rootLayer).paintLayerContents(&context, painting Info, PaintLayerPaintingCompositingAllPhases); |
| 80 rootDisplayItemList().commitNewDisplayItems(); | 78 rootDisplayItemList().commitNewDisplayItems(); |
| 81 | 79 |
| 82 LayoutText& newText = *toLayoutText(divBlock.firstChild()); | 80 LayoutText& newText = *toLayoutText(divBlock.firstChild()); |
| 83 InlineTextBox& newFirstTextBox = *newText.firstTextBox(); | 81 InlineTextBox& newFirstTextBox = *newText.firstTextBox(); |
| 84 InlineTextBox& secondTextBox = *newText.firstTextBox()->nextTextBox(); | 82 InlineTextBox& secondTextBox = *newText.firstTextBox()->nextTextBox(); |
| 85 | 83 |
| 86 EXPECT_DISPLAY_LIST_BASE(rootDisplayItemList().displayItems(), 3, | 84 EXPECT_DISPLAY_LIST_BASE(rootDisplayItemList().displayItems(), 3, |
| 87 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 85 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 88 TestDisplayItem(newFirstTextBox, DisplayItem::paintPhaseToDrawingType(Pa intPhaseForeground)), | 86 TestDisplayItem(newFirstTextBox, DisplayItem::paintPhaseToDrawingType(Pa intPhaseForeground)), |
| 89 TestDisplayItem(secondTextBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground))); | 87 TestDisplayItem(secondTextBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground))); |
| 90 } | 88 } |
| 91 | 89 |
| 92 TEST_F(DisplayItemListPaintTestForSlimmingPaintV2, FullDocumentPaintingWithCaret ) | 90 TEST_F(DisplayItemListPaintTestForSlimmingPaintV2, FullDocumentPaintingWithCaret ) |
| 93 { | 91 { |
| 94 setBodyInnerHTML("<div id='div' contentEditable='true' style='outline:none'> XYZ</div>"); | 92 setBodyInnerHTML("<div id='div' contentEditable='true' style='outline:none'> XYZ</div>"); |
| 95 document().page()->focusController().setActive(true); | 93 document().page()->focusController().setActive(true); |
| 96 document().page()->focusController().setFocused(true); | 94 document().page()->focusController().setFocused(true); |
| 97 LayoutView& layoutView = *document().layoutView(); | |
| 98 DeprecatedPaintLayer& htmlLayer = *toLayoutBoxModelObject(document().documen tElement()->layoutObject())->layer(); | 95 DeprecatedPaintLayer& htmlLayer = *toLayoutBoxModelObject(document().documen tElement()->layoutObject())->layer(); |
| 99 Element& div = *toElement(document().body()->firstChild()); | 96 Element& div = *toElement(document().body()->firstChild()); |
| 100 LayoutObject& divLayoutObject = *document().body()->firstChild()->layoutObje ct(); | 97 LayoutObject& divLayoutObject = *document().body()->firstChild()->layoutObje ct(); |
| 101 InlineTextBox& textInlineBox = *toLayoutText(div.firstChild()->layoutObject( ))->firstTextBox(); | 98 InlineTextBox& textInlineBox = *toLayoutText(div.firstChild()->layoutObject( ))->firstTextBox(); |
| 102 | 99 |
| 103 document().view()->updateAllLifecyclePhases(); | 100 document().view()->updateAllLifecyclePhases(); |
| 104 | 101 |
| 105 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 4, | 102 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 4, |
| 106 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 103 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 107 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), | 104 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), |
| 108 TestDisplayItem(textInlineBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground)), | 105 TestDisplayItem(textInlineBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground)), |
| 109 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); | 106 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); |
| 110 | 107 |
| 111 div.focus(); | 108 div.focus(); |
| 112 document().view()->updateAllLifecyclePhases(); | 109 document().view()->updateAllLifecyclePhases(); |
| 113 | 110 |
| 114 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 5, | 111 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 5, |
| 115 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 112 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 116 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), | 113 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), |
| 117 TestDisplayItem(textInlineBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground)), | 114 TestDisplayItem(textInlineBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground)), |
| 118 TestDisplayItem(divLayoutObject, DisplayItem::Caret), // New! | 115 TestDisplayItem(divLayoutObject, DisplayItem::Caret), // New! |
| 119 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); | 116 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); |
| 120 } | 117 } |
| 121 | 118 |
| 122 TEST_F(DisplayItemListPaintTestForSlimmingPaintV2, InlineRelayout) | 119 TEST_F(DisplayItemListPaintTestForSlimmingPaintV2, InlineRelayout) |
| 123 { | 120 { |
| 124 setBodyInnerHTML("<div id='div' style='width:100px; height: 200px'>AAAAAAAAA A BBBBBBBBBB</div>"); | 121 setBodyInnerHTML("<div id='div' style='width:100px; height: 200px'>AAAAAAAAA A BBBBBBBBBB</div>"); |
| 125 LayoutView& layoutView = *document().layoutView(); | |
| 126 DeprecatedPaintLayer& htmlLayer = *toLayoutBoxModelObject(document().documen tElement()->layoutObject())->layer(); | 122 DeprecatedPaintLayer& htmlLayer = *toLayoutBoxModelObject(document().documen tElement()->layoutObject())->layer(); |
| 127 Element& div = *toElement(document().body()->firstChild()); | 123 Element& div = *toElement(document().body()->firstChild()); |
| 128 LayoutBlock& divBlock = *toLayoutBlock(document().body()->firstChild()->layo utObject()); | 124 LayoutBlock& divBlock = *toLayoutBlock(document().body()->firstChild()->layo utObject()); |
| 129 LayoutText& text = *toLayoutText(divBlock.firstChild()); | 125 LayoutText& text = *toLayoutText(divBlock.firstChild()); |
| 130 InlineTextBox& firstTextBox = *text.firstTextBox(); | 126 InlineTextBox& firstTextBox = *text.firstTextBox(); |
| 131 | 127 |
| 132 document().view()->updateAllLifecyclePhases(); | 128 document().view()->updateAllLifecyclePhases(); |
| 133 | 129 |
| 130 rootDisplayItemList().showDebugData(); | |
|
pdr.
2015/09/05 03:02:15
Did you mean to leave this in?
Xianzhu
2015/09/08 04:58:32
No. Thanks for catching this. Removed.
| |
| 134 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 4, | 131 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 4, |
| 135 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 132 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 136 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), | 133 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), |
| 137 TestDisplayItem(firstTextBox, DisplayItem::paintPhaseToDrawingType(Paint PhaseForeground)), | 134 TestDisplayItem(firstTextBox, DisplayItem::paintPhaseToDrawingType(Paint PhaseForeground)), |
| 138 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); | 135 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); |
| 139 | 136 |
| 140 div.setAttribute(HTMLNames::styleAttr, "width: 10px; height: 200px"); | 137 div.setAttribute(HTMLNames::styleAttr, "width: 10px; height: 200px"); |
| 141 document().view()->updateAllLifecyclePhases(); | 138 document().view()->updateAllLifecyclePhases(); |
| 142 | 139 |
| 143 LayoutText& newText = *toLayoutText(divBlock.firstChild()); | 140 LayoutText& newText = *toLayoutText(divBlock.firstChild()); |
| 144 InlineTextBox& newFirstTextBox = *newText.firstTextBox(); | 141 InlineTextBox& newFirstTextBox = *newText.firstTextBox(); |
| 145 InlineTextBox& secondTextBox = *newText.firstTextBox()->nextTextBox(); | 142 InlineTextBox& secondTextBox = *newText.firstTextBox()->nextTextBox(); |
| 146 | 143 |
| 147 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 5, | 144 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 5, |
| 148 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 145 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 149 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), | 146 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), |
| 150 TestDisplayItem(newFirstTextBox, DisplayItem::paintPhaseToDrawingType(Pa intPhaseForeground)), | 147 TestDisplayItem(newFirstTextBox, DisplayItem::paintPhaseToDrawingType(Pa intPhaseForeground)), |
| 151 TestDisplayItem(secondTextBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground)), | 148 TestDisplayItem(secondTextBox, DisplayItem::paintPhaseToDrawingType(Pain tPhaseForeground)), |
| 152 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); | 149 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); |
| 153 } | 150 } |
| 154 | 151 |
| 155 TEST_F(DisplayItemListPaintTestForSlimmingPaintV2, CachedSubsequence) | 152 TEST_F(DisplayItemListPaintTestForSlimmingPaintV2, CachedSubsequence) |
| 156 { | 153 { |
| 157 setBodyInnerHTML( | 154 setBodyInnerHTML( |
| 158 "<div id='container1' style='position: relative; width: 200px; height: 2 00px; background-color: blue'>" | 155 "<div id='container1' style='position: relative; width: 200px; height: 2 00px; background-color: blue'>" |
| 159 " <div id='content1' style='width: 100px; height: 100px; background-col or: red'></div>" | 156 " <div id='content1' style='width: 100px; height: 100px; background-col or: red'></div>" |
| 160 "</div>" | 157 "</div>" |
| 161 "<div id='container2' style='position: relative; width: 200px; height: 2 00px; background-color: blue'>" | 158 "<div id='container2' style='position: relative; width: 200px; height: 2 00px; background-color: blue'>" |
| 162 " <div id='content2' style='width: 100px; height: 100px; background-col or: green'></div>" | 159 " <div id='content2' style='width: 100px; height: 100px; background-col or: green'></div>" |
| 163 "</div>"); | 160 "</div>"); |
| 164 document().view()->updateAllLifecyclePhases(); | 161 document().view()->updateAllLifecyclePhases(); |
| 165 | 162 |
| 166 LayoutView& layoutView = *document().layoutView(); | |
| 167 DeprecatedPaintLayer& htmlLayer = *toLayoutBoxModelObject(document().documen tElement()->layoutObject())->layer(); | 163 DeprecatedPaintLayer& htmlLayer = *toLayoutBoxModelObject(document().documen tElement()->layoutObject())->layer(); |
| 168 LayoutObject& container1 = *document().getElementById("container1")->layoutO bject(); | 164 LayoutObject& container1 = *document().getElementById("container1")->layoutO bject(); |
| 169 DeprecatedPaintLayer& container1Layer = *toLayoutBoxModelObject(container1). layer(); | 165 DeprecatedPaintLayer& container1Layer = *toLayoutBoxModelObject(container1). layer(); |
| 170 LayoutObject& content1 = *document().getElementById("content1")->layoutObjec t(); | 166 LayoutObject& content1 = *document().getElementById("content1")->layoutObjec t(); |
| 171 LayoutObject& container2 = *document().getElementById("container2")->layoutO bject(); | 167 LayoutObject& container2 = *document().getElementById("container2")->layoutO bject(); |
| 172 DeprecatedPaintLayer& container2Layer = *toLayoutBoxModelObject(container2). layer(); | 168 DeprecatedPaintLayer& container2Layer = *toLayoutBoxModelObject(container2). layer(); |
| 173 LayoutObject& content2 = *document().getElementById("content2")->layoutObjec t(); | 169 LayoutObject& content2 = *document().getElementById("content2")->layoutObjec t(); |
| 174 | 170 |
| 175 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 11, | 171 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 11, |
| 176 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 172 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 177 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), | 173 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), |
| 178 TestDisplayItem(container1Layer, DisplayItem::BeginSubsequence), | 174 TestDisplayItem(container1Layer, DisplayItem::BeginSubsequence), |
| 179 TestDisplayItem(container1, DisplayItem::BoxDecorationBackground), | 175 TestDisplayItem(container1, DisplayItem::BoxDecorationBackground), |
| 180 TestDisplayItem(content1, DisplayItem::BoxDecorationBackground), | 176 TestDisplayItem(content1, DisplayItem::BoxDecorationBackground), |
| 181 TestDisplayItem(container1Layer, DisplayItem::EndSubsequence), | 177 TestDisplayItem(container1Layer, DisplayItem::EndSubsequence), |
| 182 TestDisplayItem(container2Layer, DisplayItem::BeginSubsequence), | 178 TestDisplayItem(container2Layer, DisplayItem::BeginSubsequence), |
| 183 TestDisplayItem(container2, DisplayItem::BoxDecorationBackground), | 179 TestDisplayItem(container2, DisplayItem::BoxDecorationBackground), |
| 184 TestDisplayItem(content2, DisplayItem::BoxDecorationBackground), | 180 TestDisplayItem(content2, DisplayItem::BoxDecorationBackground), |
| 185 TestDisplayItem(container2Layer, DisplayItem::EndSubsequence), | 181 TestDisplayItem(container2Layer, DisplayItem::EndSubsequence), |
| 186 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); | 182 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); |
| 187 | 183 |
| 188 toHTMLElement(content1.node())->setAttribute(HTMLNames::styleAttr, "width: 1 00px; height: 100px; background-color: green"); | 184 toHTMLElement(content1.node())->setAttribute(HTMLNames::styleAttr, "width: 1 00px; height: 100px; background-color: green"); |
| 189 updateLifecyclePhasesToPaintForSlimmingPaintV2Clean(); | 185 updateLifecyclePhasesToPaintForSlimmingPaintV2Clean(); |
| 190 | 186 |
| 191 EXPECT_DISPLAY_LIST_WITH_CACHED_RED_FILL_IN_DEBUG(newDisplayItemsBeforeUpdat e(), 8, | 187 EXPECT_DISPLAY_LIST_WITH_CACHED_RED_FILL_IN_DEBUG(rootDisplayItemList().newD isplayItems(), 8, |
| 192 TestDisplayItem(layoutView, DisplayItem::drawingTypeToCachedDrawingType( DisplayItem::BoxDecorationBackground)), | 188 TestDisplayItem(layoutView(), DisplayItem::drawingTypeToCachedDrawingTyp e(DisplayItem::BoxDecorationBackground)), |
| 193 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), | 189 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), |
| 194 TestDisplayItem(container1Layer, DisplayItem::BeginSubsequence), | 190 TestDisplayItem(container1Layer, DisplayItem::BeginSubsequence), |
| 195 TestDisplayItem(container1, DisplayItem::drawingTypeToCachedDrawingType( DisplayItem::BoxDecorationBackground)), | 191 TestDisplayItem(container1, DisplayItem::drawingTypeToCachedDrawingType( DisplayItem::BoxDecorationBackground)), |
| 196 TestDisplayItem(content1, DisplayItem::BoxDecorationBackground), | 192 TestDisplayItem(content1, DisplayItem::BoxDecorationBackground), |
| 197 TestDisplayItem(container1Layer, DisplayItem::EndSubsequence), | 193 TestDisplayItem(container1Layer, DisplayItem::EndSubsequence), |
| 198 TestDisplayItem(container2Layer, DisplayItem::CachedSubsequence), | 194 TestDisplayItem(container2Layer, DisplayItem::CachedSubsequence), |
| 199 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); | 195 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); |
| 200 | 196 |
| 201 compositeForSlimmingPaintV2(); | 197 compositeForSlimmingPaintV2(); |
| 202 | 198 |
| 203 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 11, | 199 EXPECT_DISPLAY_LIST_WITH_RED_FILL_IN_DEBUG(rootDisplayItemList().displayItem s(), 11, |
| 204 TestDisplayItem(layoutView, DisplayItem::BoxDecorationBackground), | 200 TestDisplayItem(layoutView(), DisplayItem::BoxDecorationBackground), |
| 205 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), | 201 TestDisplayItem(htmlLayer, DisplayItem::BeginSubsequence), |
| 206 TestDisplayItem(container1Layer, DisplayItem::BeginSubsequence), | 202 TestDisplayItem(container1Layer, DisplayItem::BeginSubsequence), |
| 207 TestDisplayItem(container1, DisplayItem::BoxDecorationBackground), | 203 TestDisplayItem(container1, DisplayItem::BoxDecorationBackground), |
| 208 TestDisplayItem(content1, DisplayItem::BoxDecorationBackground), | 204 TestDisplayItem(content1, DisplayItem::BoxDecorationBackground), |
| 209 TestDisplayItem(container1Layer, DisplayItem::EndSubsequence), | 205 TestDisplayItem(container1Layer, DisplayItem::EndSubsequence), |
| 210 TestDisplayItem(container2Layer, DisplayItem::BeginSubsequence), | 206 TestDisplayItem(container2Layer, DisplayItem::BeginSubsequence), |
| 211 TestDisplayItem(container2, DisplayItem::BoxDecorationBackground), | 207 TestDisplayItem(container2, DisplayItem::BoxDecorationBackground), |
| 212 TestDisplayItem(content2, DisplayItem::BoxDecorationBackground), | 208 TestDisplayItem(content2, DisplayItem::BoxDecorationBackground), |
| 213 TestDisplayItem(container2Layer, DisplayItem::EndSubsequence), | 209 TestDisplayItem(container2Layer, DisplayItem::EndSubsequence), |
| 214 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); | 210 TestDisplayItem(htmlLayer, DisplayItem::EndSubsequence)); |
| 215 } | 211 } |
| 216 | 212 |
| 217 } // namespace blink | 213 } // namespace blink |
| OLD | NEW |