OSDN Git Service

Merge WebKit at r78450: Initial merge by git.
[android-x86/external-webkit.git] / Source / WebKit2 / UIProcess / DrawingAreaProxyImpl.h
index bf7b878..f776b09 100644 (file)
@@ -28,6 +28,7 @@
 
 #include "BackingStore.h"
 #include "DrawingAreaProxy.h"
+#include "LayerTreeContext.h"
 
 namespace WebKit {
 
@@ -54,16 +55,30 @@ private:
     virtual void detachCompositingContext();
 
     // CoreIPC message handlers
-    virtual void update(const UpdateInfo&);
-    virtual void didSetSize(const UpdateInfo&);
-    
+    virtual void update(uint64_t sequenceNumber, const UpdateInfo&);
+    virtual void didSetSize(uint64_t sequenceNumber, const UpdateInfo&, const LayerTreeContext&);
+    virtual void enterAcceleratedCompositingMode(uint64_t sequenceNumber, const LayerTreeContext&);
+    virtual void exitAcceleratedCompositingMode(uint64_t sequenceNumber, const UpdateInfo&);
+
     void incorporateUpdate(const UpdateInfo&);
     void sendSetSize();
+    void waitForAndDispatchDidSetSize();
+
+    void enterAcceleratedCompositingMode(const LayerTreeContext&);
+    void exitAcceleratedCompositingMode();
 
+    bool isInAcceleratedCompositingMode() const { return !m_layerTreeContext.isEmpty(); }
+
+    // The current layer tree context.
+    LayerTreeContext m_layerTreeContext;
+    
     // Whether we've sent a SetSize message and are now waiting for a DidSetSize message.
     // Used to throttle SetSize messages so we don't send them faster than the Web process can handle.
     bool m_isWaitingForDidSetSize;
 
+    // The sequence number of the last DidSetSize message
+    uint64_t m_lastDidSetSizeSequenceNumber;
+
     OwnPtr<BackingStore> m_backingStore;
 };