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

hausmann at webkit.org hausmann at webkit.org
Wed Dec 22 13:26:25 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 83c302cd7dafb4e799c269433b8f1da7ae6a9734
Author: hausmann at webkit.org <hausmann at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Wed Sep 15 13:32:02 2010 +0000

    [Qt] QtTestBrowser crashes when enabling QGraphicsView mode after first loading page without it enabled
    https://bugs.webkit.org/show_bug.cgi?id=35247
    
    Reviewed by Tor Arne Vestbø.
    
    The main issue when changing the views is that the plugins and any other components that
    depend on view specific attributes such as the native window id are not teared down.
    Even if we had a tear-down procedure, we'd have to re-initialize the plugin after
    switching to the new view (QGraphicsWebView). This is a rather uncommon situation, so
    we decided to work around this in QtTestBrowser by making toggling between QWebView
    and QGraphicsWebView also re-create the page.
    
    * QtTestBrowser/launcherwindow.cpp:
    (LauncherWindow::initializeView):
    * QtTestBrowser/mainwindow.h:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67554 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index 3497d33..31d3722 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,21 @@
+2010-09-15  Simon Hausmann  <simon.hausmann at nokia.com>
+
+        Reviewed by Tor Arne Vestbø.
+
+        [Qt] QtTestBrowser crashes when enabling QGraphicsView mode after first loading page without it enabled
+        https://bugs.webkit.org/show_bug.cgi?id=35247
+
+        The main issue when changing the views is that the plugins and any other components that
+        depend on view specific attributes such as the native window id are not teared down.
+        Even if we had a tear-down procedure, we'd have to re-initialize the plugin after
+        switching to the new view (QGraphicsWebView). This is a rather uncommon situation, so
+        we decided to work around this in QtTestBrowser by making toggling between QWebView
+        and QGraphicsWebView also re-create the page.
+
+        * QtTestBrowser/launcherwindow.cpp:
+        (LauncherWindow::initializeView):
+        * QtTestBrowser/mainwindow.h:
+
 2010-09-14  Mihai Parparita  <mihaip at chromium.org>
 
         Reviewed by Adam Barth.
diff --git a/WebKitTools/QtTestBrowser/launcherwindow.cpp b/WebKitTools/QtTestBrowser/launcherwindow.cpp
index 3b47f29..b77da16 100644
--- a/WebKitTools/QtTestBrowser/launcherwindow.cpp
+++ b/WebKitTools/QtTestBrowser/launcherwindow.cpp
@@ -103,7 +103,10 @@ void LauncherWindow::init()
 
 void LauncherWindow::initializeView()
 {
+    QUrl url = m_page->mainFrame()->url();
+    delete m_page;
     delete m_view;
+    m_page = new WebPage(this);
 
     QSplitter* splitter = static_cast<QSplitter*>(centralWidget());
 
@@ -128,6 +131,9 @@ void LauncherWindow::initializeView()
         m_view = view;
     }
 
+    if (url.isValid())
+        m_page->mainFrame()->load(url);
+
 #if QT_VERSION >= QT_VERSION_CHECK(4, 6, 0)
     m_touchMocking = false;
 #endif
diff --git a/WebKitTools/QtTestBrowser/mainwindow.h b/WebKitTools/QtTestBrowser/mainwindow.h
index 6fbf9f4..798fe05 100644
--- a/WebKitTools/QtTestBrowser/mainwindow.h
+++ b/WebKitTools/QtTestBrowser/mainwindow.h
@@ -65,6 +65,7 @@ private:
     QStringList urlList;
     LocationEdit* urlEdit;
 
+protected:
     WebPage* m_page;
 };
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list