Index: cc/LayerChromium.cpp |
diff --git a/cc/LayerChromium.cpp b/cc/LayerChromium.cpp |
deleted file mode 100644 |
index dc3bd677c8c4117c537be44d128f59d8b831a027..0000000000000000000000000000000000000000 |
--- a/cc/LayerChromium.cpp |
+++ /dev/null |
@@ -1,799 +0,0 @@ |
-// Copyright 2010 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "config.h" |
- |
-#if USE(ACCELERATED_COMPOSITING) |
-#include "LayerChromium.h" |
- |
-#include "CCActiveAnimation.h" |
-#include "CCAnimationEvents.h" |
-#include "CCLayerAnimationController.h" |
-#include "CCLayerImpl.h" |
-#include "CCLayerTreeHost.h" |
-#include "CCSettings.h" |
-#include <public/WebAnimationDelegate.h> |
-#include <public/WebLayerScrollClient.h> |
-#include <public/WebSize.h> |
- |
-using namespace std; |
-using WebKit::WebTransformationMatrix; |
- |
-namespace cc { |
- |
-static int s_nextLayerId = 1; |
- |
-scoped_refptr<LayerChromium> LayerChromium::create() |
-{ |
- return make_scoped_refptr(new LayerChromium()); |
-} |
- |
-LayerChromium::LayerChromium() |
- : m_needsDisplay(false) |
- , m_stackingOrderChanged(false) |
- , m_layerId(s_nextLayerId++) |
- , m_parent(0) |
- , m_layerTreeHost(0) |
- , m_layerAnimationController(CCLayerAnimationController::create(this)) |
- , m_scrollable(false) |
- , m_shouldScrollOnMainThread(false) |
- , m_haveWheelEventHandlers(false) |
- , m_nonFastScrollableRegionChanged(false) |
- , m_anchorPoint(0.5, 0.5) |
- , m_backgroundColor(0) |
- , m_debugBorderColor(0) |
- , m_debugBorderWidth(0) |
- , m_opacity(1.0) |
- , m_anchorPointZ(0) |
- , m_isContainerForFixedPositionLayers(false) |
- , m_fixedToContainerLayer(false) |
- , m_isDrawable(false) |
- , m_masksToBounds(false) |
- , m_contentsOpaque(false) |
- , m_doubleSided(true) |
- , m_useLCDText(false) |
- , m_preserves3D(false) |
- , m_useParentBackfaceVisibility(false) |
- , m_drawCheckerboardForMissingTiles(false) |
- , m_forceRenderSurface(false) |
- , m_replicaLayer(0) |
- , m_drawOpacity(0) |
- , m_drawOpacityIsAnimating(false) |
- , m_renderTarget(0) |
- , m_drawTransformIsAnimating(false) |
- , m_screenSpaceTransformIsAnimating(false) |
- , m_contentsScale(1.0) |
- , m_boundsContainPageScale(false) |
- , m_layerAnimationDelegate(0) |
- , m_layerScrollClient(0) |
-{ |
- if (m_layerId < 0) { |
- s_nextLayerId = 1; |
- m_layerId = s_nextLayerId++; |
- } |
-} |
- |
-LayerChromium::~LayerChromium() |
-{ |
- // Our parent should be holding a reference to us so there should be no |
- // way for us to be destroyed while we still have a parent. |
- ASSERT(!parent()); |
- |
- // Remove the parent reference from all children. |
- removeAllChildren(); |
-} |
- |
-void LayerChromium::setUseLCDText(bool useLCDText) |
-{ |
- m_useLCDText = useLCDText; |
-} |
- |
-void LayerChromium::setLayerTreeHost(CCLayerTreeHost* host) |
-{ |
- if (m_layerTreeHost == host) |
- return; |
- |
- m_layerTreeHost = host; |
- |
- for (size_t i = 0; i < m_children.size(); ++i) |
- m_children[i]->setLayerTreeHost(host); |
- |
- if (m_maskLayer) |
- m_maskLayer->setLayerTreeHost(host); |
- if (m_replicaLayer) |
- m_replicaLayer->setLayerTreeHost(host); |
- |
- // If this layer already has active animations, the host needs to be notified. |
- if (host && m_layerAnimationController->hasActiveAnimation()) |
- host->didAddAnimation(); |
-} |
- |
-void LayerChromium::setNeedsCommit() |
-{ |
- if (m_layerTreeHost) |
- m_layerTreeHost->setNeedsCommit(); |
-} |
- |
-IntRect LayerChromium::layerRectToContentRect(const WebKit::WebRect& layerRect) |
-{ |
- float widthScale = static_cast<float>(contentBounds().width()) / bounds().width(); |
- float heightScale = static_cast<float>(contentBounds().height()) / bounds().height(); |
- FloatRect contentRect(layerRect.x, layerRect.y, layerRect.width, layerRect.height); |
- contentRect.scale(widthScale, heightScale); |
- return enclosingIntRect(contentRect); |
-} |
- |
-void LayerChromium::setParent(LayerChromium* layer) |
-{ |
- ASSERT(!layer || !layer->hasAncestor(this)); |
- m_parent = layer; |
- setLayerTreeHost(m_parent ? m_parent->layerTreeHost() : 0); |
-} |
- |
-bool LayerChromium::hasAncestor(LayerChromium* ancestor) const |
-{ |
- for (LayerChromium* layer = parent(); layer; layer = layer->parent()) { |
- if (layer == ancestor) |
- return true; |
- } |
- return false; |
-} |
- |
-void LayerChromium::addChild(scoped_refptr<LayerChromium> child) |
-{ |
- insertChild(child, numChildren()); |
-} |
- |
-void LayerChromium::insertChild(scoped_refptr<LayerChromium> child, size_t index) |
-{ |
- index = min(index, m_children.size()); |
- child->removeFromParent(); |
- child->setParent(this); |
- child->m_stackingOrderChanged = true; |
- |
- LayerList::iterator iter = m_children.begin(); |
- m_children.insert(iter + index, child); |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::removeFromParent() |
-{ |
- if (m_parent) |
- m_parent->removeChild(this); |
-} |
- |
-void LayerChromium::removeChild(LayerChromium* child) |
-{ |
- for (LayerList::iterator iter = m_children.begin(); iter != m_children.end(); ++iter) |
- { |
- if (*iter != child) |
- continue; |
- |
- child->setParent(0); |
- m_children.erase(iter); |
- setNeedsCommit(); |
- return; |
- } |
-} |
- |
-void LayerChromium::replaceChild(LayerChromium* reference, scoped_refptr<LayerChromium> newLayer) |
-{ |
- ASSERT_ARG(reference, reference); |
- ASSERT_ARG(reference, reference->parent() == this); |
- |
- if (reference == newLayer) |
- return; |
- |
- int referenceIndex = indexOfChild(reference); |
- if (referenceIndex == -1) { |
- ASSERT_NOT_REACHED(); |
- return; |
- } |
- |
- reference->removeFromParent(); |
- |
- if (newLayer) { |
- newLayer->removeFromParent(); |
- insertChild(newLayer, referenceIndex); |
- } |
-} |
- |
-int LayerChromium::indexOfChild(const LayerChromium* reference) |
-{ |
- for (size_t i = 0; i < m_children.size(); i++) { |
- if (m_children[i] == reference) |
- return i; |
- } |
- return -1; |
-} |
- |
-void LayerChromium::setBounds(const IntSize& size) |
-{ |
- if (bounds() == size) |
- return; |
- |
- bool firstResize = bounds().isEmpty() && !size.isEmpty(); |
- |
- m_bounds = size; |
- |
- if (firstResize) |
- setNeedsDisplay(); |
- else |
- setNeedsCommit(); |
-} |
- |
-LayerChromium* LayerChromium::rootLayer() |
-{ |
- LayerChromium* layer = this; |
- while (layer->parent()) |
- layer = layer->parent(); |
- return layer; |
-} |
- |
-void LayerChromium::removeAllChildren() |
-{ |
- while (m_children.size()) { |
- LayerChromium* layer = m_children[0].get(); |
- ASSERT(layer->parent()); |
- layer->removeFromParent(); |
- } |
-} |
- |
-void LayerChromium::setChildren(const LayerList& children) |
-{ |
- if (children == m_children) |
- return; |
- |
- removeAllChildren(); |
- size_t listSize = children.size(); |
- for (size_t i = 0; i < listSize; i++) |
- addChild(children[i]); |
-} |
- |
-void LayerChromium::setAnchorPoint(const FloatPoint& anchorPoint) |
-{ |
- if (m_anchorPoint == anchorPoint) |
- return; |
- m_anchorPoint = anchorPoint; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setAnchorPointZ(float anchorPointZ) |
-{ |
- if (m_anchorPointZ == anchorPointZ) |
- return; |
- m_anchorPointZ = anchorPointZ; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setBackgroundColor(SkColor backgroundColor) |
-{ |
- if (m_backgroundColor == backgroundColor) |
- return; |
- m_backgroundColor = backgroundColor; |
- setNeedsCommit(); |
-} |
- |
-IntSize LayerChromium::contentBounds() const |
-{ |
- return bounds(); |
-} |
- |
-void LayerChromium::setMasksToBounds(bool masksToBounds) |
-{ |
- if (m_masksToBounds == masksToBounds) |
- return; |
- m_masksToBounds = masksToBounds; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setMaskLayer(LayerChromium* maskLayer) |
-{ |
- if (m_maskLayer == maskLayer) |
- return; |
- if (m_maskLayer) |
- m_maskLayer->setLayerTreeHost(0); |
- m_maskLayer = maskLayer; |
- if (m_maskLayer) { |
- m_maskLayer->setLayerTreeHost(m_layerTreeHost); |
- m_maskLayer->setIsMask(true); |
- } |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setReplicaLayer(LayerChromium* layer) |
-{ |
- if (m_replicaLayer == layer) |
- return; |
- if (m_replicaLayer) |
- m_replicaLayer->setLayerTreeHost(0); |
- m_replicaLayer = layer; |
- if (m_replicaLayer) |
- m_replicaLayer->setLayerTreeHost(m_layerTreeHost); |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setFilters(const WebKit::WebFilterOperations& filters) |
-{ |
- if (m_filters == filters) |
- return; |
- m_filters = filters; |
- setNeedsCommit(); |
- if (!filters.isEmpty()) |
- CCLayerTreeHost::setNeedsFilterContext(true); |
-} |
- |
-void LayerChromium::setBackgroundFilters(const WebKit::WebFilterOperations& backgroundFilters) |
-{ |
- if (m_backgroundFilters == backgroundFilters) |
- return; |
- m_backgroundFilters = backgroundFilters; |
- setNeedsCommit(); |
- if (!backgroundFilters.isEmpty()) |
- CCLayerTreeHost::setNeedsFilterContext(true); |
-} |
- |
-bool LayerChromium::needsDisplay() const |
-{ |
- return m_needsDisplay; |
-} |
- |
-void LayerChromium::setOpacity(float opacity) |
-{ |
- if (m_opacity == opacity) |
- return; |
- m_opacity = opacity; |
- setNeedsCommit(); |
-} |
- |
-bool LayerChromium::opacityIsAnimating() const |
-{ |
- return m_layerAnimationController->isAnimatingProperty(CCActiveAnimation::Opacity); |
-} |
- |
-void LayerChromium::setContentsOpaque(bool opaque) |
-{ |
- if (m_contentsOpaque == opaque) |
- return; |
- m_contentsOpaque = opaque; |
- setNeedsDisplay(); |
-} |
- |
-void LayerChromium::setPosition(const FloatPoint& position) |
-{ |
- if (m_position == position) |
- return; |
- m_position = position; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setSublayerTransform(const WebTransformationMatrix& sublayerTransform) |
-{ |
- if (m_sublayerTransform == sublayerTransform) |
- return; |
- m_sublayerTransform = sublayerTransform; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setTransform(const WebTransformationMatrix& transform) |
-{ |
- if (m_transform == transform) |
- return; |
- m_transform = transform; |
- setNeedsCommit(); |
-} |
- |
-bool LayerChromium::transformIsAnimating() const |
-{ |
- return m_layerAnimationController->isAnimatingProperty(CCActiveAnimation::Transform); |
-} |
- |
-void LayerChromium::setScrollPosition(const IntPoint& scrollPosition) |
-{ |
- if (m_scrollPosition == scrollPosition) |
- return; |
- m_scrollPosition = scrollPosition; |
- if (m_layerScrollClient) |
- m_layerScrollClient->didScroll(); |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setMaxScrollPosition(const IntSize& maxScrollPosition) |
-{ |
- if (m_maxScrollPosition == maxScrollPosition) |
- return; |
- m_maxScrollPosition = maxScrollPosition; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setScrollable(bool scrollable) |
-{ |
- if (m_scrollable == scrollable) |
- return; |
- m_scrollable = scrollable; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setShouldScrollOnMainThread(bool shouldScrollOnMainThread) |
-{ |
- if (m_shouldScrollOnMainThread == shouldScrollOnMainThread) |
- return; |
- m_shouldScrollOnMainThread = shouldScrollOnMainThread; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setHaveWheelEventHandlers(bool haveWheelEventHandlers) |
-{ |
- if (m_haveWheelEventHandlers == haveWheelEventHandlers) |
- return; |
- m_haveWheelEventHandlers = haveWheelEventHandlers; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setNonFastScrollableRegion(const Region& region) |
-{ |
- if (m_nonFastScrollableRegion == region) |
- return; |
- m_nonFastScrollableRegion = region; |
- m_nonFastScrollableRegionChanged = true; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setDrawCheckerboardForMissingTiles(bool checkerboard) |
-{ |
- if (m_drawCheckerboardForMissingTiles == checkerboard) |
- return; |
- m_drawCheckerboardForMissingTiles = checkerboard; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setForceRenderSurface(bool force) |
-{ |
- if (m_forceRenderSurface == force) |
- return; |
- m_forceRenderSurface = force; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setImplTransform(const WebTransformationMatrix& transform) |
-{ |
- if (m_implTransform == transform) |
- return; |
- m_implTransform = transform; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setDoubleSided(bool doubleSided) |
-{ |
- if (m_doubleSided == doubleSided) |
- return; |
- m_doubleSided = doubleSided; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setIsDrawable(bool isDrawable) |
-{ |
- if (m_isDrawable == isDrawable) |
- return; |
- |
- m_isDrawable = isDrawable; |
- setNeedsCommit(); |
-} |
- |
-LayerChromium* LayerChromium::parent() const |
-{ |
- return m_parent; |
-} |
- |
-void LayerChromium::setNeedsDisplayRect(const FloatRect& dirtyRect) |
-{ |
- m_updateRect.unite(dirtyRect); |
- |
- // Simply mark the contents as dirty. For non-root layers, the call to |
- // setNeedsCommit will schedule a fresh compositing pass. |
- // For the root layer, setNeedsCommit has no effect. |
- if (!dirtyRect.isEmpty()) |
- m_needsDisplay = true; |
- |
- setNeedsCommit(); |
-} |
- |
-bool LayerChromium::descendantIsFixedToContainerLayer() const |
-{ |
- for (size_t i = 0; i < m_children.size(); ++i) { |
- if (m_children[i]->fixedToContainerLayer() || m_children[i]->descendantIsFixedToContainerLayer()) |
- return true; |
- } |
- return false; |
-} |
- |
-void LayerChromium::setIsContainerForFixedPositionLayers(bool isContainerForFixedPositionLayers) |
-{ |
- if (m_isContainerForFixedPositionLayers == isContainerForFixedPositionLayers) |
- return; |
- m_isContainerForFixedPositionLayers = isContainerForFixedPositionLayers; |
- |
- if (m_layerTreeHost && m_layerTreeHost->commitRequested()) |
- return; |
- |
- // Only request a commit if we have a fixed positioned descendant. |
- if (descendantIsFixedToContainerLayer()) |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setFixedToContainerLayer(bool fixedToContainerLayer) |
-{ |
- if (m_fixedToContainerLayer == fixedToContainerLayer) |
- return; |
- m_fixedToContainerLayer = fixedToContainerLayer; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::pushPropertiesTo(CCLayerImpl* layer) |
-{ |
- layer->setAnchorPoint(m_anchorPoint); |
- layer->setAnchorPointZ(m_anchorPointZ); |
- layer->setBackgroundColor(m_backgroundColor); |
- layer->setBounds(m_bounds); |
- layer->setContentBounds(contentBounds()); |
- layer->setDebugBorderColor(m_debugBorderColor); |
- layer->setDebugBorderWidth(m_debugBorderWidth); |
- layer->setDebugName(m_debugName); |
- layer->setDoubleSided(m_doubleSided); |
- layer->setDrawCheckerboardForMissingTiles(m_drawCheckerboardForMissingTiles); |
- layer->setForceRenderSurface(m_forceRenderSurface); |
- layer->setDrawsContent(drawsContent()); |
- layer->setFilters(filters()); |
- layer->setBackgroundFilters(backgroundFilters()); |
- layer->setUseLCDText(m_useLCDText); |
- layer->setMasksToBounds(m_masksToBounds); |
- layer->setScrollable(m_scrollable); |
- layer->setShouldScrollOnMainThread(m_shouldScrollOnMainThread); |
- layer->setHaveWheelEventHandlers(m_haveWheelEventHandlers); |
- // Copying a Region is more expensive than most layer properties, since it involves copying two Vectors that may be |
- // arbitrarily large depending on page content, so we only push the property if it's changed. |
- if (m_nonFastScrollableRegionChanged) { |
- layer->setNonFastScrollableRegion(m_nonFastScrollableRegion); |
- m_nonFastScrollableRegionChanged = false; |
- } |
- layer->setContentsOpaque(m_contentsOpaque); |
- if (!opacityIsAnimating()) |
- layer->setOpacity(m_opacity); |
- layer->setPosition(m_position); |
- layer->setIsContainerForFixedPositionLayers(m_isContainerForFixedPositionLayers); |
- layer->setFixedToContainerLayer(m_fixedToContainerLayer); |
- layer->setPreserves3D(preserves3D()); |
- layer->setUseParentBackfaceVisibility(m_useParentBackfaceVisibility); |
- layer->setScrollPosition(m_scrollPosition); |
- layer->setMaxScrollPosition(m_maxScrollPosition); |
- layer->setSublayerTransform(m_sublayerTransform); |
- if (!transformIsAnimating()) |
- layer->setTransform(m_transform); |
- |
- // If the main thread commits multiple times before the impl thread actually draws, then damage tracking |
- // will become incorrect if we simply clobber the updateRect here. The CCLayerImpl's updateRect needs to |
- // accumulate (i.e. union) any update changes that have occurred on the main thread. |
- m_updateRect.uniteIfNonZero(layer->updateRect()); |
- layer->setUpdateRect(m_updateRect); |
- |
- layer->setScrollDelta(layer->scrollDelta() - layer->sentScrollDelta()); |
- layer->setSentScrollDelta(IntSize()); |
- |
- layer->setStackingOrderChanged(m_stackingOrderChanged); |
- |
- if (maskLayer()) |
- maskLayer()->pushPropertiesTo(layer->maskLayer()); |
- if (replicaLayer()) |
- replicaLayer()->pushPropertiesTo(layer->replicaLayer()); |
- |
- m_layerAnimationController->pushAnimationUpdatesTo(layer->layerAnimationController()); |
- |
- // Reset any state that should be cleared for the next update. |
- m_stackingOrderChanged = false; |
- m_updateRect = FloatRect(); |
-} |
- |
-scoped_ptr<CCLayerImpl> LayerChromium::createCCLayerImpl() |
-{ |
- return CCLayerImpl::create(m_layerId); |
-} |
- |
-bool LayerChromium::drawsContent() const |
-{ |
- return m_isDrawable; |
-} |
- |
-bool LayerChromium::needMoreUpdates() |
-{ |
- return false; |
-} |
- |
-bool LayerChromium::needsContentsScale() const |
-{ |
- return false; |
-} |
- |
-void LayerChromium::setDebugBorderColor(SkColor color) |
-{ |
- m_debugBorderColor = color; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setDebugBorderWidth(float width) |
-{ |
- m_debugBorderWidth = width; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setDebugName(const std::string& debugName) |
-{ |
- m_debugName = debugName; |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setContentsScale(float contentsScale) |
-{ |
- if (!needsContentsScale() || m_contentsScale == contentsScale) |
- return; |
- m_contentsScale = contentsScale; |
- |
- setNeedsDisplay(); |
-} |
- |
-void LayerChromium::setBoundsContainPageScale(bool boundsContainPageScale) |
-{ |
- for (size_t i = 0; i < m_children.size(); ++i) |
- m_children[i]->setBoundsContainPageScale(boundsContainPageScale); |
- |
- if (boundsContainPageScale == m_boundsContainPageScale) |
- return; |
- |
- m_boundsContainPageScale = boundsContainPageScale; |
- setNeedsDisplay(); |
-} |
- |
-void LayerChromium::createRenderSurface() |
-{ |
- ASSERT(!m_renderSurface); |
- m_renderSurface = make_scoped_ptr(new RenderSurfaceChromium(this)); |
- setRenderTarget(this); |
-} |
- |
-bool LayerChromium::descendantDrawsContent() |
-{ |
- for (size_t i = 0; i < m_children.size(); ++i) { |
- if (m_children[i]->drawsContent() || m_children[i]->descendantDrawsContent()) |
- return true; |
- } |
- return false; |
-} |
- |
-int LayerChromium::id() const |
-{ |
- return m_layerId; |
-} |
- |
-float LayerChromium::opacity() const |
-{ |
- return m_opacity; |
-} |
- |
-void LayerChromium::setOpacityFromAnimation(float opacity) |
-{ |
- // This is called due to an ongoing accelerated animation. Since this animation is |
- // also being run on the impl thread, there is no need to request a commit to push |
- // this value over, so set the value directly rather than calling setOpacity. |
- m_opacity = opacity; |
-} |
- |
-const WebKit::WebTransformationMatrix& LayerChromium::transform() const |
-{ |
- return m_transform; |
-} |
- |
-void LayerChromium::setTransformFromAnimation(const WebTransformationMatrix& transform) |
-{ |
- // This is called due to an ongoing accelerated animation. Since this animation is |
- // also being run on the impl thread, there is no need to request a commit to push |
- // this value over, so set this value directly rather than calling setTransform. |
- m_transform = transform; |
-} |
- |
-bool LayerChromium::addAnimation(scoped_ptr <CCActiveAnimation> animation) |
-{ |
- // WebCore currently assumes that accelerated animations will start soon |
- // after the animation is added. However we cannot guarantee that if we do |
- // not have a layerTreeHost that will setNeedsCommit(). |
- if (!m_layerTreeHost) |
- return false; |
- |
- if (!CCSettings::acceleratedAnimationEnabled()) |
- return false; |
- |
- m_layerAnimationController->addAnimation(animation.Pass()); |
- if (m_layerTreeHost) { |
- m_layerTreeHost->didAddAnimation(); |
- setNeedsCommit(); |
- } |
- return true; |
-} |
- |
-void LayerChromium::pauseAnimation(int animationId, double timeOffset) |
-{ |
- m_layerAnimationController->pauseAnimation(animationId, timeOffset); |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::removeAnimation(int animationId) |
-{ |
- m_layerAnimationController->removeAnimation(animationId); |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::suspendAnimations(double monotonicTime) |
-{ |
- m_layerAnimationController->suspendAnimations(monotonicTime); |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::resumeAnimations(double monotonicTime) |
-{ |
- m_layerAnimationController->resumeAnimations(monotonicTime); |
- setNeedsCommit(); |
-} |
- |
-void LayerChromium::setLayerAnimationController(scoped_ptr<CCLayerAnimationController> layerAnimationController) |
-{ |
- m_layerAnimationController = layerAnimationController.Pass(); |
- if (m_layerAnimationController) { |
- m_layerAnimationController->setClient(this); |
- m_layerAnimationController->setForceSync(); |
- } |
- setNeedsCommit(); |
-} |
- |
-scoped_ptr<CCLayerAnimationController> LayerChromium::releaseLayerAnimationController() |
-{ |
- scoped_ptr<CCLayerAnimationController> toReturn = m_layerAnimationController.Pass(); |
- m_layerAnimationController = CCLayerAnimationController::create(this); |
- return toReturn.Pass(); |
-} |
- |
-bool LayerChromium::hasActiveAnimation() const |
-{ |
- return m_layerAnimationController->hasActiveAnimation(); |
-} |
- |
-void LayerChromium::notifyAnimationStarted(const CCAnimationEvent& event, double wallClockTime) |
-{ |
- m_layerAnimationController->notifyAnimationStarted(event); |
- if (m_layerAnimationDelegate) |
- m_layerAnimationDelegate->notifyAnimationStarted(wallClockTime); |
-} |
- |
-void LayerChromium::notifyAnimationFinished(double wallClockTime) |
-{ |
- if (m_layerAnimationDelegate) |
- m_layerAnimationDelegate->notifyAnimationFinished(wallClockTime); |
-} |
- |
-Region LayerChromium::visibleContentOpaqueRegion() const |
-{ |
- if (contentsOpaque()) |
- return visibleContentRect(); |
- return Region(); |
-} |
- |
-ScrollbarLayerChromium* LayerChromium::toScrollbarLayerChromium() |
-{ |
- return 0; |
-} |
- |
-void sortLayers(std::vector<scoped_refptr<LayerChromium> >::iterator, std::vector<scoped_refptr<LayerChromium> >::iterator, void*) |
-{ |
- // Currently we don't use z-order to decide what to paint, so there's no need to actually sort LayerChromiums. |
-} |
- |
-} |
-#endif // USE(ACCELERATED_COMPOSITING) |