Chromium Code Reviews| Index: chrome/browser/ui/views/browser_dialogs_views_mac.cc |
| diff --git a/chrome/browser/ui/views/browser_dialogs_views_mac.cc b/chrome/browser/ui/views/browser_dialogs_views_mac.cc |
| index f30448add01b2e69586eb22d5804f244625825ef..d9806c7975bdd736886019f89627fc0c6a0462a1 100644 |
| --- a/chrome/browser/ui/views/browser_dialogs_views_mac.cc |
| +++ b/chrome/browser/ui/views/browser_dialogs_views_mac.cc |
| @@ -26,6 +26,16 @@ void ShowWebsiteSettingsBubbleViewsAtPoint( |
| content::WebContents* web_contents, |
| const GURL& virtual_url, |
| const security_state::SecurityStateModel::SecurityInfo& security_info) { |
| + // Don't show the bubble again if it's already showing. A second click on the |
| + // location icon in the omnibox will dismiss an open bubble. This behaviour is |
| + // consistent with the non-Mac views implementation. |
| + // This must be checked explicitly on views platforms because the bubble is |
|
tapted
2016/06/08 06:54:57
'views platforms' is a confusing concept now :). P
dominickn
2016/06/08 07:03:34
Done.
|
| + // triggered on mouse release, which is too late to stop the original bubble |
| + // from being dismissed and IsPopupShowing from being reset. On Mac, this |
| + // method is called on mouse press, before the bubble deallocates and resets. |
| + if (WebsiteSettingsPopupView::IsPopupShowing()) |
| + return; |
| + |
| WebsiteSettingsPopupView::ShowPopup( |
| nullptr, gfx::Rect(anchor_point, gfx::Size()), profile, web_contents, |
| virtual_url, security_info); |