| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 <gtest/gtest.h> | 5 #include <gtest/gtest.h> |
| 6 #include <memory> | 6 #include <memory> |
| 7 #include "core/dom/DOMNodeIds.h" |
| 7 #include "core/frame/FrameView.h" | 8 #include "core/frame/FrameView.h" |
| 8 #include "core/layout/api/LayoutViewItem.h" | 9 #include "core/layout/api/LayoutViewItem.h" |
| 9 #include "core/layout/compositing/CompositedLayerMapping.h" | 10 #include "core/layout/compositing/CompositedLayerMapping.h" |
| 10 #include "core/layout/compositing/PaintLayerCompositor.h" | 11 #include "core/layout/compositing/PaintLayerCompositor.h" |
| 11 #include "core/page/Page.h" | 12 #include "core/page/Page.h" |
| 13 #include "platform/graphics/CompositorElementId.h" |
| 12 #include "platform/graphics/CompositorMutableProperties.h" | 14 #include "platform/graphics/CompositorMutableProperties.h" |
| 13 #include "platform/graphics/CompositorMutation.h" | 15 #include "platform/graphics/CompositorMutation.h" |
| 14 #include "platform/graphics/GraphicsLayer.h" | 16 #include "platform/graphics/GraphicsLayer.h" |
| 15 #include "platform/testing/RuntimeEnabledFeaturesTestHelpers.h" | 17 #include "platform/testing/RuntimeEnabledFeaturesTestHelpers.h" |
| 16 #include "platform/testing/URLTestHelpers.h" | 18 #include "platform/testing/URLTestHelpers.h" |
| 17 #include "platform/testing/UnitTestHelpers.h" | 19 #include "platform/testing/UnitTestHelpers.h" |
| 18 #include "public/platform/Platform.h" | 20 #include "public/platform/Platform.h" |
| 19 #include "public/platform/WebLayer.h" | 21 #include "public/platform/WebLayer.h" |
| 20 #include "public/platform/WebLayerTreeView.h" | 22 #include "public/platform/WebLayerTreeView.h" |
| 21 #include "public/platform/WebURLLoaderMockFactory.h" | 23 #include "public/platform/WebURLLoaderMockFactory.h" |
| (...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 158 EXPECT_TRUE(!tallLayer); | 160 EXPECT_TRUE(!tallLayer); |
| 159 | 161 |
| 160 Element* proxiedElement = document->getElementById("proxied-transform"); | 162 Element* proxiedElement = document->getElementById("proxied-transform"); |
| 161 WebLayer* proxiedLayer = webLayerFromElement(proxiedElement); | 163 WebLayer* proxiedLayer = webLayerFromElement(proxiedElement); |
| 162 EXPECT_TRUE(proxiedLayer->compositorMutableProperties() & | 164 EXPECT_TRUE(proxiedLayer->compositorMutableProperties() & |
| 163 CompositorMutableProperty::kTransform); | 165 CompositorMutableProperty::kTransform); |
| 164 EXPECT_FALSE(proxiedLayer->compositorMutableProperties() & | 166 EXPECT_FALSE(proxiedLayer->compositorMutableProperties() & |
| 165 (CompositorMutableProperty::kScrollLeft | | 167 (CompositorMutableProperty::kScrollLeft | |
| 166 CompositorMutableProperty::kScrollTop | | 168 CompositorMutableProperty::kScrollTop | |
| 167 CompositorMutableProperty::kOpacity)); | 169 CompositorMutableProperty::kOpacity)); |
| 168 EXPECT_TRUE(proxiedLayer->elementId()); | 170 EXPECT_EQ(proxiedLayer->elementId(), |
| 171 createCompositorElementId(DOMNodeIds::idForNode(proxiedElement), |
| 172 CompositorSubElementId::Primary)); |
| 169 | 173 |
| 170 Element* scrollElement = document->getElementById("proxied-scroller"); | 174 Element* scrollElement = document->getElementById("proxied-scroller"); |
| 171 WebLayer* scrollLayer = scrollingWebLayerFromElement(scrollElement); | 175 WebLayer* scrollLayer = scrollingWebLayerFromElement(scrollElement); |
| 172 EXPECT_TRUE(scrollLayer->compositorMutableProperties() & | 176 EXPECT_TRUE(scrollLayer->compositorMutableProperties() & |
| 173 (CompositorMutableProperty::kScrollLeft | | 177 (CompositorMutableProperty::kScrollLeft | |
| 174 CompositorMutableProperty::kScrollTop)); | 178 CompositorMutableProperty::kScrollTop)); |
| 175 EXPECT_FALSE(scrollLayer->compositorMutableProperties() & | 179 EXPECT_FALSE(scrollLayer->compositorMutableProperties() & |
| 176 (CompositorMutableProperty::kTransform | | 180 (CompositorMutableProperty::kTransform | |
| 177 CompositorMutableProperty::kOpacity)); | 181 CompositorMutableProperty::kOpacity)); |
| 178 EXPECT_TRUE(scrollLayer->elementId()); | 182 EXPECT_EQ(scrollLayer->elementId(), |
| 183 createCompositorElementId(DOMNodeIds::idForNode(scrollElement), |
| 184 CompositorSubElementId::Scroll)); |
| 179 | 185 |
| 186 // Root scroll layer gets document node id. |
| 180 WebLayer* rootScrollLayer = getRootScrollLayer(); | 187 WebLayer* rootScrollLayer = getRootScrollLayer(); |
| 181 EXPECT_TRUE(rootScrollLayer->compositorMutableProperties() & | 188 EXPECT_TRUE(rootScrollLayer->compositorMutableProperties() & |
| 182 (CompositorMutableProperty::kScrollLeft | | 189 (CompositorMutableProperty::kScrollLeft | |
| 183 CompositorMutableProperty::kScrollTop)); | 190 CompositorMutableProperty::kScrollTop)); |
| 184 EXPECT_FALSE(rootScrollLayer->compositorMutableProperties() & | 191 EXPECT_FALSE(rootScrollLayer->compositorMutableProperties() & |
| 185 (CompositorMutableProperty::kTransform | | 192 (CompositorMutableProperty::kTransform | |
| 186 CompositorMutableProperty::kOpacity)); | 193 CompositorMutableProperty::kOpacity)); |
| 187 | 194 |
| 188 EXPECT_TRUE(rootScrollLayer->elementId()); | 195 EXPECT_EQ(rootScrollLayer->elementId(), |
| 196 createCompositorElementId(DOMNodeIds::idForNode(document), |
| 197 CompositorSubElementId::Scroll)); |
| 189 } | 198 } |
| 190 | 199 |
| 191 TEST_P(CompositorWorkerTest, noProxies) { | 200 TEST_P(CompositorWorkerTest, noProxies) { |
| 192 // This case is identical to compositor-proxy-basic, but no proxies have | 201 // This case is identical to compositor-proxy-basic, but no proxies have |
| 193 // actually been created. | 202 // actually been created. |
| 194 registerMockedHttpURLLoad("compositor-proxy-plumbing-no-proxies.html"); | 203 registerMockedHttpURLLoad("compositor-proxy-plumbing-no-proxies.html"); |
| 195 navigateTo(m_baseURL + "compositor-proxy-plumbing-no-proxies.html"); | 204 navigateTo(m_baseURL + "compositor-proxy-plumbing-no-proxies.html"); |
| 196 | 205 |
| 197 forceFullCompositingUpdate(); | 206 forceFullCompositingUpdate(); |
| 198 | 207 |
| (...skipping 168 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 367 | 376 |
| 368 const String& opacityValue = | 377 const String& opacityValue = |
| 369 document->domWindow() | 378 document->domWindow() |
| 370 ->getComputedStyle(proxiedElement, String()) | 379 ->getComputedStyle(proxiedElement, String()) |
| 371 ->getPropertyValueInternal(CSSPropertyOpacity); | 380 ->getPropertyValueInternal(CSSPropertyOpacity); |
| 372 EXPECT_EQ("0.8", opacityValue); | 381 EXPECT_EQ("0.8", opacityValue); |
| 373 } | 382 } |
| 374 } | 383 } |
| 375 | 384 |
| 376 } // namespace blink | 385 } // namespace blink |
| OLD | NEW |