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

commit-queue at webkit.org commit-queue at webkit.org
Wed Dec 22 11:29:45 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit c54c3304c91b2cf6ae031659d0ed0cc823c5cbd4
Author: commit-queue at webkit.org <commit-queue at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Jul 27 12:27:29 2010 +0000

    2010-07-27  Balazs Kelemen  <kb at inf.u-szeged.hu>
    
            Reviewed by Kenneth Rohde Christiansen.
    
            [Qt] WebKit::PageClient implementation needs a dedicated class
    
            https://bugs.webkit.org/show_bug.cgi?id=42974
    
            * UIProcess/API/qt/qwkpage.cpp:
            (PageClientImpl::PageClientImpl): Added.
            (PageClientImpl::pageDidEnterAcceleratedCompositing): Moved from QWKPagePrivate.
            (PageClientImpl::pageDidLeaveAcceleratedCompositing): Ditto.
            (PageClientImpl::processDidExit): Ditto.
            (PageClientImpl::processDidRevive): Ditto.
            (PageClientImpl::setCursor): Ditto.
            (PageClientImpl::takeFocus): Ditto.
            (PageClientImpl::toolTipChanged): Ditto.
            (QWKPagePrivate::QWKPagePrivate): Set a new instance of the PageClientImpl as PageClient rather than 'this'.
            * UIProcess/API/qt/qwkpage_p.h: Removed PageClient implementation methods from QWKPagePrivate.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@64122 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index f2db396..969d5d8 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,3 +1,23 @@
+2010-07-27  Balazs Kelemen  <kb at inf.u-szeged.hu>
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        [Qt] WebKit::PageClient implementation needs a dedicated class
+
+        https://bugs.webkit.org/show_bug.cgi?id=42974
+
+        * UIProcess/API/qt/qwkpage.cpp:
+        (PageClientImpl::PageClientImpl): Added.
+        (PageClientImpl::pageDidEnterAcceleratedCompositing): Moved from QWKPagePrivate.
+        (PageClientImpl::pageDidLeaveAcceleratedCompositing): Ditto.
+        (PageClientImpl::processDidExit): Ditto.
+        (PageClientImpl::processDidRevive): Ditto.
+        (PageClientImpl::setCursor): Ditto.
+        (PageClientImpl::takeFocus): Ditto.
+        (PageClientImpl::toolTipChanged): Ditto.
+        (QWKPagePrivate::QWKPagePrivate): Set a new instance of the PageClientImpl as PageClient rather than 'this'.
+        * UIProcess/API/qt/qwkpage_p.h: Removed PageClient implementation methods from QWKPagePrivate.
+
 2010-07-26  Darin Adler  <darin at apple.com>
 
         Reviewed by Sam Weinig.
diff --git a/WebKit2/UIProcess/API/qt/qwkpage.cpp b/WebKit2/UIProcess/API/qt/qwkpage.cpp
index 5074c2a..ebfd795 100644
--- a/WebKit2/UIProcess/API/qt/qwkpage.cpp
+++ b/WebKit2/UIProcess/API/qt/qwkpage.cpp
@@ -37,13 +37,40 @@
 using namespace WebKit;
 using namespace WebCore;
 
+class PageClientImpl : public WebKit::PageClient {
+public:
+    PageClientImpl(QWKPage* page)
+        : m_page(page)
+    {
+    }
+
+#if USE(ACCELERATED_COMPOSITING)
+    void pageDidEnterAcceleratedCompositing() { }
+    void pageDidLeaveAcceleratedCompositing() { }
+#endif // USE(ACCELERATED_COMPOSITING)
+    virtual void processDidExit() { }
+    virtual void processDidRevive() { }
+    virtual void setCursor(const WebCore::Cursor&) { }
+    virtual void takeFocus(bool direction) { }
+
+    virtual void toolTipChanged(const WebCore::String&, const WebCore::String&);
+
+private:
+    QWKPage* m_page;
+};
+
+void PageClientImpl::toolTipChanged(const String&, const String& newTooltip)
+{
+    emit m_page->statusBarMessage(QString(newTooltip));
+}
+
 QWKPagePrivate::QWKPagePrivate(QWKPage* qq, WKPageNamespaceRef namespaceRef)
     : q(qq)
     , createNewPageFn(0)
 {
     memset(actions, 0, sizeof(actions));
     page = toWK(namespaceRef)->createWebPage();
-    page->setPageClient(this);
+    page->setPageClient(new PageClientImpl(qq)); // Ownership is passed to the page.
 }
 
 QWKPagePrivate::~QWKPagePrivate()
@@ -56,11 +83,6 @@ void QWKPagePrivate::init(const QSize& viewportSize, DrawingAreaProxy* proxy)
     page->initializeWebPage(IntSize(viewportSize), proxy);
 }
 
-void QWKPagePrivate::toolTipChanged(const String&, const String& newTooltip)
-{
-    emit q->statusBarMessage(QString(newTooltip));
-}
-
 void QWKPagePrivate::paint(QPainter* painter, QRect area)
 {
     painter->save();
diff --git a/WebKit2/UIProcess/API/qt/qwkpage_p.h b/WebKit2/UIProcess/API/qt/qwkpage_p.h
index 3e676ef..0c617a3 100644
--- a/WebKit2/UIProcess/API/qt/qwkpage_p.h
+++ b/WebKit2/UIProcess/API/qt/qwkpage_p.h
@@ -31,7 +31,7 @@
 #include <QGraphicsView>
 #include <QKeyEvent>
 
-class QWKPagePrivate : public WebKit::PageClient {
+class QWKPagePrivate {
 public:
     QWKPagePrivate(QWKPage*, WKPageNamespaceRef);
     ~QWKPagePrivate();
@@ -40,16 +40,6 @@ public:
 
     void init(const QSize& viewportSize, WebKit::DrawingAreaProxy*);
 
-#if USE(ACCELERATED_COMPOSITING)
-    void pageDidEnterAcceleratedCompositing() {}
-    void pageDidLeaveAcceleratedCompositing() {}
-#endif // USE(ACCELERATED_COMPOSITING)
-    virtual void processDidExit() {}
-    virtual void processDidRevive() {}
-    virtual void setCursor(const WebCore::Cursor&) {}
-    virtual void takeFocus(bool direction) {}
-    virtual void toolTipChanged(const WebCore::String&, const WebCore::String&);
-
     void paint(QPainter* painter, QRect);
 
     void keyPressEvent(QKeyEvent*);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list