| Index: chrome/browser/ui/views/profiles/profile_chooser_view.cc
|
| diff --git a/chrome/browser/ui/views/profiles/profile_chooser_view.cc b/chrome/browser/ui/views/profiles/profile_chooser_view.cc
|
| index f55258026ec657bf0ba3466211ae3fa8ea3bc099..fcbf281bcb91ba17c3740d75b8c767d4471b2ed3 100644
|
| --- a/chrome/browser/ui/views/profiles/profile_chooser_view.cc
|
| +++ b/chrome/browser/ui/views/profiles/profile_chooser_view.cc
|
| @@ -518,6 +518,18 @@ bool ProfileChooserView::IsShowing() {
|
| }
|
|
|
| // static
|
| +ProfileChooserView::ShowingType ProfileChooserView::IsShowingInBrowser(
|
| + const Browser* browser) {
|
| + if (profile_bubble_ == nullptr)
|
| + return IS_NOT_SHOWING;
|
| +
|
| + if (profile_bubble_->browser_ == browser || browser == nullptr)
|
| + return IS_SHOWING;
|
| +
|
| + return IS_SHOWING_IN_ANOTHER_BROWSER;
|
| +}
|
| +
|
| +// static
|
| void ProfileChooserView::Hide() {
|
| if (IsShowing())
|
| profile_bubble_->GetWidget()->Close();
|
| @@ -686,6 +698,15 @@ void ProfileChooserView::ShowView(profiles::BubbleViewMode view_to_display,
|
| if (view_mode_ != profiles::BUBBLE_VIEW_MODE_PROFILE_CHOOSER)
|
| tutorial_mode_ = profiles::TUTORIAL_MODE_NONE;
|
|
|
| + if (view_mode_ == profiles::BUBBLE_VIEW_MODE_GAIA_SIGNIN ||
|
| + view_mode_ == profiles::BUBBLE_VIEW_MODE_GAIA_ADD_ACCOUNT ||
|
| + view_mode_ == profiles::BUBBLE_VIEW_MODE_GAIA_REAUTH ||
|
| + tutorial_mode_ == profiles::TUTORIAL_MODE_CONFIRM_SIGNIN) {
|
| + profile_bubble_->set_close_on_deactivate(false);
|
| + } else {
|
| + profile_bubble_->set_close_on_deactivate(close_on_deactivate_for_testing_);
|
| + }
|
| +
|
| layout->StartRow(1, 0);
|
| layout->AddView(sub_view);
|
| Layout();
|
|
|