Clean up ChunkedUpdateDrawingAreaProxy
authorandersca@apple.com <andersca@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 17 Dec 2010 23:35:30 +0000 (23:35 +0000)
committerandersca@apple.com <andersca@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 17 Dec 2010 23:35:30 +0000 (23:35 +0000)
https://bugs.webkit.org/show_bug.cgi?id=51277

Reviewed by Simon Fraser.

Get rid of m_lastSetViewSize since it was always equal to m_size.

* UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
(WebKit::ChunkedUpdateDrawingAreaProxy::sizeDidChange):
Call sendSetSize().

(WebKit::ChunkedUpdateDrawingAreaProxy::didSetSize):
Call sendSetSize if the size differs.

(WebKit::ChunkedUpdateDrawingAreaProxy::sendSetSize):
Move code from sizeDidChange over here.

* UIProcess/ChunkedUpdateDrawingAreaProxy.h:
* UIProcess/DrawingAreaProxy.cpp:
(WebKit::DrawingAreaProxy::setSize):
Add back the early return if the sizes are equal.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@74300 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKit2/ChangeLog
WebKit2/UIProcess/ChunkedUpdateDrawingAreaProxy.cpp
WebKit2/UIProcess/ChunkedUpdateDrawingAreaProxy.h
WebKit2/UIProcess/DrawingAreaProxy.cpp

index a997898..eb4ae55 100644 (file)
@@ -1,3 +1,27 @@
+2010-12-17  Anders Carlsson  <andersca@apple.com>
+
+        Reviewed by Simon Fraser.
+
+        Clean up ChunkedUpdateDrawingAreaProxy
+        https://bugs.webkit.org/show_bug.cgi?id=51277
+
+        Get rid of m_lastSetViewSize since it was always equal to m_size.
+
+        * UIProcess/ChunkedUpdateDrawingAreaProxy.cpp:
+        (WebKit::ChunkedUpdateDrawingAreaProxy::sizeDidChange):
+        Call sendSetSize().
+
+        (WebKit::ChunkedUpdateDrawingAreaProxy::didSetSize):
+        Call sendSetSize if the size differs.
+
+        (WebKit::ChunkedUpdateDrawingAreaProxy::sendSetSize):
+        Move code from sizeDidChange over here.
+
+        * UIProcess/ChunkedUpdateDrawingAreaProxy.h:
+        * UIProcess/DrawingAreaProxy.cpp:
+        (WebKit::DrawingAreaProxy::setSize):
+        Add back the early return if the sizes are equal.
+
 2010-12-17  Brent Fulgham  <bfulgham@webkit.org>
 
         Unreviewed build fix.
index 24c47c4..a019bde 100644 (file)
@@ -75,21 +75,7 @@ void ChunkedUpdateDrawingAreaProxy::paint(const IntRect& rect, PlatformDrawingCo
 
 void ChunkedUpdateDrawingAreaProxy::sizeDidChange()
 {
-    WebPageProxy* page = this->page();
-    if (!page->isValid())
-        return;
-
-    if (m_size.isEmpty())
-        return;
-
-    m_lastSetViewSize = m_size;
-
-    if (m_isWaitingForDidSetFrameNotification)
-        return;
-    m_isWaitingForDidSetFrameNotification = true;
-
-    page->process()->responsivenessTimer()->start();
-    page->process()->send(DrawingAreaMessage::SetSize, page->pageID(), CoreIPC::In(info().identifier, m_size));
+    sendSetSize();
 }
 
 void ChunkedUpdateDrawingAreaProxy::setPageIsVisible(bool isVisible)
@@ -121,8 +107,8 @@ void ChunkedUpdateDrawingAreaProxy::didSetSize(UpdateChunk* updateChunk)
 
     IntSize viewSize = updateChunk->rect().size();
 
-    if (viewSize != m_lastSetViewSize)
-        setSize(m_lastSetViewSize);
+    if (viewSize != m_size)
+        sendSetSize();
 
     invalidateBackingStore();
     if (!updateChunk->isEmpty())
@@ -148,6 +134,19 @@ void ChunkedUpdateDrawingAreaProxy::update(UpdateChunk* updateChunk)
     page->process()->send(DrawingAreaMessage::DidUpdate, page->pageID(), CoreIPC::In(info().identifier));
 }
 
+void ChunkedUpdateDrawingAreaProxy::sendSetSize()
+{
+    if (!m_webPageProxy->isValid())
+        return;
+    
+    if (m_isWaitingForDidSetFrameNotification)
+        return;
+    m_isWaitingForDidSetFrameNotification = true;
+    
+    m_webPageProxy->process()->responsivenessTimer()->start();
+    m_webPageProxy->process()->send(DrawingAreaMessage::SetSize, m_webPageProxy->pageID(), CoreIPC::In(info().identifier, m_size));
+}
+    
 void ChunkedUpdateDrawingAreaProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder* arguments)
 {
     switch (messageID.get<DrawingAreaProxyMessage::Kind>()) {
index 4ec1689..2c94c40 100644 (file)
@@ -79,6 +79,8 @@ private:
     void didSetSize(UpdateChunk*);
     void update(UpdateChunk*);
 
+    void sendSetSize();
+
 #if USE(ACCELERATED_COMPOSITING)
     virtual void attachCompositingContext(uint32_t) { }
     virtual void detachCompositingContext() { }
@@ -88,8 +90,6 @@ private:
     bool m_isVisible;
     bool m_forceRepaintWhenResumingPainting;
 
-    WebCore::IntSize m_lastSetViewSize;
-
 #if PLATFORM(MAC)
     // BackingStore
     RetainPtr<CGContextRef> m_bitmapContext;
index 86637a4..c026968 100644 (file)
@@ -47,6 +47,9 @@ DrawingAreaInfo::Identifier DrawingAreaProxy::nextIdentifier()
 
 void DrawingAreaProxy::setSize(const IntSize& size)
 { 
+    if (m_size == size)
+        return;
+
     m_size = size;
     sizeDidChange();
 }