[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.16-1409-g5afdf4d
darin at chromium.org
darin at chromium.org
Thu Dec 3 13:38:48 UTC 2009
The following commit has been merged in the webkit-1.1 branch:
commit 6a7924474d41b1752b197a46ed22c2dca2b59b82
Author: darin at chromium.org <darin at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Nov 18 06:51:19 2009 +0000
2009-11-17 Nicolas Weber <thakis at chromium.org>
Reviewed by Darin Fisher.
Fix crash in Chromium/Mac where dropdowns weren't dismissed correctly
after navigation.
https://bugs.webkit.org/show_bug.cgi?id=31609
* platform/chromium/PopupMenuChromium.cpp:
(WebCore::PopupContainer::showExternal): Set parent for external
dropdowns, so that |PopupListBox::hidePopup()| can successfully notify
its parent's client.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@51102 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index b724b60..c1f5ecb 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,16 @@
+2009-11-17 Nicolas Weber <thakis at chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ Fix crash in Chromium/Mac where dropdowns weren't dismissed correctly
+ after navigation.
+ https://bugs.webkit.org/show_bug.cgi?id=31609
+
+ * platform/chromium/PopupMenuChromium.cpp:
+ (WebCore::PopupContainer::showExternal): Set parent for external
+ dropdowns, so that |PopupListBox::hidePopup()| can successfully notify
+ its parent's client.
+
2009-11-17 Hayato Ito <hayato at google.com>
Reviewed by Darin Adler.
diff --git a/WebCore/platform/chromium/PopupMenuChromium.cpp b/WebCore/platform/chromium/PopupMenuChromium.cpp
index f0cd8a2..5abd364 100644
--- a/WebCore/platform/chromium/PopupMenuChromium.cpp
+++ b/WebCore/platform/chromium/PopupMenuChromium.cpp
@@ -370,6 +370,12 @@ void PopupContainer::showExternal(const IntRect& rect, FrameView* v, int index)
ChromeClientChromium* client = static_cast<ChromeClientChromium*>(
v->frame()->page()->chrome()->client());
client->popupOpened(this, popupRect, true, true);
+
+ // The popup sends its "closed" notification through its parent. Set the
+ // parent, even though external popups have no real on-screen widget but a
+ // native menu (see |PopupListBox::hidePopup()|);
+ if (!m_listBox->parent())
+ addChild(m_listBox.get());
}
void PopupContainer::hidePopup()
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list