Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(252)

Side by Side Diff: chrome/browser/ui/views/passwords/manage_passwords_bubble_view.cc

Issue 1978403003: [MD] Eliminate as many SetStyle(STYLE_BUTTON) calls as possible. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/passwords/manage_passwords_bubble_view.h" 5 #include "chrome/browser/ui/views/passwords/manage_passwords_bubble_view.h"
6 6
7 #include "base/macros.h" 7 #include "base/macros.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "base/timer/timer.h" 9 #include "base/timer/timer.h"
10 #include "chrome/browser/profiles/profile.h" 10 #include "chrome/browser/profiles/profile.h"
11 #include "chrome/browser/ui/browser.h" 11 #include "chrome/browser/ui/browser.h"
12 #include "chrome/browser/ui/browser_finder.h" 12 #include "chrome/browser/ui/browser_finder.h"
13 #include "chrome/browser/ui/exclusive_access/fullscreen_controller.h" 13 #include "chrome/browser/ui/exclusive_access/fullscreen_controller.h"
14 #include "chrome/browser/ui/views/frame/browser_view.h" 14 #include "chrome/browser/ui/views/frame/browser_view.h"
15 #include "chrome/browser/ui/views/passwords/credentials_item_view.h" 15 #include "chrome/browser/ui/views/passwords/credentials_item_view.h"
16 #include "chrome/browser/ui/views/passwords/credentials_selection_view.h" 16 #include "chrome/browser/ui/views/passwords/credentials_selection_view.h"
17 #include "chrome/browser/ui/views/passwords/manage_password_items_view.h" 17 #include "chrome/browser/ui/views/passwords/manage_password_items_view.h"
18 #include "chrome/browser/ui/views/passwords/manage_passwords_icon_views.h" 18 #include "chrome/browser/ui/views/passwords/manage_passwords_icon_views.h"
19 #include "chrome/grit/generated_resources.h" 19 #include "chrome/grit/generated_resources.h"
20 #include "content/public/browser/render_view_host.h" 20 #include "content/public/browser/render_view_host.h"
21 #include "grit/components_strings.h" 21 #include "grit/components_strings.h"
22 #include "ui/base/l10n/l10n_util.h" 22 #include "ui/base/l10n/l10n_util.h"
23 #include "ui/base/material_design/material_design_controller.h"
23 #include "ui/base/resource/resource_bundle.h" 24 #include "ui/base/resource/resource_bundle.h"
24 #include "ui/views/controls/button/blue_button.h" 25 #include "ui/views/controls/button/blue_button.h"
25 #include "ui/views/controls/button/label_button.h" 26 #include "ui/views/controls/button/md_text_button.h"
26 #include "ui/views/controls/link.h" 27 #include "ui/views/controls/link.h"
27 #include "ui/views/controls/link_listener.h" 28 #include "ui/views/controls/link_listener.h"
28 #include "ui/views/controls/separator.h" 29 #include "ui/views/controls/separator.h"
29 #include "ui/views/controls/styled_label.h" 30 #include "ui/views/controls/styled_label.h"
30 #include "ui/views/controls/styled_label_listener.h" 31 #include "ui/views/controls/styled_label_listener.h"
31 #include "ui/views/event_monitor.h" 32 #include "ui/views/event_monitor.h"
32 #include "ui/views/layout/fill_layout.h" 33 #include "ui/views/layout/fill_layout.h"
33 #include "ui/views/layout/grid_layout.h" 34 #include "ui/views/layout/grid_layout.h"
34 #include "ui/views/layout/layout_constants.h" 35 #include "ui/views/layout/layout_constants.h"
35 #include "ui/views/widget/widget.h" 36 #include "ui/views/widget/widget.h"
(...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after
168 new views::StyledLabel(model->title(), listener); 169 new views::StyledLabel(model->title(), listener);
169 title_label->SetBaseFontList( 170 title_label->SetBaseFontList(
170 ui::ResourceBundle::GetSharedInstance().GetFontList( 171 ui::ResourceBundle::GetSharedInstance().GetFontList(
171 ui::ResourceBundle::MediumFont)); 172 ui::ResourceBundle::MediumFont));
172 title_label->AddStyleRange(model->title_brand_link_range(), GetLinkStyle()); 173 title_label->AddStyleRange(model->title_brand_link_range(), GetLinkStyle());
173 layout->StartRow(0, SINGLE_VIEW_COLUMN_SET); 174 layout->StartRow(0, SINGLE_VIEW_COLUMN_SET);
174 layout->AddView(title_label); 175 layout->AddView(title_label);
175 layout->AddPaddingRow(0, views::kUnrelatedControlVerticalSpacing); 176 layout->AddPaddingRow(0, views::kUnrelatedControlVerticalSpacing);
176 } 177 }
177 178
178 std::unique_ptr<views::LabelButton> GenerateButton(
179 views::ButtonListener* listener,
180 const base::string16& text) {
181 std::unique_ptr<views::LabelButton> button(
182 new views::LabelButton(listener, text));
183 button->SetStyle(views::Button::STYLE_BUTTON);
184 return button;
185 }
186
187 } // namespace 179 } // namespace
188 180
189 // ManagePasswordsBubbleView::AutoSigninView ---------------------------------- 181 // ManagePasswordsBubbleView::AutoSigninView ----------------------------------
190 182
191 // A view containing just one credential that was used for for automatic signing 183 // A view containing just one credential that was used for for automatic signing
192 // in. 184 // in.
193 class ManagePasswordsBubbleView::AutoSigninView 185 class ManagePasswordsBubbleView::AutoSigninView
194 : public views::View, 186 : public views::View,
195 public views::ButtonListener, 187 public views::ButtonListener,
196 public views::WidgetObserver { 188 public views::WidgetObserver {
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
306 layout->set_minimum_size(gfx::Size(kDesiredBubbleWidth, 0)); 298 layout->set_minimum_size(gfx::Size(kDesiredBubbleWidth, 0));
307 SetLayoutManager(layout); 299 SetLayoutManager(layout);
308 300
309 // Create the pending credential item, save button and refusal combobox. 301 // Create the pending credential item, save button and refusal combobox.
310 ManagePasswordItemsView* item = nullptr; 302 ManagePasswordItemsView* item = nullptr;
311 if (!parent->model()->pending_password().username_value.empty()) { 303 if (!parent->model()->pending_password().username_value.empty()) {
312 std::vector<const autofill::PasswordForm*> credentials( 304 std::vector<const autofill::PasswordForm*> credentials(
313 1, &parent->model()->pending_password()); 305 1, &parent->model()->pending_password());
314 item = new ManagePasswordItemsView(parent_->model(), credentials); 306 item = new ManagePasswordItemsView(parent_->model(), credentials);
315 } 307 }
316 save_button_ = new views::BlueButton( 308 save_button_ = views::MdTextButton::CreateSecondaryUiBlueButton(
317 this, l10n_util::GetStringUTF16(IDS_PASSWORD_MANAGER_SAVE_BUTTON)); 309 this, l10n_util::GetStringUTF16(IDS_PASSWORD_MANAGER_SAVE_BUTTON));
318 never_button_ = GenerateButton( 310 never_button_ = views::MdTextButton::CreateSecondaryUiButton(
319 this, 311 this,
320 l10n_util::GetStringUTF16(IDS_PASSWORD_MANAGER_BUBBLE_BLACKLIST_BUTTON)) 312 l10n_util::GetStringUTF16(IDS_PASSWORD_MANAGER_BUBBLE_BLACKLIST_BUTTON));
321 .release();
322 313
323 // Title row. 314 // Title row.
324 BuildColumnSet(layout, SINGLE_VIEW_COLUMN_SET); 315 BuildColumnSet(layout, SINGLE_VIEW_COLUMN_SET);
325 AddTitleRowWithLink(layout, parent_->model(), this); 316 AddTitleRowWithLink(layout, parent_->model(), this);
326 317
327 // Credential row. 318 // Credential row.
328 if (item) { 319 if (item) {
329 layout->StartRow(0, SINGLE_VIEW_COLUMN_SET); 320 layout->StartRow(0, SINGLE_VIEW_COLUMN_SET);
330 layout->AddView(item); 321 layout->AddView(item);
331 layout->AddPaddingRow(0, views::kUnrelatedControlVerticalSpacing); 322 layout->AddPaddingRow(0, views::kUnrelatedControlVerticalSpacing);
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
444 views::kUnrelatedControlVerticalSpacing); 435 views::kUnrelatedControlVerticalSpacing);
445 layout->AddView(empty_label); 436 layout->AddView(empty_label);
446 } 437 }
447 438
448 // Then add the "manage passwords" link and "Done" button. 439 // Then add the "manage passwords" link and "Done" button.
449 manage_link_ = new views::Link(parent_->model()->manage_link()); 440 manage_link_ = new views::Link(parent_->model()->manage_link());
450 manage_link_->SetHorizontalAlignment(gfx::ALIGN_LEFT); 441 manage_link_->SetHorizontalAlignment(gfx::ALIGN_LEFT);
451 manage_link_->SetUnderline(false); 442 manage_link_->SetUnderline(false);
452 manage_link_->set_listener(this); 443 manage_link_->set_listener(this);
453 444
454 done_button_ = 445 done_button_ = views::MdTextButton::CreateSecondaryUiButton(
455 GenerateButton(this, l10n_util::GetStringUTF16(IDS_DONE)).release(); 446 this, l10n_util::GetStringUTF16(IDS_DONE));
456 447
457 BuildColumnSet(layout, LINK_BUTTON_COLUMN_SET); 448 BuildColumnSet(layout, LINK_BUTTON_COLUMN_SET);
458 layout->StartRowWithPadding(0, LINK_BUTTON_COLUMN_SET, 0, 449 layout->StartRowWithPadding(0, LINK_BUTTON_COLUMN_SET, 0,
459 views::kUnrelatedControlVerticalSpacing); 450 views::kUnrelatedControlVerticalSpacing);
460 layout->AddView(manage_link_); 451 layout->AddView(manage_link_);
461 layout->AddView(done_button_); 452 layout->AddView(done_button_);
462 453
463 parent_->set_initially_focused_view(done_button_); 454 parent_->set_initially_focused_view(done_button_);
464 } 455 }
465 456
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
520 confirmation->SetBaseFontList( 511 confirmation->SetBaseFontList(
521 ui::ResourceBundle::GetSharedInstance().GetFontList( 512 ui::ResourceBundle::GetSharedInstance().GetFontList(
522 ui::ResourceBundle::SmallFont)); 513 ui::ResourceBundle::SmallFont));
523 confirmation->AddStyleRange( 514 confirmation->AddStyleRange(
524 parent_->model()->save_confirmation_link_range(), GetLinkStyle()); 515 parent_->model()->save_confirmation_link_range(), GetLinkStyle());
525 516
526 BuildColumnSet(layout, SINGLE_VIEW_COLUMN_SET); 517 BuildColumnSet(layout, SINGLE_VIEW_COLUMN_SET);
527 layout->StartRow(0, SINGLE_VIEW_COLUMN_SET); 518 layout->StartRow(0, SINGLE_VIEW_COLUMN_SET);
528 layout->AddView(confirmation); 519 layout->AddView(confirmation);
529 520
530 ok_button_ = 521 ok_button_ = views::MdTextButton::CreateSecondaryUiButton(
531 GenerateButton(this, l10n_util::GetStringUTF16(IDS_OK)).release(); 522 this, l10n_util::GetStringUTF16(IDS_OK));
532 523
533 BuildColumnSet(layout, SINGLE_BUTTON_COLUMN_SET); 524 BuildColumnSet(layout, SINGLE_BUTTON_COLUMN_SET);
534 layout->StartRowWithPadding( 525 layout->StartRowWithPadding(
535 0, SINGLE_BUTTON_COLUMN_SET, 0, views::kRelatedControlVerticalSpacing); 526 0, SINGLE_BUTTON_COLUMN_SET, 0, views::kRelatedControlVerticalSpacing);
536 layout->AddView(ok_button_); 527 layout->AddView(ok_button_);
537 528
538 parent_->set_initially_focused_view(ok_button_); 529 parent_->set_initially_focused_view(ok_button_);
539 } 530 }
540 531
541 ManagePasswordsBubbleView::SaveConfirmationView::~SaveConfirmationView() { 532 ManagePasswordsBubbleView::SaveConfirmationView::~SaveConfirmationView() {
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
652 if (parent->model()->ShouldShowMultipleAccountUpdateUI()) { 643 if (parent->model()->ShouldShowMultipleAccountUpdateUI()) {
653 selection_view_ = new CredentialsSelectionView( 644 selection_view_ = new CredentialsSelectionView(
654 parent->model(), parent->model()->local_credentials().get(), 645 parent->model(), parent->model()->local_credentials().get(),
655 parent->model()->pending_password().username_value); 646 parent->model()->pending_password().username_value);
656 item = selection_view_; 647 item = selection_view_;
657 } else { 648 } else {
658 std::vector<const autofill::PasswordForm*> forms; 649 std::vector<const autofill::PasswordForm*> forms;
659 forms.push_back(&parent->model()->pending_password()); 650 forms.push_back(&parent->model()->pending_password());
660 item = new ManagePasswordItemsView(parent_->model(), forms); 651 item = new ManagePasswordItemsView(parent_->model(), forms);
661 } 652 }
662 nope_button_ = GenerateButton( 653 nope_button_ = views::MdTextButton::CreateSecondaryUiButton(
663 this, 654 this, l10n_util::GetStringUTF16(IDS_PASSWORD_MANAGER_CANCEL_BUTTON));
664 l10n_util::GetStringUTF16(IDS_PASSWORD_MANAGER_CANCEL_BUTTON)).release();
665 655
666 update_button_ = new views::BlueButton( 656 update_button_ = new views::BlueButton(
667 this, l10n_util::GetStringUTF16(IDS_PASSWORD_MANAGER_UPDATE_BUTTON)); 657 this, l10n_util::GetStringUTF16(IDS_PASSWORD_MANAGER_UPDATE_BUTTON));
668 658
669 // Title row. 659 // Title row.
670 BuildColumnSet(layout, SINGLE_VIEW_COLUMN_SET); 660 BuildColumnSet(layout, SINGLE_VIEW_COLUMN_SET);
671 AddTitleRowWithLink(layout, parent_->model(), this); 661 AddTitleRowWithLink(layout, parent_->model(), this);
672 662
673 // Credential row. 663 // Credential row.
674 layout->StartRow(0, SINGLE_VIEW_COLUMN_SET); 664 layout->StartRow(0, SINGLE_VIEW_COLUMN_SET);
(...skipping 156 matching lines...) Expand 10 before | Expand all | Expand 10 after
831 AddChildView(new SaveConfirmationView(this)); 821 AddChildView(new SaveConfirmationView(this));
832 } else if (model_.state() == password_manager::ui::AUTO_SIGNIN_STATE) { 822 } else if (model_.state() == password_manager::ui::AUTO_SIGNIN_STATE) {
833 AddChildView(new AutoSigninView(this)); 823 AddChildView(new AutoSigninView(this));
834 } else { 824 } else {
835 AddChildView(new ManageView(this)); 825 AddChildView(new ManageView(this));
836 } 826 }
837 if (GetWidget()) 827 if (GetWidget())
838 GetWidget()->UpdateWindowTitle(); 828 GetWidget()->UpdateWindowTitle();
839 GetLayoutManager()->Layout(this); 829 GetLayoutManager()->Layout(this);
840 } 830 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698