diff options
author | Ben Murdoch <benm@google.com> | 2011-06-02 12:07:03 +0100 |
---|---|---|
committer | Ben Murdoch <benm@google.com> | 2011-06-10 10:47:21 +0100 |
commit | 2daae5fd11344eaa88a0d92b0f6d65f8d2255c00 (patch) | |
tree | e4964fbd1cb70599f7718ff03e50ea1dab33890b /Source/WebKit2/WebProcess/WebPage/ca/LayerTreeHostCA.h | |
parent | 87bdf0060a247bfbe668342b87e0874182e0ffa9 (diff) | |
download | external_webkit-2daae5fd11344eaa88a0d92b0f6d65f8d2255c00.zip external_webkit-2daae5fd11344eaa88a0d92b0f6d65f8d2255c00.tar.gz external_webkit-2daae5fd11344eaa88a0d92b0f6d65f8d2255c00.tar.bz2 |
Merge WebKit at r84325: Initial merge by git.
Change-Id: Ic1a909300ecc0a13ddc6b4e784371d2ac6e3d59b
Diffstat (limited to 'Source/WebKit2/WebProcess/WebPage/ca/LayerTreeHostCA.h')
-rw-r--r-- | Source/WebKit2/WebProcess/WebPage/ca/LayerTreeHostCA.h | 49 |
1 files changed, 18 insertions, 31 deletions
diff --git a/Source/WebKit2/WebProcess/WebPage/ca/LayerTreeHostCA.h b/Source/WebKit2/WebProcess/WebPage/ca/LayerTreeHostCA.h index ba4e33a..3a62d15 100644 --- a/Source/WebKit2/WebProcess/WebPage/ca/LayerTreeHostCA.h +++ b/Source/WebKit2/WebProcess/WebPage/ca/LayerTreeHostCA.h @@ -31,35 +31,36 @@ #include <WebCore/GraphicsLayerClient.h> #include <wtf/OwnPtr.h> -#if PLATFORM(MAC) -#include <wtf/RetainPtr.h> -#endif - -#if PLATFORM(MAC) -typedef struct __WKCARemoteLayerClientRef* WKCARemoteLayerClientRef; -#endif - namespace WebKit { class LayerTreeHostCA : public LayerTreeHost, WebCore::GraphicsLayerClient { public: - static PassRefPtr<LayerTreeHostCA> create(WebPage*); - ~LayerTreeHostCA(); + virtual ~LayerTreeHostCA(); -private: +protected: explicit LayerTreeHostCA(WebPage*); + WebCore::GraphicsLayer* rootLayer() const { return m_rootLayer.get(); } + + void initialize(); + void performScheduledLayerFlush(); + + // LayerTreeHost. + virtual void invalidate(); + virtual void sizeDidChange(const WebCore::IntSize& newSize); + virtual void forceRepaint(); + + // LayerTreeHostCA + virtual void didPerformScheduledLayerFlush(); + +private: // LayerTreeHost. virtual const LayerTreeContext& layerTreeContext(); - virtual void scheduleLayerFlush(); virtual void setShouldNotifyAfterNextScheduledLayerFlush(bool); virtual void setRootCompositingLayer(WebCore::GraphicsLayer*); - virtual void invalidate(); virtual void setNonCompositedContentsNeedDisplay(const WebCore::IntRect&); virtual void scrollNonCompositedContents(const WebCore::IntRect& scrollRect, const WebCore::IntSize& scrollOffset); - virtual void sizeDidChange(const WebCore::IntSize& newSize); - virtual void forceRepaint(); virtual void didInstallPageOverlay(); virtual void didUninstallPageOverlay(); @@ -72,23 +73,14 @@ private: virtual bool showDebugBorders() const; virtual bool showRepaintCounter() const; - void platformInitialize(); - void platformInvalidate(); - void platformSizeDidChange(); - void platformForceRepaint(); + // LayerTreeHostCA + virtual void platformInitialize(LayerTreeContext&) = 0; - void performScheduledLayerFlush(); - void didPerformScheduledLayerFlush(); - void platformDidPerformScheduledLayerFlush(); bool flushPendingLayerChanges(); void createPageOverlayLayer(); void destroyPageOverlayLayer(); -#if PLATFORM(MAC) - static void flushPendingLayerChangesRunLoopObserverCallback(CFRunLoopObserverRef, CFRunLoopActivity, void*); -#endif - // The context for this layer tree. LayerTreeContext m_layerTreeContext; @@ -107,11 +99,6 @@ private: // The page overlay layer. Will be null if there's no page overlay. OwnPtr<WebCore::GraphicsLayer> m_pageOverlayLayer; - -#if PLATFORM(MAC) - RetainPtr<WKCARemoteLayerClientRef> m_remoteLayerClient; - RetainPtr<CFRunLoopObserverRef> m_flushPendingLayerChangesRunLoopObserver; -#endif }; } // namespace WebKit |