| OLD | NEW | 
|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #include "chrome/browser/ui/views/profiles/profile_chooser_view.h" | 5 #include "chrome/browser/ui/views/profiles/profile_chooser_view.h" | 
| 6 | 6 | 
| 7 #include "base/prefs/pref_service.h" | 7 #include "base/prefs/pref_service.h" | 
| 8 #include "base/strings/utf_string_conversions.h" | 8 #include "base/strings/utf_string_conversions.h" | 
| 9 #include "chrome/browser/browser_process.h" | 9 #include "chrome/browser/browser_process.h" | 
| 10 #include "chrome/browser/lifetime/application_lifetime.h" | 10 #include "chrome/browser/lifetime/application_lifetime.h" | 
| (...skipping 638 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 649                                        profiles::TutorialMode tutorial_mode, | 649                                        profiles::TutorialMode tutorial_mode, | 
| 650                                        signin::GAIAServiceType service_type) | 650                                        signin::GAIAServiceType service_type) | 
| 651     : BubbleDelegateView(anchor_view, arrow), | 651     : BubbleDelegateView(anchor_view, arrow), | 
| 652       browser_(browser), | 652       browser_(browser), | 
| 653       view_mode_(view_mode), | 653       view_mode_(view_mode), | 
| 654       tutorial_mode_(tutorial_mode), | 654       tutorial_mode_(tutorial_mode), | 
| 655       gaia_service_type_(service_type) { | 655       gaia_service_type_(service_type) { | 
| 656   // Reset the default margins inherited from the BubbleDelegateView. | 656   // Reset the default margins inherited from the BubbleDelegateView. | 
| 657   // Add a small bottom inset so that the bubble's rounded corners show up. | 657   // Add a small bottom inset so that the bubble's rounded corners show up. | 
| 658   set_margins(gfx::Insets(0, 0, 1, 0)); | 658   set_margins(gfx::Insets(0, 0, 1, 0)); | 
| 659   set_background(views::Background::CreateSolidBackground( |  | 
| 660       GetNativeTheme()->GetSystemColor( |  | 
| 661           ui::NativeTheme::kColorId_DialogBackground))); |  | 
| 662   ResetView(); | 659   ResetView(); | 
| 663 | 660 | 
| 664   avatar_menu_.reset(new AvatarMenu( | 661   avatar_menu_.reset(new AvatarMenu( | 
| 665       &g_browser_process->profile_manager()->GetProfileInfoCache(), | 662       &g_browser_process->profile_manager()->GetProfileInfoCache(), | 
| 666       this, | 663       this, | 
| 667       browser_)); | 664       browser_)); | 
| 668   avatar_menu_->RebuildMenu(); | 665   avatar_menu_->RebuildMenu(); | 
| 669 | 666 | 
| 670   ProfileOAuth2TokenService* oauth2_token_service = | 667   ProfileOAuth2TokenService* oauth2_token_service = | 
| 671       ProfileOAuth2TokenServiceFactory::GetForProfile(browser_->profile()); | 668       ProfileOAuth2TokenServiceFactory::GetForProfile(browser_->profile()); | 
| (...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 718     view_mode_ = profiles::BUBBLE_VIEW_MODE_ACCOUNT_MANAGEMENT; | 715     view_mode_ = profiles::BUBBLE_VIEW_MODE_ACCOUNT_MANAGEMENT; | 
| 719   } | 716   } | 
| 720 | 717 | 
| 721   // The arrow keys can be used to tab between items. | 718   // The arrow keys can be used to tab between items. | 
| 722   AddAccelerator(ui::Accelerator(ui::VKEY_DOWN, ui::EF_NONE)); | 719   AddAccelerator(ui::Accelerator(ui::VKEY_DOWN, ui::EF_NONE)); | 
| 723   AddAccelerator(ui::Accelerator(ui::VKEY_UP, ui::EF_NONE)); | 720   AddAccelerator(ui::Accelerator(ui::VKEY_UP, ui::EF_NONE)); | 
| 724 | 721 | 
| 725   ShowView(view_mode_, avatar_menu_.get()); | 722   ShowView(view_mode_, avatar_menu_.get()); | 
| 726 } | 723 } | 
| 727 | 724 | 
|  | 725 void ProfileChooserView::OnNativeThemeChanged( | 
|  | 726     const ui::NativeTheme* native_theme) { | 
|  | 727   views::BubbleDelegateView::OnNativeThemeChanged(native_theme); | 
|  | 728   set_background(views::Background::CreateSolidBackground( | 
|  | 729       GetNativeTheme()->GetSystemColor( | 
|  | 730           ui::NativeTheme::kColorId_DialogBackground))); | 
|  | 731   if (auth_error_email_button_) { | 
|  | 732     auth_error_email_button_->SetTextColor( | 
|  | 733         views::LabelButton::STATE_NORMAL, | 
|  | 734         native_theme->GetSystemColor(ui::NativeTheme::kColorId_LinkEnabled)); | 
|  | 735   } | 
|  | 736 } | 
|  | 737 | 
| 728 void ProfileChooserView::OnAvatarMenuChanged( | 738 void ProfileChooserView::OnAvatarMenuChanged( | 
| 729     AvatarMenu* avatar_menu) { | 739     AvatarMenu* avatar_menu) { | 
| 730   if (IsProfileChooser(view_mode_) || | 740   if (IsProfileChooser(view_mode_) || | 
| 731       view_mode_ == profiles::BUBBLE_VIEW_MODE_ACCOUNT_MANAGEMENT) { | 741       view_mode_ == profiles::BUBBLE_VIEW_MODE_ACCOUNT_MANAGEMENT) { | 
| 732     // Refresh the view with the new menu. We can't just update the local copy | 742     // Refresh the view with the new menu. We can't just update the local copy | 
| 733     // as this may have been triggered by a sign out action, in which case | 743     // as this may have been triggered by a sign out action, in which case | 
| 734     // the view is being destroyed. | 744     // the view is being destroyed. | 
| 735     ShowView(view_mode_, avatar_menu); | 745     ShowView(view_mode_, avatar_menu); | 
| 736   } | 746   } | 
| 737 } | 747 } | 
| (...skipping 612 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1350       // Badge the email address if there's an authentication error. | 1360       // Badge the email address if there's an authentication error. | 
| 1351       if (HasAuthError(browser_->profile())) { | 1361       if (HasAuthError(browser_->profile())) { | 
| 1352         auth_error_email_button_ = | 1362         auth_error_email_button_ = | 
| 1353             new RightAlignedIconLabelButton(this, avatar_item.username); | 1363             new RightAlignedIconLabelButton(this, avatar_item.username); | 
| 1354         auth_error_email_button_->SetElideBehavior(gfx::ELIDE_EMAIL); | 1364         auth_error_email_button_->SetElideBehavior(gfx::ELIDE_EMAIL); | 
| 1355         auth_error_email_button_->SetImage( | 1365         auth_error_email_button_->SetImage( | 
| 1356             views::LabelButton::STATE_NORMAL, | 1366             views::LabelButton::STATE_NORMAL, | 
| 1357             gfx::CreateVectorIcon(gfx::VectorIconId::WARNING, 18, | 1367             gfx::CreateVectorIcon(gfx::VectorIconId::WARNING, 18, | 
| 1358                                   gfx::kChromeIconGrey)); | 1368                                   gfx::kChromeIconGrey)); | 
| 1359 | 1369 | 
| 1360         auth_error_email_button_->SetTextColor( |  | 
| 1361             views::LabelButton::STATE_NORMAL, |  | 
| 1362             ui::NativeTheme::instance()->GetSystemColor( |  | 
| 1363                 ui::NativeTheme::kColorId_LinkEnabled)); |  | 
| 1364         auth_error_email_button_->SetFocusable(true); | 1370         auth_error_email_button_->SetFocusable(true); | 
| 1365         gfx::Insets insets = | 1371         gfx::Insets insets = | 
| 1366             views::LabelButtonAssetBorder::GetDefaultInsetsForStyle( | 1372             views::LabelButtonAssetBorder::GetDefaultInsetsForStyle( | 
| 1367                 views::Button::STYLE_TEXTBUTTON); | 1373                 views::Button::STYLE_TEXTBUTTON); | 
| 1368         auth_error_email_button_->SetBorder(views::Border::CreateEmptyBorder( | 1374         auth_error_email_button_->SetBorder(views::Border::CreateEmptyBorder( | 
| 1369             insets.top(), insets.left(), insets.bottom(), insets.right())); | 1375             insets.top(), insets.left(), insets.bottom(), insets.right())); | 
| 1370         layout->AddView(auth_error_email_button_); | 1376         layout->AddView(auth_error_email_button_); | 
| 1371       } else { | 1377       } else { | 
| 1372         // Add a small padding between the email button and the profile name. | 1378         // Add a small padding between the email button and the profile name. | 
| 1373         layout->StartRowWithPadding(1, 0, 0, 2); | 1379         layout->StartRowWithPadding(1, 0, 0, 2); | 
| (...skipping 497 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1871       IncognitoModePrefs::GetAvailability(browser_->profile()->GetPrefs()) != | 1877       IncognitoModePrefs::GetAvailability(browser_->profile()->GetPrefs()) != | 
| 1872           IncognitoModePrefs::DISABLED; | 1878           IncognitoModePrefs::DISABLED; | 
| 1873   return incognito_available && !browser_->profile()->IsGuestSession(); | 1879   return incognito_available && !browser_->profile()->IsGuestSession(); | 
| 1874 } | 1880 } | 
| 1875 | 1881 | 
| 1876 void ProfileChooserView::PostActionPerformed( | 1882 void ProfileChooserView::PostActionPerformed( | 
| 1877     ProfileMetrics::ProfileDesktopMenu action_performed) { | 1883     ProfileMetrics::ProfileDesktopMenu action_performed) { | 
| 1878   ProfileMetrics::LogProfileDesktopMenu(action_performed, gaia_service_type_); | 1884   ProfileMetrics::LogProfileDesktopMenu(action_performed, gaia_service_type_); | 
| 1879   gaia_service_type_ = signin::GAIA_SERVICE_TYPE_NONE; | 1885   gaia_service_type_ = signin::GAIA_SERVICE_TYPE_NONE; | 
| 1880 } | 1886 } | 
| OLD | NEW | 
|---|