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

Side by Side Diff: chrome/browser/ui/views/password_generation_bubble_view.cc

Issue 10458018: This CL does the following: (1) Pass the max_length attribute to the password generator; (2) Update… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Some changes based on the code review. Created 8 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/password_generation_bubble_view.h" 5 #include "chrome/browser/ui/views/password_generation_bubble_view.h"
6 6
7 #include "base/utf_string_conversions.h" 7 #include "base/utf_string_conversions.h"
8 #include "chrome/browser/autofill/password_generator.h" 8 #include "chrome/browser/autofill/password_generator.h"
9 #include "chrome/common/autofill_messages.h" 9 #include "chrome/common/autofill_messages.h"
10 #include "content/public/browser/render_view_host.h" 10 #include "content/public/browser/render_view_host.h"
11 #include "ui/views/controls/button/text_button.h" 11 #include "ui/views/controls/button/text_button.h"
12 #include "ui/views/controls/label.h" 12 #include "ui/views/controls/label.h"
13 #include "ui/views/controls/textfield/textfield.h" 13 #include "ui/views/controls/textfield/textfield.h"
14 #include "ui/views/layout/grid_layout.h" 14 #include "ui/views/layout/grid_layout.h"
15 #include "ui/views/layout/layout_constants.h" 15 #include "ui/views/layout/layout_constants.h"
16 16
17 using views::ColumnSet; 17 using views::ColumnSet;
18 using views::GridLayout; 18 using views::GridLayout;
19 19
20 PasswordGenerationBubbleView::PasswordGenerationBubbleView( 20 PasswordGenerationBubbleView::PasswordGenerationBubbleView(
21 const gfx::Rect& anchor_rect, 21 const gfx::Rect& anchor_rect,
22 views::View* anchor_view, 22 views::View* anchor_view,
23 content::RenderViewHost* render_view_host) 23 content::RenderViewHost* render_view_host,
24 const autofill::PasswordGenerator& password_generator)
24 : BubbleDelegateView(anchor_view, views::BubbleBorder::TOP_LEFT), 25 : BubbleDelegateView(anchor_view, views::BubbleBorder::TOP_LEFT),
25 accept_button_(NULL), 26 accept_button_(NULL),
26 text_field_(NULL), 27 text_field_(NULL),
27 anchor_rect_(anchor_rect), 28 anchor_rect_(anchor_rect),
28 render_view_host_(render_view_host) {} 29 render_view_host_(render_view_host),
30 password_generator_(password_generator) {}
29 31
30 PasswordGenerationBubbleView::~PasswordGenerationBubbleView() {} 32 PasswordGenerationBubbleView::~PasswordGenerationBubbleView() {}
31 33
32 void PasswordGenerationBubbleView::Init() { 34 void PasswordGenerationBubbleView::Init() {
33 // TODO(gcasto): Localize text after we have finalized the UI. 35 // TODO(gcasto): Localize text after we have finalized the UI.
34 // crbug.com/118062 36 // crbug.com/118062
35 accept_button_ = new views::NativeTextButton(this, 37 accept_button_ = new views::NativeTextButton(this,
36 ASCIIToUTF16("Try It")); 38 ASCIIToUTF16("Try It"));
37 39
38 text_field_ = new views::Textfield(); 40 text_field_ = new views::Textfield();
39 text_field_->SetText(ASCIIToUTF16(password_generator_.Generate())); 41 text_field_->SetText(
42 ASCIIToUTF16(password_generator_.Generate()));
40 43
41 views::Label* title_label = new views::Label( 44 views::Label* title_label = new views::Label(
42 ASCIIToUTF16("Password Suggestion")); 45 ASCIIToUTF16("Password Suggestion"));
43 46
44 GridLayout* layout = new GridLayout(this); 47 GridLayout* layout = new GridLayout(this);
45 SetLayoutManager(layout); 48 SetLayoutManager(layout);
46 49
47 // Title row. 50 // Title row.
48 ColumnSet* cs = layout->AddColumnSet(0); 51 ColumnSet* cs = layout->AddColumnSet(0);
49 cs->AddColumn(GridLayout::CENTER, GridLayout::CENTER, 0, 52 cs->AddColumn(GridLayout::CENTER, GridLayout::CENTER, 0,
(...skipping 20 matching lines...) Expand all
70 } 73 }
71 74
72 void PasswordGenerationBubbleView::ButtonPressed(views::Button* sender, 75 void PasswordGenerationBubbleView::ButtonPressed(views::Button* sender,
73 const views::Event& event) { 76 const views::Event& event) {
74 if (sender == accept_button_) { 77 if (sender == accept_button_) {
75 render_view_host_->Send(new AutofillMsg_GeneratedPasswordAccepted( 78 render_view_host_->Send(new AutofillMsg_GeneratedPasswordAccepted(
76 render_view_host_->GetRoutingID(), text_field_->text())); 79 render_view_host_->GetRoutingID(), text_field_->text()));
77 StartFade(false); 80 StartFade(false);
78 } 81 }
79 } 82 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698