2011-05-04 Simon Fraser <simon.fraser@apple.com>
[WebKit-https.git] / Source / WebKit2 / WebProcess / WebPage / DrawingAreaImpl.h
index b9a9dae..80b2828 100644 (file)
@@ -33,7 +33,6 @@
 
 namespace WebKit {
 
-class SharedMemory;
 class UpdateInfo;
 
 class DrawingAreaImpl : public DrawingArea {
@@ -41,6 +40,7 @@ public:
     static PassOwnPtr<DrawingAreaImpl> create(WebPage*, const WebPageCreationParameters&);
     virtual ~DrawingAreaImpl();
 
+    void setLayerHostNeedsDisplay();
     void layerHostDidFlushLayers();
 
 private:
@@ -62,7 +62,7 @@ private:
 
     // CoreIPC message handlers.
     virtual void updateBackingStoreState(uint64_t backingStoreStateID, bool respondImmediately, const WebCore::IntSize&, const WebCore::IntSize& scrollOffset);
-    virtual void didUpdate(bool didIncorporateBackingStore);
+    virtual void didUpdate();
     virtual void suspendPainting();
     virtual void resumePainting();
 
@@ -70,12 +70,13 @@ private:
 
     void enterAcceleratedCompositingMode(WebCore::GraphicsLayer*);
     void exitAcceleratedCompositingModeSoon();
+    bool exitAcceleratedCompositingModePending() const { return m_exitCompositingTimer.isActive(); }
     void exitAcceleratedCompositingMode();
 
     void scheduleDisplay();
     void displayTimerFired();
     void display();
-    void display(UpdateInfo&, bool useSharedMemoryCache);
+    void display(UpdateInfo&);
 
     uint64_t m_backingStoreStateID;
 
@@ -93,6 +94,9 @@ private:
     // Whether we're waiting for a DidUpdate message. Used for throttling paints so that the 
     // web process won't paint more frequent than the UI process can handle.
     bool m_isWaitingForDidUpdate;
+    
+    // True between sending the 'enter compositing' messages, and the 'exit compositing' message.
+    bool m_compositingAccordingToProxyMessages;
 
     // Whether painting is suspended. We'll still keep track of the dirty region but we 
     // won't paint until painting has resumed again.
@@ -106,12 +110,6 @@ private:
 
     // The layer tree host that handles accelerated compositing.
     RefPtr<LayerTreeHost> m_layerTreeHost;
-
-    // The shared memory we used for the last update. If possible, we'll try
-    // to reuse it for subsequent paints to avoid allocating/freeeing shared memory
-    // for every paint.
-    RefPtr<SharedMemory> m_sharedMemoryUsedForLastUpdate;
-
 };
 
 } // namespace WebKit