[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

andreas.kling at nokia.com andreas.kling at nokia.com
Wed Dec 22 15:29:13 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 9667f50ddf294019a118b3cd9930c685ba0d71a8
Author: andreas.kling at nokia.com <andreas.kling at nokia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Nov 4 19:41:07 2010 +0000

    2010-11-04  Kenneth Rohde Christiansen  <kenneth at webkit.org>
    
            Reviewed by David Hyatt.
    
            Delegate scrolling via a separate method
            https://bugs.webkit.org/show_bug.cgi?id=48988
    
            Implement delegatedScrollRequested and make it emit the
            scrollRequested signal for Qt.
    
            * WebCoreSupport/ChromeClientQt.cpp:
            (WebCore::ChromeClientQt::delegatedScrollRequested):
            * WebCoreSupport/ChromeClientQt.h:
    2010-11-04  Kenneth Rohde Christiansen  <kenneth at webkit.org>
    
            Reviewed by David Hyatt.
    
            Delegate scrolling via a separate method
            https://bugs.webkit.org/show_bug.cgi?id=48988
    
            Add a delegatedScrollRequested method to HostWindow for delegating
            scrolling to the view. This is only used in conjunction with tiling,
            and is ifdef'ed.
    
            * page/Chrome.cpp:
            (WebCore::Chrome::delegatedScrollRequested):
            * page/Chrome.h:
            * page/ChromeClient.h:
            * platform/HostWindow.h:
            * platform/ScrollView.cpp:
            (WebCore::ScrollView::setScrollPosition):
    2010-11-04  Kenneth Rohde Christiansen  <kenneth at webkit.org>
    
            Reviewed by David Hyatt.
    
            Delegate scrolling via a separate method
            https://bugs.webkit.org/show_bug.cgi?id=48988
    
            Add delegatedScrollRequested method to WebChromeClient,
            which is only used in conjunging with tiling, and thus ifdef'ed.
    
            * WebProcess/WebCoreSupport/WebChromeClient.cpp:
            (WebKit::WebChromeClient::delegatedScrollRequested):
            * WebProcess/WebCoreSupport/WebChromeClient.h:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@71352 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index cbb69f5..f70cca5 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,22 @@
+2010-11-04  Kenneth Rohde Christiansen  <kenneth at webkit.org>
+
+        Reviewed by David Hyatt.
+
+        Delegate scrolling via a separate method
+        https://bugs.webkit.org/show_bug.cgi?id=48988
+
+        Add a delegatedScrollRequested method to HostWindow for delegating
+        scrolling to the view. This is only used in conjunction with tiling,
+        and is ifdef'ed.
+
+        * page/Chrome.cpp:
+        (WebCore::Chrome::delegatedScrollRequested):
+        * page/Chrome.h:
+        * page/ChromeClient.h:
+        * platform/HostWindow.h:
+        * platform/ScrollView.cpp:
+        (WebCore::ScrollView::setScrollPosition):
+
 2010-11-04  Pavel Feldman  <pfeldman at chromium.org>
 
         Reviewed by Timothy Hatcher.
diff --git a/WebCore/loader/EmptyClients.h b/WebCore/loader/EmptyClients.h
index 6d37907..f2d9123 100644
--- a/WebCore/loader/EmptyClients.h
+++ b/WebCore/loader/EmptyClients.h
@@ -153,6 +153,9 @@ public:
     virtual void invalidateContentsAndWindow(const IntRect&, bool) { }
     virtual void invalidateContentsForSlowScroll(const IntRect&, bool) {};
     virtual void scroll(const IntSize&, const IntRect&, const IntRect&) { }
+#if ENABLE(TILED_BACKING_STORE)
+    virtual void delegatedScrollRequested(const IntSize&) { }
+#endif
 
     virtual IntPoint screenToWindow(const IntPoint& p) const { return p; }
     virtual IntRect windowToScreen(const IntRect& r) const { return r; }
diff --git a/WebCore/page/Chrome.cpp b/WebCore/page/Chrome.cpp
index aed2784..572abd1 100644
--- a/WebCore/page/Chrome.cpp
+++ b/WebCore/page/Chrome.cpp
@@ -87,6 +87,13 @@ void Chrome::scroll(const IntSize& scrollDelta, const IntRect& rectToScroll, con
     m_client->scroll(scrollDelta, rectToScroll, clipRect);
 }
 
+#if ENABLE(TILED_BACKING_STORE)
+void Chrome::delegatedScrollRequested(const IntSize& scrollDelta)
+{
+    m_client->delegatedScrollRequested(scrollDelta);
+}
+#endif
+
 IntPoint Chrome::screenToWindow(const IntPoint& point) const
 {
     return m_client->screenToWindow(point);
diff --git a/WebCore/page/Chrome.h b/WebCore/page/Chrome.h
index 97665da..0446488 100644
--- a/WebCore/page/Chrome.h
+++ b/WebCore/page/Chrome.h
@@ -70,6 +70,9 @@ namespace WebCore {
         virtual void invalidateContentsAndWindow(const IntRect&, bool);
         virtual void invalidateContentsForSlowScroll(const IntRect&, bool);
         virtual void scroll(const IntSize&, const IntRect&, const IntRect&);
+#if ENABLE(TILED_BACKING_STORE)
+        virtual void delegatedScrollRequested(const IntSize& scrollDelta);
+#endif
         virtual IntPoint screenToWindow(const IntPoint&) const;
         virtual IntRect windowToScreen(const IntRect&) const;
         virtual PlatformPageClient platformPageClient() const;
diff --git a/WebCore/page/ChromeClient.h b/WebCore/page/ChromeClient.h
index 22f1814..cc35b04 100644
--- a/WebCore/page/ChromeClient.h
+++ b/WebCore/page/ChromeClient.h
@@ -140,6 +140,9 @@ namespace WebCore {
         virtual void invalidateContentsAndWindow(const IntRect&, bool) = 0;
         virtual void invalidateContentsForSlowScroll(const IntRect&, bool) = 0;
         virtual void scroll(const IntSize&, const IntRect&, const IntRect&) = 0;
+#if ENABLE(TILED_BACKING_STORE)
+        virtual void delegatedScrollRequested(const IntSize&) = 0;
+#endif
         virtual IntPoint screenToWindow(const IntPoint&) const = 0;
         virtual IntRect windowToScreen(const IntRect&) const = 0;
         virtual PlatformPageClient platformPageClient() const = 0;
diff --git a/WebCore/platform/HostWindow.h b/WebCore/platform/HostWindow.h
index b0ee653..7882d48 100644
--- a/WebCore/platform/HostWindow.h
+++ b/WebCore/platform/HostWindow.h
@@ -48,7 +48,12 @@ public:
 
     // Requests the host invalidate the contents, not the window.  This is the slow path for scrolling.
     virtual void invalidateContentsForSlowScroll(const IntRect& updateRect, bool immediate) = 0;
-    
+
+#if ENABLE(TILED_BACKING_STORE)
+    // Requests the host to do the actual scrolling. This is only used in combination with a tiled backing store.
+    virtual void delegatedScrollRequested(const IntSize& scrollDelta) = 0;
+#endif
+
     // Methods for doing coordinate conversions to and from screen coordinates.
     virtual IntPoint screenToWindow(const IntPoint&) const = 0;
     virtual IntRect windowToScreen(const IntRect&) const = 0;
diff --git a/WebCore/platform/ScrollView.cpp b/WebCore/platform/ScrollView.cpp
index 32dafd2..15ffc44 100644
--- a/WebCore/platform/ScrollView.cpp
+++ b/WebCore/platform/ScrollView.cpp
@@ -329,13 +329,15 @@ void ScrollView::setScrollPosition(const IntPoint& scrollPoint)
         return;
     }
 
+    IntPoint newScrollPosition = scrollPoint.shrunkTo(maximumScrollPosition());
+    newScrollPosition.clampNegativeToZero();
+
+#if ENABLE(TILED_BACKING_STORE)
     if (delegatesScrolling()) {
-        scrollContents(IntSize(scrollPoint.x(), scrollPoint.y()));
+        hostWindow()->delegatedScrollRequested(IntSize(scrollPoint.x(), scrollPoint.y()));
         return;
     }
-
-    IntPoint newScrollPosition = scrollPoint.shrunkTo(maximumScrollPosition());
-    newScrollPosition.clampNegativeToZero();
+#endif
 
     if (newScrollPosition == scrollPosition())
         return;
diff --git a/WebKit/qt/ChangeLog b/WebKit/qt/ChangeLog
index d27dfa7..7a09d6c 100644
--- a/WebKit/qt/ChangeLog
+++ b/WebKit/qt/ChangeLog
@@ -1,3 +1,17 @@
+2010-11-04  Kenneth Rohde Christiansen  <kenneth at webkit.org>
+
+        Reviewed by David Hyatt.
+
+        Delegate scrolling via a separate method
+        https://bugs.webkit.org/show_bug.cgi?id=48988
+
+        Implement delegatedScrollRequested and make it emit the
+        scrollRequested signal for Qt.
+
+        * WebCoreSupport/ChromeClientQt.cpp:
+        (WebCore::ChromeClientQt::delegatedScrollRequested):
+        * WebCoreSupport/ChromeClientQt.h:
+
 2010-11-04  Robert Hogan  <robert at webkit.org>
 
         Reviewed by Andreas Kling.
diff --git a/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp b/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
index f0d3903..92235ed 100644
--- a/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
+++ b/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
@@ -412,6 +412,13 @@ void ChromeClientQt::scroll(const IntSize& delta, const IntRect& scrollViewRect,
     emit m_webPage->scrollRequested(delta.width(), delta.height(), scrollViewRect);
 }
 
+#if ENABLE(TILED_BACKING_STORE)
+void ChromeClientQt::delegatedScrollRequested(const IntSize& delta)
+{
+    emit m_webPage->scrollRequested(delta.width(), delta.height(), QRect(QPoint(0, 0), m_webPage->viewportSize()));
+}
+#endif
+
 IntRect ChromeClientQt::windowToScreen(const IntRect& rect) const
 {
     QWebPageClient* pageClient = platformPageClient();
diff --git a/WebKit/qt/WebCoreSupport/ChromeClientQt.h b/WebKit/qt/WebCoreSupport/ChromeClientQt.h
index 71b9626..cbf62b3 100644
--- a/WebKit/qt/WebCoreSupport/ChromeClientQt.h
+++ b/WebKit/qt/WebCoreSupport/ChromeClientQt.h
@@ -115,6 +115,9 @@ namespace WebCore {
         virtual void invalidateContentsAndWindow(const IntRect&, bool);
         virtual void invalidateContentsForSlowScroll(const IntRect&, bool);
         virtual void scroll(const IntSize& scrollDelta, const IntRect& rectToScroll, const IntRect& clipRect);
+#if ENABLE(TILED_BACKING_STORE)
+        virtual void delegatedScrollRequested(const IntSize& scrollDelta);
+#endif
 
         virtual IntPoint screenToWindow(const IntPoint&) const;
         virtual IntRect windowToScreen(const IntRect&) const;
diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index 3db9b48..d8578e2 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,3 +1,17 @@
+2010-11-04  Kenneth Rohde Christiansen  <kenneth at webkit.org>
+
+        Reviewed by David Hyatt.
+
+        Delegate scrolling via a separate method
+        https://bugs.webkit.org/show_bug.cgi?id=48988
+
+        Add delegatedScrollRequested method to WebChromeClient,
+        which is only used in conjunging with tiling, and thus ifdef'ed.
+
+        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
+        (WebKit::WebChromeClient::delegatedScrollRequested):
+        * WebProcess/WebCoreSupport/WebChromeClient.h:
+
 2010-11-03  Enrica Casucci  <enrica at apple.com>
 
         Reviewed by Alexey Proskuryakov.
diff --git a/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp b/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
index 034bb90..494774a 100644
--- a/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
+++ b/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp
@@ -333,6 +333,13 @@ void WebChromeClient::scroll(const IntSize& scrollDelta, const IntRect& rectToSc
     m_page->drawingArea()->scroll(scrollDelta, rectToScroll, clipRect);
 }
 
+#if ENABLE(TILED_BACKING_STORE)
+void WebChromeClient::delegatedScrollRequested(const IntSize& scrollDelta)
+{
+    notImplemented();
+}
+#endif
+
 IntPoint WebChromeClient::screenToWindow(const IntPoint&) const
 {
     notImplemented();
diff --git a/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h b/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h
index e82581e..8479d27 100644
--- a/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h
+++ b/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h
@@ -106,6 +106,9 @@ private:
     virtual void invalidateContentsAndWindow(const WebCore::IntRect&, bool);
     virtual void invalidateContentsForSlowScroll(const WebCore::IntRect&, bool);
     virtual void scroll(const WebCore::IntSize& scrollDelta, const WebCore::IntRect& rectToScroll, const WebCore::IntRect& clipRect);
+#if ENABLE(TILED_BACKING_STORE)
+    virtual void delegatedScrollRequested(const WebCore::IntSize& scrollDelta);
+#endif
     virtual WebCore::IntPoint screenToWindow(const WebCore::IntPoint&) const;
     virtual WebCore::IntRect windowToScreen(const WebCore::IntRect&) const;
     virtual PlatformPageClient platformPageClient() const;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list