| Index: Source/web/ExternalPopupMenu.cpp
|
| diff --git a/Source/web/ExternalPopupMenu.cpp b/Source/web/ExternalPopupMenu.cpp
|
| index a1075db6f0f969ffca5151f58335509cdd62bc17..70221f782ef3fb0df075b6613f9738e12db37673 100644
|
| --- a/Source/web/ExternalPopupMenu.cpp
|
| +++ b/Source/web/ExternalPopupMenu.cpp
|
| @@ -64,9 +64,12 @@ ExternalPopupMenu::~ExternalPopupMenu()
|
| void ExternalPopupMenu::show(const FloatQuad& controlPosition, const IntSize&, int index)
|
| {
|
| IntRect rect(controlPosition.enclosingBoundingBox());
|
| - // WebCore reuses the PopupMenu of a page.
|
| + // WebCore reuses the PopupMenu of an element.
|
| // For simplicity, we do recreate the actual external popup everytime.
|
| - hide();
|
| + if (m_webExternalPopupMenu) {
|
| + m_webExternalPopupMenu->close();
|
| + m_webExternalPopupMenu = 0;
|
| + }
|
|
|
| WebPopupMenuInfo info;
|
| getPopupMenuInfo(&info);
|
|
|