OLD | NEW |
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/chromeos/login/existing_user_controller.h" | 5 #include "chrome/browser/chromeos/login/existing_user_controller.h" |
6 | 6 |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
(...skipping 606 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
617 content::BrowserThread::PostDelayedTask( | 617 content::BrowserThread::PostDelayedTask( |
618 content::BrowserThread::UI, FROM_HERE, | 618 content::BrowserThread::UI, FROM_HERE, |
619 base::Bind(&SessionManagerClient::StopSession, | 619 base::Bind(&SessionManagerClient::StopSession, |
620 base::Unretained(DBusThreadManager::Get()-> | 620 base::Unretained(DBusThreadManager::Get()-> |
621 GetSessionManagerClient())), | 621 GetSessionManagerClient())), |
622 base::TimeDelta::FromMilliseconds(kSafeModeRestartUiDelayMs)); | 622 base::TimeDelta::FromMilliseconds(kSafeModeRestartUiDelayMs)); |
623 } else if (failure.reason() == AuthFailure::TPM_ERROR) { | 623 } else if (failure.reason() == AuthFailure::TPM_ERROR) { |
624 ShowTPMError(); | 624 ShowTPMError(); |
625 } else if (!online_succeeded_for_.empty()) { | 625 } else if (!online_succeeded_for_.empty()) { |
626 ShowGaiaPasswordChanged(online_succeeded_for_); | 626 ShowGaiaPasswordChanged(online_succeeded_for_); |
| 627 } else if (last_login_attempt_username_ == chromeos::login::kGuestUserName) { |
| 628 // Show no errors, just re-enable input. |
| 629 login_display_->ClearAndEnablePassword(); |
| 630 StartPublicSessionAutoLoginTimer(); |
627 } else { | 631 } else { |
628 // Check networking after trying to login in case user is | 632 // Check networking after trying to login in case user is |
629 // cached locally or the local admin account. | 633 // cached locally or the local admin account. |
630 bool is_known_user = user_manager::UserManager::Get()->IsKnownUser( | 634 bool is_known_user = user_manager::UserManager::Get()->IsKnownUser( |
631 last_login_attempt_username_); | 635 last_login_attempt_username_); |
632 if (!network_state_helper_->IsConnected()) { | 636 if (!network_state_helper_->IsConnected()) { |
633 if (is_known_user) | 637 if (is_known_user) |
634 ShowError(IDS_LOGIN_ERROR_AUTHENTICATING, error); | 638 ShowError(IDS_LOGIN_ERROR_AUTHENTICATING, error); |
635 else | 639 else |
636 ShowError(IDS_LOGIN_ERROR_OFFLINE_FAILED_NETWORK_NOT_CONNECTED, error); | 640 ShowError(IDS_LOGIN_ERROR_OFFLINE_FAILED_NETWORK_NOT_CONNECTED, error); |
(...skipping 481 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1118 is_login_in_progress_ = false; | 1122 is_login_in_progress_ = false; |
1119 | 1123 |
1120 // Reenable clicking on other windows and status area. | 1124 // Reenable clicking on other windows and status area. |
1121 login_display_->SetUIEnabled(true); | 1125 login_display_->SetUIEnabled(true); |
1122 | 1126 |
1123 if (start_public_session_timer) | 1127 if (start_public_session_timer) |
1124 StartPublicSessionAutoLoginTimer(); | 1128 StartPublicSessionAutoLoginTimer(); |
1125 } | 1129 } |
1126 | 1130 |
1127 } // namespace chromeos | 1131 } // namespace chromeos |
OLD | NEW |