| Index: chrome/browser/chromeos/login/screen_lock_view.cc
|
| diff --git a/chrome/browser/chromeos/login/screen_lock_view.cc b/chrome/browser/chromeos/login/screen_lock_view.cc
|
| index 69a270b875f809d624d19f9cceb4749c9dfeb287..388b48a82ead44d5707e2c49ab85c015c44357d4 100644
|
| --- a/chrome/browser/chromeos/login/screen_lock_view.cc
|
| +++ b/chrome/browser/chromeos/login/screen_lock_view.cc
|
| @@ -63,10 +63,14 @@ ScreenLockView::ScreenLockView(ScreenLocker* screen_locker)
|
| password_field_(NULL),
|
| screen_locker_(screen_locker),
|
| main_(NULL),
|
| - username_(NULL) {
|
| + username_(NULL),
|
| + throbber_manager_(new ThrobberManager()) {
|
| DCHECK(screen_locker_);
|
| }
|
|
|
| +ScreenLockView::~ScreenLockView() {
|
| +}
|
| +
|
| gfx::Size ScreenLockView::GetPreferredSize() {
|
| return main_->GetPreferredSize();
|
| }
|
| @@ -160,11 +164,23 @@ gfx::Rect ScreenLockView::GetPasswordBoundsRelativeTo(const views::View* view) {
|
| return gfx::Rect(p, size());
|
| }
|
|
|
| +void ScreenLockView::StartThrobber() {
|
| + if (password_field_->GetWidget()) {
|
| + throbber_manager_->CreateAndStart(password_field_->GetWidget(),
|
| + CreateDefaultSmoothedThrobber(),
|
| + login::kThrobberRightMargin);
|
| + }
|
| +}
|
| +
|
| +void ScreenLockView::StopThrobber() {
|
| + throbber_manager_->StopAndClose();
|
| +}
|
| +
|
| +
|
| void ScreenLockView::SetEnabled(bool enabled) {
|
| views::View::SetEnabled(enabled);
|
|
|
| if (!enabled) {
|
| - user_view_->StartThrobber();
|
| // TODO(oshima): Re-enabling does not move the focus to the view
|
| // that had a focus (issue http://crbug.com/43131).
|
| // Clear focus on the textfield so that re-enabling can set focus
|
| @@ -173,8 +189,6 @@ void ScreenLockView::SetEnabled(bool enabled) {
|
| // associated Widget yet.
|
| if (password_field_->GetFocusManager())
|
| password_field_->GetFocusManager()->ClearFocus();
|
| - } else {
|
| - user_view_->StopThrobber();
|
| }
|
| password_field_->SetEnabled(enabled);
|
| }
|
| @@ -213,4 +227,5 @@ void ScreenLockView::ViewHierarchyChanged(bool is_add,
|
| if (is_add && this == child)
|
| WizardAccessibilityHelper::GetInstance()->MaybeEnableAccessibility(this);
|
| }
|
| +
|
| } // namespace chromeos
|
|
|