TiledCoreAnimationDrawingAreaProxy.h [plain text]
#ifndef TiledCoreAnimationDrawingAreaProxy_h
#define TiledCoreAnimationDrawingAreaProxy_h
#if !PLATFORM(IOS)
#include "DrawingAreaProxy.h"
namespace WebKit {
class TiledCoreAnimationDrawingAreaProxy : public DrawingAreaProxy {
public:
explicit TiledCoreAnimationDrawingAreaProxy(WebPageProxy*);
virtual ~TiledCoreAnimationDrawingAreaProxy();
private:
virtual void deviceScaleFactorDidChange() override;
virtual void sizeDidChange() override;
virtual void waitForPossibleGeometryUpdate(std::chrono::milliseconds timeout = didUpdateBackingStoreStateTimeout()) override;
virtual void colorSpaceDidChange() override;
virtual void minimumLayoutSizeDidChange() override;
virtual void enterAcceleratedCompositingMode(uint64_t backingStoreStateID, const LayerTreeContext&) override;
virtual void exitAcceleratedCompositingMode(uint64_t backingStoreStateID, const UpdateInfo&) override;
virtual void updateAcceleratedCompositingMode(uint64_t backingStoreStateID, const LayerTreeContext&) override;
virtual void adjustTransientZoom(double scale, WebCore::FloatPoint origin) override;
virtual void commitTransientZoom(double scale, WebCore::FloatPoint origin) override;
virtual void waitForDidUpdateViewState() override;
virtual void didUpdateGeometry() override;
virtual void intrinsicContentSizeDidChange(const WebCore::IntSize& newIntrinsicContentSize) override;
void sendUpdateGeometry();
bool m_isWaitingForDidUpdateGeometry;
WebCore::IntSize m_lastSentSize;
WebCore::IntSize m_lastSentLayerPosition;
WebCore::IntSize m_lastSentMinimumLayoutSize;
};
DRAWING_AREA_PROXY_TYPE_CASTS(TiledCoreAnimationDrawingAreaProxy, type() == DrawingAreaTypeTiledCoreAnimation);
}
#endif // !PLATFORM(IOS)
#endif // TiledCoreAnimationDrawingAreaProxy_h