| 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..b028e669258f010050e50b78c7402a1482074f14 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,15 @@ 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) {
|
| + Browser* browser = chrome::FindAnyBrowser(
|
| + profile, false,
|
| + chrome::GetHostDesktopTypeForNativeView(web_contents->GetNativeView()));
|
| + if (browser != nullptr)
|
| + browser->window()->CloseAvatarBubbleFromAvatarButton();
|
| + }
|
| +
|
| web_ui()->CallJavascriptFunction("inline.login.closeDialog");
|
| }
|
|
|