Title: [118258] trunk/Source/WebKit/chromium
Revision
118258
Author
jcive...@chromium.org
Date
2012-05-23 15:28:24 -0700 (Wed, 23 May 2012)

Log Message

[chromium] Provides a way to cancel an external popup menu before it is shown.
https://bugs.webkit.org/show_bug.cgi?id=83474

Reviewed by Kent Tamura.

* src/ExternalPopupMenu.cpp:
(WebKit::ExternalPopupMenu::show):

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (118257 => 118258)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-05-23 22:25:21 UTC (rev 118257)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-05-23 22:28:24 UTC (rev 118258)
@@ -1,3 +1,13 @@
+2012-05-23  Jay Civelli  <jcive...@chromium.org>
+
+        [chromium] Provides a way to cancel an external popup menu before it is shown.
+        https://bugs.webkit.org/show_bug.cgi?id=83474
+
+        Reviewed by Kent Tamura.
+
+        * src/ExternalPopupMenu.cpp:
+        (WebKit::ExternalPopupMenu::show):
+
 2012-05-23  Michael Nordman  <micha...@google.com>
 
         [chromium] DomStorage events handling needs TLC (3)

Modified: trunk/Source/WebKit/chromium/src/ExternalPopupMenu.cpp (118257 => 118258)


--- trunk/Source/WebKit/chromium/src/ExternalPopupMenu.cpp	2012-05-23 22:25:21 UTC (rev 118257)
+++ trunk/Source/WebKit/chromium/src/ExternalPopupMenu.cpp	2012-05-23 22:28:24 UTC (rev 118258)
@@ -69,7 +69,12 @@
         return;
     m_webExternalPopupMenu =
         m_webViewClient->createExternalPopupMenu(info, this);
-    m_webExternalPopupMenu->show(v->contentsToWindow(rect));
+    if (m_webExternalPopupMenu)
+        m_webExternalPopupMenu->show(v->contentsToWindow(rect));
+    else {
+        // The client might refuse to create a popup (when there is already one pending to be shown for example).
+        didCancel();
+    }
 }
 
 void ExternalPopupMenu::hide()
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to