Index: chrome/browser/ui/webui/signin/inline_login_handler.cc |
diff --git a/chrome/browser/ui/webui/signin/inline_login_handler.cc b/chrome/browser/ui/webui/signin/inline_login_handler.cc |
index 11190a7af90fdb88ae6e0a0979c5e7ee9100a050..3484ef43cba2f3b795910e62b8f74396bdc0b065 100644 |
--- a/chrome/browser/ui/webui/signin/inline_login_handler.cc |
+++ b/chrome/browser/ui/webui/signin/inline_login_handler.cc |
@@ -13,12 +13,16 @@ |
#include "chrome/browser/extensions/signin/gaia_auth_extension_loader.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/signin/signin_promo.h" |
+#include "chrome/browser/ui/browser_finder.h" |
#include "chrome/browser/ui/browser_navigator.h" |
+#include "chrome/browser/ui/browser_window.h" |
#include "chrome/common/pref_names.h" |
+#include "components/signin/core/common/profile_management_switches.h" |
#include "content/public/browser/web_contents.h" |
#include "content/public/browser/web_ui.h" |
#include "google_apis/gaia/gaia_urls.h" |
#include "net/base/url_util.h" |
+#include "ui/aura/window.h" |
InlineLoginHandler::InlineLoginHandler() {} |
@@ -136,5 +140,16 @@ void InlineLoginHandler::HandleSwitchToFullTabMessage( |
ui::PAGE_TRANSITION_AUTO_TOPLEVEL); |
chrome::Navigate(¶ms); |
+ signin_metrics::Source source = signin::GetSourceForPromoURL(main_frame_url); |
+ if (source == signin_metrics::SOURCE_AVATAR_BUBBLE_SIGN_IN || |
+ source == signin_metrics::SOURCE_AVATAR_BUBBLE_ADD_ACCOUNT) { |
+ // Close avatar bubble through any browser since it is a singleton. |
msw
2015/05/20 00:18:12
nit: consider: "Close the singleton avatar bubble
gogerald1
2015/05/20 14:06:24
Done.
|
+ Browser* browser = chrome::FindAnyBrowser( |
+ profile, false, |
+ chrome::GetHostDesktopTypeForNativeView(web_contents->GetNativeView())); |
+ if (browser != nullptr) |
+ browser->window()->CloseAvatarBubbleFromAvatarButton(); |
msw
2015/05/20 00:18:12
Please duplicate/inline CloseAvatarBubbleFromAvata
gogerald1
2015/05/20 14:06:24
Can't do that, since it is not allowed to include
msw
2015/05/20 16:54:09
Acknowledged.
|
+ } |
+ |
web_ui()->CallJavascriptFunction("inline.login.closeDialog"); |
} |