[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.19-706-ge5415e9
eric at webkit.org
eric at webkit.org
Thu Feb 4 21:23:02 UTC 2010
The following commit has been merged in the webkit-1.1 branch:
commit 36fe91fd784333dcc1a91d846b2b20f66c77cf52
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Thu Jan 21 09:12:25 2010 +0000
2010-01-21 Robert Hogan <robert at roberthogan.net>
Reviewed by Simon Hausmann.
Qt DRT: respect window.close() and window.closed()
Qt DRT needs to maintain a correct count of open windows
for windowCount(). It also needs to delete windows that
have been closed by window.close().
This fixes the following tests:
plugins/destroy-during-npp-new.html
fast/dom/Document/early-document-access.html
fast/dom/Window/window-early-properties.html
fast/events/open-window-from-another-frame.html
fast/events/popup-blocking-click-in-iframe.html
https://bugs.webkit.org/show_bug.cgi?id=32953
* platform/qt/Skipped:
2010-01-21 Robert Hogan <robert at roberthogan.net>
Reviewed by Simon Hausmann.
Qt DRT: respect window.close() and window.closed()
Qt DRT needs to maintain a correct count of open windows
for windowCount(). It also needs to delete windows that
have been closed by window.close().
This fixes the following tests:
plugins/destroy-during-npp-new.html
fast/dom/Document/early-document-access.html
fast/dom/Window/window-early-properties.html
fast/events/open-window-from-another-frame.html
fast/events/popup-blocking-click-in-iframe.html
https://bugs.webkit.org/show_bug.cgi?id=32953
* DumpRenderTree/qt/DumpRenderTreeQt.cpp:
(WebCore::DumpRenderTree::DumpRenderTree):
(WebCore::DumpRenderTree::createWindow):
(WebCore::DumpRenderTree::windowCloseRequested):
* DumpRenderTree/qt/DumpRenderTreeQt.h:
* DumpRenderTree/qt/LayoutTestControllerQt.cpp:
(LayoutTestController::maybeDump):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@53615 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index d63a7d9..5580a26 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,25 @@
+2010-01-21 Robert Hogan <robert at roberthogan.net>
+
+ Reviewed by Simon Hausmann.
+
+ Qt DRT: respect window.close() and window.closed()
+
+ Qt DRT needs to maintain a correct count of open windows
+ for windowCount(). It also needs to delete windows that
+ have been closed by window.close().
+
+ This fixes the following tests:
+
+ plugins/destroy-during-npp-new.html
+ fast/dom/Document/early-document-access.html
+ fast/dom/Window/window-early-properties.html
+ fast/events/open-window-from-another-frame.html
+ fast/events/popup-blocking-click-in-iframe.html
+
+ https://bugs.webkit.org/show_bug.cgi?id=32953
+
+ * platform/qt/Skipped:
+
2010-01-20 Philippe Normand <pnormand at igalia.com>
Reviewed by Eric Carlson.
diff --git a/LayoutTests/platform/qt/Skipped b/LayoutTests/platform/qt/Skipped
index ffc59de..a5f7098 100644
--- a/LayoutTests/platform/qt/Skipped
+++ b/LayoutTests/platform/qt/Skipped
@@ -520,7 +520,6 @@ fast/text/midword-break-after-breakable-char.html
fast/text/textIteratorNilRenderer.html
fast/text/international/002.html
-plugins/destroy-during-npp-new.html
plugins/embed-attributes-setting.html
plugins/get-url-that-the-resource-load-delegate-will-disallow.html
plugins/get-url-with-blank-target.html
@@ -5023,10 +5022,6 @@ fast/css/namespaces/namespaces-empty.xml
# https://bugs.webkit.org/show_bug.cgi?id=31626
fast/dom/javascript-url-crash-function.html
fast/dom/location-new-window-no-crash.html
-fast/dom/Document/early-document-access.html
-fast/dom/Window/window-early-properties.html
-fast/events/open-window-from-another-frame.html
-fast/events/popup-blocking-click-in-iframe.html
inspector/console-clear.html
http/tests/misc/set-window-opener-to-null.html
http/tests/security/aboutBlank/xss-DENIED-set-opener.html
diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index 84c264c..500159b 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,31 @@
+2010-01-21 Robert Hogan <robert at roberthogan.net>
+
+ Reviewed by Simon Hausmann.
+
+ Qt DRT: respect window.close() and window.closed()
+
+ Qt DRT needs to maintain a correct count of open windows
+ for windowCount(). It also needs to delete windows that
+ have been closed by window.close().
+
+ This fixes the following tests:
+
+ plugins/destroy-during-npp-new.html
+ fast/dom/Document/early-document-access.html
+ fast/dom/Window/window-early-properties.html
+ fast/events/open-window-from-another-frame.html
+ fast/events/popup-blocking-click-in-iframe.html
+
+ https://bugs.webkit.org/show_bug.cgi?id=32953
+
+ * DumpRenderTree/qt/DumpRenderTreeQt.cpp:
+ (WebCore::DumpRenderTree::DumpRenderTree):
+ (WebCore::DumpRenderTree::createWindow):
+ (WebCore::DumpRenderTree::windowCloseRequested):
+ * DumpRenderTree/qt/DumpRenderTreeQt.h:
+ * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
+ (LayoutTestController::maybeDump):
+
2010-01-20 Eric Seidel <eric at webkit.org>
No review, rolling out r53593.
diff --git a/WebKitTools/DumpRenderTree/qt/DumpRenderTreeQt.cpp b/WebKitTools/DumpRenderTree/qt/DumpRenderTreeQt.cpp
index 88af665..8151475 100644
--- a/WebKitTools/DumpRenderTree/qt/DumpRenderTreeQt.cpp
+++ b/WebKitTools/DumpRenderTree/qt/DumpRenderTreeQt.cpp
@@ -344,6 +344,7 @@ DumpRenderTree::DumpRenderTree()
// dump results itself when the last page loaded in the test has finished loading.
connect(m_page, SIGNAL(loadStarted()),
m_controller, SLOT(resetLoadFinished()));
+ connect(m_page, SIGNAL(windowCloseRequested()), this, SLOT(windowCloseRequested()));
connect(m_page->mainFrame(), SIGNAL(titleChanged(const QString&)),
SLOT(titleChanged(const QString&)));
@@ -782,9 +783,18 @@ QWebPage *DumpRenderTree::createWindow()
connect(page, SIGNAL(frameCreated(QWebFrame*)), this, SLOT(connectFrame(QWebFrame*)));
connectFrame(page->mainFrame());
connect(page, SIGNAL(loadFinished(bool)), m_controller, SLOT(maybeDump(bool)));
+ connect(page, SIGNAL(windowCloseRequested()), this, SLOT(windowCloseRequested()));
return page;
}
+void DumpRenderTree::windowCloseRequested()
+{
+ QWebPage* page = qobject_cast<QWebPage*>(sender());
+ QObject* container = page->parent();
+ windows.removeAll(container);
+ container->deleteLater();
+}
+
int DumpRenderTree::windowCount() const
{
// include the main view in the count
diff --git a/WebKitTools/DumpRenderTree/qt/DumpRenderTreeQt.h b/WebKitTools/DumpRenderTree/qt/DumpRenderTreeQt.h
index 9c3428b..ee7acb0 100644
--- a/WebKitTools/DumpRenderTree/qt/DumpRenderTreeQt.h
+++ b/WebKitTools/DumpRenderTree/qt/DumpRenderTreeQt.h
@@ -109,6 +109,7 @@ public Q_SLOTS:
void connectFrame(QWebFrame *frame);
void dumpDatabaseQuota(QWebFrame* frame, const QString& dbName);
void statusBarMessage(const QString& message);
+ void windowCloseRequested();
Q_SIGNALS:
void quit();
diff --git a/WebKitTools/DumpRenderTree/qt/LayoutTestControllerQt.cpp b/WebKitTools/DumpRenderTree/qt/LayoutTestControllerQt.cpp
index c2e097b..9948eba 100644
--- a/WebKitTools/DumpRenderTree/qt/LayoutTestControllerQt.cpp
+++ b/WebKitTools/DumpRenderTree/qt/LayoutTestControllerQt.cpp
@@ -88,7 +88,11 @@ void LayoutTestController::processWork()
// Called on loadFinished on mainFrame.
void LayoutTestController::maybeDump(bool success)
{
- Q_ASSERT(sender() == m_topLoadingFrame->page());
+ // It is possible that we get called by windows created from the main page that have finished
+ // loading, so we don't ASSERT here. At the moment we do not gather results from such windows,
+ // but may need to in future.
+ if (sender() != m_topLoadingFrame->page())
+ return;
m_loadFinished = true;
// as the function is called on loadFinished, the test might
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list