| 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/macros.h" | 7 #include "base/macros.h" |
| 8 #include "base/metrics/user_metrics.h" | 8 #include "base/metrics/user_metrics.h" |
| 9 #include "base/strings/utf_string_conversions.h" | 9 #include "base/strings/utf_string_conversions.h" |
| 10 #include "chrome/app/vector_icons/vector_icons.h" | 10 #include "chrome/app/vector_icons/vector_icons.h" |
| (...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 237 // view might both have the selection highlight. | 237 // view might both have the selection highlight. |
| 238 if (state() == STATE_HOVERED || state() == STATE_PRESSED) | 238 if (state() == STATE_HOVERED || state() == STATE_PRESSED) |
| 239 RequestFocus(); | 239 RequestFocus(); |
| 240 else if (state() == STATE_NORMAL && HasFocus()) | 240 else if (state() == STATE_NORMAL && HasFocus()) |
| 241 GetFocusManager()->SetFocusedView(nullptr); | 241 GetFocusManager()->SetFocusedView(nullptr); |
| 242 | 242 |
| 243 UpdateColors(); | 243 UpdateColors(); |
| 244 } | 244 } |
| 245 | 245 |
| 246 void UpdateColors() { | 246 void UpdateColors() { |
| 247 // TODO(tapted): This should use views::style::GetColor() to obtain grey |
| 248 // text where it's needed. But note |subtitle_| is used to draw an email, |
| 249 // which might not be grey in Harmony. |
| 247 bool is_selected = HasFocus(); | 250 bool is_selected = HasFocus(); |
| 248 | 251 |
| 249 set_background( | 252 set_background( |
| 250 is_selected | 253 is_selected |
| 251 ? views::Background::CreateSolidBackground( | 254 ? views::Background::CreateSolidBackground( |
| 252 GetNativeTheme()->GetSystemColor( | 255 GetNativeTheme()->GetSystemColor( |
| 253 ui::NativeTheme::kColorId_FocusedMenuItemBackgroundColor)) | 256 ui::NativeTheme::kColorId_FocusedMenuItemBackgroundColor)) |
| 254 : nullptr); | 257 : nullptr); |
| 255 | 258 |
| 256 SkColor text_color = GetNativeTheme()->GetSystemColor( | 259 SkColor text_color = GetNativeTheme()->GetSystemColor( |
| 257 is_selected ? ui::NativeTheme::kColorId_SelectedMenuItemForegroundColor | 260 is_selected ? ui::NativeTheme::kColorId_SelectedMenuItemForegroundColor |
| 258 : ui::NativeTheme::kColorId_LabelEnabledColor); | 261 : ui::NativeTheme::kColorId_LabelEnabledColor); |
| 259 SetEnabledTextColors(text_color); | 262 SetEnabledTextColors(text_color); |
| 260 if (title_) | 263 if (title_) |
| 261 title_->SetEnabledColor(text_color); | 264 title_->SetEnabledColor(text_color); |
| 262 | 265 |
| 263 if (subtitle_) { | 266 if (subtitle_) { |
| 264 DCHECK(!subtitle_->enabled()); | 267 subtitle_->SetEnabledColor(GetNativeTheme()->GetSystemColor( |
| 265 subtitle_->SetDisabledColor(GetNativeTheme()->GetSystemColor( | |
| 266 is_selected | 268 is_selected |
| 267 ? ui::NativeTheme::kColorId_DisabledMenuItemForegroundColor | 269 ? ui::NativeTheme::kColorId_DisabledMenuItemForegroundColor |
| 268 : ui::NativeTheme::kColorId_LabelDisabledColor)); | 270 : ui::NativeTheme::kColorId_LabelDisabledColor)); |
| 269 } | 271 } |
| 270 } | 272 } |
| 271 | 273 |
| 272 views::Label* title_; | 274 views::Label* title_; |
| 273 views::Label* subtitle_; | 275 views::Label* subtitle_; |
| 274 | 276 |
| 275 DISALLOW_COPY_AND_ASSIGN(BackgroundColorHoverButton); | 277 DISALLOW_COPY_AND_ASSIGN(BackgroundColorHoverButton); |
| (...skipping 888 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1164 new BackgroundColorHoverButton(this, button_text); | 1166 new BackgroundColorHoverButton(this, button_text); |
| 1165 manage_accounts_button_->SetHorizontalAlignment(gfx::ALIGN_LEFT); | 1167 manage_accounts_button_->SetHorizontalAlignment(gfx::ALIGN_LEFT); |
| 1166 manage_accounts_button_->SetMinSize( | 1168 manage_accounts_button_->SetMinSize( |
| 1167 gfx::Size(kFixedMenuWidth, kButtonHeight)); | 1169 gfx::Size(kFixedMenuWidth, kButtonHeight)); |
| 1168 view->AddChildView(manage_accounts_button_); | 1170 view->AddChildView(manage_accounts_button_); |
| 1169 } else { | 1171 } else { |
| 1170 views::Label* email_label = new views::Label(avatar_item.username); | 1172 views::Label* email_label = new views::Label(avatar_item.username); |
| 1171 current_profile_card->set_subtitle(email_label); | 1173 current_profile_card->set_subtitle(email_label); |
| 1172 email_label->SetAutoColorReadabilityEnabled(false); | 1174 email_label->SetAutoColorReadabilityEnabled(false); |
| 1173 email_label->SetElideBehavior(gfx::ELIDE_EMAIL); | 1175 email_label->SetElideBehavior(gfx::ELIDE_EMAIL); |
| 1174 email_label->SetEnabled(false); | |
| 1175 email_label->SetHorizontalAlignment(gfx::ALIGN_LEFT); | 1176 email_label->SetHorizontalAlignment(gfx::ALIGN_LEFT); |
| 1176 grid_layout->StartRow(1, 0); | 1177 grid_layout->StartRow(1, 0); |
| 1177 // Skip first column for the profile icon. | 1178 // Skip first column for the profile icon. |
| 1178 grid_layout->SkipColumns(1); | 1179 grid_layout->SkipColumns(1); |
| 1179 grid_layout->AddView(email_label, 1, 1, views::GridLayout::LEADING, | 1180 grid_layout->AddView(email_label, 1, 1, views::GridLayout::LEADING, |
| 1180 views::GridLayout::LEADING); | 1181 views::GridLayout::LEADING); |
| 1181 } | 1182 } |
| 1182 | 1183 |
| 1183 current_profile_card_->SetAccessibleName( | 1184 current_profile_card_->SetAccessibleName( |
| 1184 l10n_util::GetStringFUTF16( | 1185 l10n_util::GetStringFUTF16( |
| (...skipping 440 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1625 IncognitoModePrefs::GetAvailability(browser_->profile()->GetPrefs()) != | 1626 IncognitoModePrefs::GetAvailability(browser_->profile()->GetPrefs()) != |
| 1626 IncognitoModePrefs::DISABLED; | 1627 IncognitoModePrefs::DISABLED; |
| 1627 return incognito_available && !browser_->profile()->IsGuestSession(); | 1628 return incognito_available && !browser_->profile()->IsGuestSession(); |
| 1628 } | 1629 } |
| 1629 | 1630 |
| 1630 void ProfileChooserView::PostActionPerformed( | 1631 void ProfileChooserView::PostActionPerformed( |
| 1631 ProfileMetrics::ProfileDesktopMenu action_performed) { | 1632 ProfileMetrics::ProfileDesktopMenu action_performed) { |
| 1632 ProfileMetrics::LogProfileDesktopMenu(action_performed, gaia_service_type_); | 1633 ProfileMetrics::LogProfileDesktopMenu(action_performed, gaia_service_type_); |
| 1633 gaia_service_type_ = signin::GAIA_SERVICE_TYPE_NONE; | 1634 gaia_service_type_ = signin::GAIA_SERVICE_TYPE_NONE; |
| 1634 } | 1635 } |
| OLD | NEW |