PlatformCALayerClient.h [plain text]
#pragma once
#include "GraphicsLayer.h"
namespace WebCore {
class FloatRect;
class GraphicsContext;
class PlatformCALayer;
class PlatformCALayerClient {
public:
virtual void platformCALayerLayoutSublayersOfLayer(PlatformCALayer*) { }
virtual bool platformCALayerRespondsToLayoutChanges() const { return false; }
virtual void platformCALayerCustomSublayersChanged(PlatformCALayer*) { }
virtual void platformCALayerAnimationStarted(const String& , MonotonicTime) { }
virtual void platformCALayerAnimationEnded(const String& ) { }
virtual GraphicsLayer::CompositingCoordinatesOrientation platformCALayerContentsOrientation() const { return GraphicsLayer::CompositingCoordinatesOrientation::TopDown; }
virtual void platformCALayerPaintContents(PlatformCALayer*, GraphicsContext&, const FloatRect& inClip, GraphicsLayerPaintBehavior) = 0;
virtual bool platformCALayerShowDebugBorders() const { return false; }
virtual bool platformCALayerShowRepaintCounter(PlatformCALayer*) const { return false; }
virtual int platformCALayerRepaintCount(PlatformCALayer*) const { return 0; }
virtual int platformCALayerIncrementRepaintCount(PlatformCALayer*) { return 0; }
virtual bool platformCALayerContentsOpaque() const = 0;
virtual bool platformCALayerDrawsContent() const = 0;
virtual void platformCALayerLayerDidDisplay(PlatformCALayer*) { }
virtual void platformCALayerSetNeedsToRevalidateTiles() { }
virtual float platformCALayerDeviceScaleFactor() const = 0;
virtual float platformCALayerContentsScaleMultiplierForNewTiles(PlatformCALayer*) const { return 1; }
virtual bool platformCALayerShouldAggressivelyRetainTiles(PlatformCALayer*) const { return false; }
virtual bool platformCALayerShouldTemporarilyRetainTileCohorts(PlatformCALayer*) const { return true; }
virtual bool platformCALayerUseGiantTiles() const { return false; }
virtual bool isCommittingChanges() const { return false; }
virtual bool isUsingDisplayListDrawing(PlatformCALayer*) const { return false; }
virtual void platformCALayerLogFilledVisibleFreshTile(unsigned ) { }
protected:
virtual ~PlatformCALayerClient() = default;
};
}