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

Side by Side Diff: chrome/browser/chromeos/login/existing_user_view.cc

Issue 3442011: Enabling access notifications for login wizard (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 2 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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/chromeos/login/existing_user_view.h" 5 #include "chrome/browser/chromeos/login/existing_user_view.h"
6 6
7 #include "app/l10n_util.h" 7 #include "app/l10n_util.h"
8 #include "chrome/browser/chromeos/login/helper.h" 8 #include "chrome/browser/chromeos/login/helper.h"
9 #include "chrome/browser/chromeos/login/user_controller.h" 9 #include "chrome/browser/chromeos/login/user_controller.h"
10 #include "chrome/browser/chromeos/login/wizard_accessibility_helper.h"
10 #include "grit/generated_resources.h" 11 #include "grit/generated_resources.h"
11 #include "views/focus/focus_manager.h" 12 #include "views/focus/focus_manager.h"
12 #include "views/grid_layout.h" 13 #include "views/grid_layout.h"
13 14
14 namespace chromeos { 15 namespace chromeos {
15 16
16 using login::kBorderSize; 17 using login::kBorderSize;
17 using views::GridLayout; 18 using views::GridLayout;
18 19
19 // NativeButton that will always return focus to password field. 20 // NativeButton that will always return focus to password field.
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 else 63 else
63 return views::Textfield::SkipDefaultKeyEventProcessing(e); 64 return views::Textfield::SkipDefaultKeyEventProcessing(e);
64 } 65 }
65 66
66 private: 67 private:
67 UserController* controller_; 68 UserController* controller_;
68 69
69 DISALLOW_COPY_AND_ASSIGN(UserEntryTextfield); 70 DISALLOW_COPY_AND_ASSIGN(UserEntryTextfield);
70 }; 71 };
71 72
73
72 ExistingUserView::ExistingUserView(UserController* uc) 74 ExistingUserView::ExistingUserView(UserController* uc)
73 : accel_login_off_the_record_( 75 : password_field_(NULL),
74 views::Accelerator(app::VKEY_B, false, false, true)),
75 password_field_(NULL),
76 submit_button_(NULL), 76 submit_button_(NULL),
77 user_controller_(uc) { 77 user_controller_(uc),
78 accel_enable_accessibility_(
79 WizardAccessibilityHelper::GetAccelerator()) {
78 AddAccelerator(accel_login_off_the_record_); 80 AddAccelerator(accel_login_off_the_record_);
79 } 81 }
80 82
81 void ExistingUserView::RecreateFields() { 83 void ExistingUserView::RecreateFields() {
82 if (password_field_ == NULL) { 84 if (password_field_ == NULL) {
83 password_field_ = new UserEntryTextfield(user_controller_, 85 password_field_ = new UserEntryTextfield(user_controller_,
84 views::Textfield::STYLE_PASSWORD); 86 views::Textfield::STYLE_PASSWORD);
85 password_field_->SetFocusable(true); 87 password_field_->SetFocusable(true);
86 password_field_->SetController(user_controller_); 88 password_field_->SetController(user_controller_);
87 } 89 }
(...skipping 13 matching lines...) Expand all
101 GridLayout::USE_PREF, 0, 0); 103 GridLayout::USE_PREF, 0, 0);
102 column_set->AddPaddingColumn(0, kBorderSize); 104 column_set->AddPaddingColumn(0, kBorderSize);
103 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 0, 105 column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 0,
104 GridLayout::USE_PREF, 0, 0); 106 GridLayout::USE_PREF, 0, 0);
105 layout->StartRow(0, 0); 107 layout->StartRow(0, 0);
106 layout->AddView(password_field_); 108 layout->AddView(password_field_);
107 layout->AddView(submit_button_); 109 layout->AddView(submit_button_);
108 SetLayoutManager(layout); 110 SetLayoutManager(layout);
109 layout->Layout(this); 111 layout->Layout(this);
110 SchedulePaint(); 112 SchedulePaint();
113 AddAccelerator(accel_enable_accessibility_);
Nikita (slow) 2010/09/29 14:10:23 I'm moving this call to ctor. RecreateFields is ca
114 }
115
116 bool ExistingUserView::AcceleratorPressed(
117 const views::Accelerator& accelerator) {
118 if (accelerator == accel_login_off_the_record_) {
119 user_controller_->OnLoginOffTheRecord();
120 return true;
121 } else if (accelerator == accel_enable_accessibility_) {
122 WizardAccessibilityHelper::GetInstance()->EnableAccessibility(this);
123 return true;
124 }
125 return false;
126 }
127
128 void ExistingUserView::ViewHierarchyChanged(bool is_add,
129 views::View* parent,
130 views::View* child) {
131 if (is_add && this == child)
132 WizardAccessibilityHelper::GetInstance()->MaybeEnableAccessibility(this);
111 } 133 }
112 134
113 void ExistingUserView::FocusPasswordField() { 135 void ExistingUserView::FocusPasswordField() {
114 if (GetFocusManager()) { 136 if (GetFocusManager()) {
115 password_field()->RequestFocus(); 137 password_field()->RequestFocus();
116 } 138 }
117 } 139 }
118 140
119 void ExistingUserView::OnLocaleChanged() { 141 void ExistingUserView::OnLocaleChanged() {
120 RecreateFields(); 142 RecreateFields();
121 } 143 }
122
123
124 bool ExistingUserView::AcceleratorPressed(
125 const views::Accelerator& accelerator) {
126 if (accelerator == accel_login_off_the_record_) {
127 user_controller_->OnLoginOffTheRecord();
128 return true;
129 }
130 return false;
131 }
132
133 } // namespace chromeos 144 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698