| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "core/paint/PaintLayerScrollableAreaTest.h" | 5 #include "core/paint/PaintLayerScrollableAreaTest.h" |
| 6 | 6 |
| 7 #include "platform/graphics/GraphicsLayer.h" | 7 #include "platform/graphics/GraphicsLayer.h" |
| 8 | 8 |
| 9 namespace blink { | 9 namespace blink { |
| 10 | 10 |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 "<div id='scroller6' class='scroller' style='background: url(data:image/
png;base64,iVBORw0KGgoAAAANSUhEUg) local, white padding-box; padding: 10px;'><di
v class='spacer'></div></div>" | 27 "<div id='scroller6' class='scroller' style='background: url(data:image/
png;base64,iVBORw0KGgoAAAANSUhEUg) local, white padding-box; padding: 10px;'><di
v class='spacer'></div></div>" |
| 28 "<div id='scroller7' class='scroller' style='background: url(data:image/
png;base64,iVBORw0KGgoAAAANSUhEUg) local, white content-box; padding: 10px;'><di
v class='spacer'></div></div>" | 28 "<div id='scroller7' class='scroller' style='background: url(data:image/
png;base64,iVBORw0KGgoAAAANSUhEUg) local, white content-box; padding: 10px;'><di
v class='spacer'></div></div>" |
| 29 "<div id='scroller8' class='scroller' style='background: white border-bo
x;'><div class='spacer'></div></div>" | 29 "<div id='scroller8' class='scroller' style='background: white border-bo
x;'><div class='spacer'></div></div>" |
| 30 "<div id='scroller9' class='scroller' style='background: white border-bo
x; border: 10px solid black;'><div class='spacer'></div></div>" | 30 "<div id='scroller9' class='scroller' style='background: white border-bo
x; border: 10px solid black;'><div class='spacer'></div></div>" |
| 31 "<div id='scroller10' class='scroller' style='background: white border-b
ox; border: 10px solid rgba(0, 0, 0, 0.5);'><div class='spacer'></div></div>" | 31 "<div id='scroller10' class='scroller' style='background: white border-b
ox; border: 10px solid rgba(0, 0, 0, 0.5);'><div class='spacer'></div></div>" |
| 32 "<div id='scroller11' class='scroller' style='background: white content-
box;'><div class='spacer'></div></div>" | 32 "<div id='scroller11' class='scroller' style='background: white content-
box;'><div class='spacer'></div></div>" |
| 33 "<div id='scroller12' class='scroller' style='background: white content-
box; padding: 10px;'><div class='spacer'></div></div>" | 33 "<div id='scroller12' class='scroller' style='background: white content-
box; padding: 10px;'><div class='spacer'></div></div>" |
| 34 "<div id='scroller13' class='scroller' style='background: white border-b
ox;'><div class='spacer'></div></div>" | 34 "<div id='scroller13' class='scroller' style='background: white border-b
ox;'><div class='spacer'></div></div>" |
| 35 "<div id='scroller14' class='scroller' style='background: white; border:
1px solid black; outline: 1px solid blue; outline-offset: -1px;'><div class='sp
acer'></div></div>" | 35 "<div id='scroller14' class='scroller' style='background: white; border:
1px solid black; outline: 1px solid blue; outline-offset: -1px;'><div class='sp
acer'></div></div>" |
| 36 "<div id='scroller15' class='scroller' style='background: white; border:
1px solid black; outline: 1px solid blue; outline-offset: -2px;'><div class='sp
acer'></div></div>" | 36 "<div id='scroller15' class='scroller' style='background: white; border:
1px solid black; outline: 1px solid blue; outline-offset: -2px;'><div class='sp
acer'></div></div>" |
| 37 "<div id='scroller16' class='scroller' style='background: white; border
1px solid black; border-radius: 2px;'><div class='spacer'></div></div>" |
| 37 ); | 38 ); |
| 38 | 39 |
| 39 // #scroller1 cannot paint background into scrolling contents layer because
it has a negative z-index child. | 40 // #scroller1 cannot paint background into scrolling contents layer because
it has a negative z-index child. |
| 40 EXPECT_FALSE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller1")); | 41 EXPECT_FALSE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller1")); |
| 41 | 42 |
| 42 // #scroller2 cannot paint background into scrolling contents layer because
it has a content-box clip without local attachment. | 43 // #scroller2 cannot paint background into scrolling contents layer because
it has a content-box clip without local attachment. |
| 43 EXPECT_FALSE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller2")); | 44 EXPECT_FALSE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller2")); |
| 44 | 45 |
| 45 // #scroller3 can paint background into scrolling contents layer. | 46 // #scroller3 can paint background into scrolling contents layer. |
| 46 EXPECT_TRUE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller3")); | 47 EXPECT_TRUE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller3")); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 83 // scrollbar which the background may need to draw under. | 84 // scrollbar which the background may need to draw under. |
| 84 EXPECT_FALSE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller13")); | 85 EXPECT_FALSE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller13")); |
| 85 | 86 |
| 86 // #scroller14 can paint background into scrolling contents layer because th
e outline is drawn outside the | 87 // #scroller14 can paint background into scrolling contents layer because th
e outline is drawn outside the |
| 87 // padding box. | 88 // padding box. |
| 88 EXPECT_TRUE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller14")); | 89 EXPECT_TRUE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller14")); |
| 89 | 90 |
| 90 // #scroller15 cannot paint background into scrolling contents layer because
the outline is drawn inside | 91 // #scroller15 cannot paint background into scrolling contents layer because
the outline is drawn inside |
| 91 // the padding box. | 92 // the padding box. |
| 92 EXPECT_FALSE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller15")); | 93 EXPECT_FALSE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller15")); |
| 94 |
| 95 // #scroller16 cannot paint background into scrolling contents layer because
it has a |
| 96 // border radius. |
| 97 EXPECT_FALSE(shouldPaintBackgroundOntoScrollingContentsLayer("scroller16")); |
| 93 } | 98 } |
| 94 | 99 |
| 95 TEST_F(PaintLayerScrollableAreaTest, OpaqueLayersPromoted) | 100 TEST_F(PaintLayerScrollableAreaTest, OpaqueLayersPromoted) |
| 96 { | 101 { |
| 97 RuntimeEnabledFeatures::setCompositeOpaqueScrollersEnabled(true); | 102 RuntimeEnabledFeatures::setCompositeOpaqueScrollersEnabled(true); |
| 98 | 103 |
| 99 setBodyInnerHTML( | 104 setBodyInnerHTML( |
| 100 "<style>" | 105 "<style>" |
| 101 "#scroller { overflow: scroll; height: 200px; width: 200px; background:
white local content-box; border: 10px solid rgba(0, 255, 0, 0.5); }" | 106 "#scroller { overflow: scroll; height: 200px; width: 200px; background:
white local content-box; border: 10px solid rgba(0, 255, 0, 0.5); }" |
| 102 "#scrolled { height: 300px; }" | 107 "#scrolled { height: 300px; }" |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 187 paintLayer = toLayoutBoxModelObject(scroller->layoutObject())->layer(); | 192 paintLayer = toLayoutBoxModelObject(scroller->layoutObject())->layer(); |
| 188 ASSERT_TRUE(paintLayer); | 193 ASSERT_TRUE(paintLayer); |
| 189 EXPECT_TRUE(paintLayer->needsCompositedScrolling()); | 194 EXPECT_TRUE(paintLayer->needsCompositedScrolling()); |
| 190 EXPECT_TRUE(paintLayer->graphicsLayerBacking()); | 195 EXPECT_TRUE(paintLayer->graphicsLayerBacking()); |
| 191 ASSERT_TRUE(paintLayer->graphicsLayerBackingForScrolling()); | 196 ASSERT_TRUE(paintLayer->graphicsLayerBackingForScrolling()); |
| 192 EXPECT_TRUE(paintLayer->graphicsLayerBackingForScrolling()->contentsOpaque()
); | 197 EXPECT_TRUE(paintLayer->graphicsLayerBackingForScrolling()->contentsOpaque()
); |
| 193 } | 198 } |
| 194 | 199 |
| 195 | 200 |
| 196 } | 201 } |
| OLD | NEW |