| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/supervised/supervised_user_creation_scre
en.h" | 5 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_scre
en.h" |
| 6 | 6 |
| 7 #include "ash/desktop_background/desktop_background_controller.h" | 7 #include "ash/desktop_background/desktop_background_controller.h" |
| 8 #include "ash/shell.h" | 8 #include "ash/shell.h" |
| 9 #include "base/rand_util.h" | 9 #include "base/rand_util.h" |
| 10 #include "base/values.h" | 10 #include "base/values.h" |
| 11 #include "chrome/browser/chromeos/camera_detector.h" | 11 #include "chrome/browser/chromeos/camera_detector.h" |
| 12 #include "chrome/browser/chromeos/login/error_screens_histogram_helper.h" |
| 12 #include "chrome/browser/chromeos/login/existing_user_controller.h" | 13 #include "chrome/browser/chromeos/login/existing_user_controller.h" |
| 13 #include "chrome/browser/chromeos/login/screens/error_screen.h" | 14 #include "chrome/browser/chromeos/login/screens/error_screen.h" |
| 14 #include "chrome/browser/chromeos/login/screens/screen_observer.h" | 15 #include "chrome/browser/chromeos/login/screens/screen_observer.h" |
| 15 #include "chrome/browser/chromeos/login/signin_specifics.h" | 16 #include "chrome/browser/chromeos/login/signin_specifics.h" |
| 16 #include "chrome/browser/chromeos/login/supervised/supervised_user_authenticatio
n.h" | 17 #include "chrome/browser/chromeos/login/supervised/supervised_user_authenticatio
n.h" |
| 17 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_cont
roller.h" | 18 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_cont
roller.h" |
| 18 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_cont
roller_new.h" | 19 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_cont
roller_new.h" |
| 19 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager.h" | 20 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager.h" |
| 20 #include "chrome/browser/chromeos/login/users/chrome_user_manager.h" | 21 #include "chrome/browser/chromeos/login/users/chrome_user_manager.h" |
| 21 #include "chrome/browser/chromeos/login/users/supervised_user_manager.h" | 22 #include "chrome/browser/chromeos/login/users/supervised_user_manager.h" |
| (...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 ScreenObserver* observer, | 90 ScreenObserver* observer, |
| 90 SupervisedUserCreationScreenHandler* actor) | 91 SupervisedUserCreationScreenHandler* actor) |
| 91 : WizardScreen(observer), | 92 : WizardScreen(observer), |
| 92 weak_factory_(this), | 93 weak_factory_(this), |
| 93 actor_(actor), | 94 actor_(actor), |
| 94 on_error_screen_(false), | 95 on_error_screen_(false), |
| 95 last_page_(kNameOfIntroScreen), | 96 last_page_(kNameOfIntroScreen), |
| 96 sync_service_(NULL), | 97 sync_service_(NULL), |
| 97 image_decoder_(NULL), | 98 image_decoder_(NULL), |
| 98 apply_photo_after_decoding_(false), | 99 apply_photo_after_decoding_(false), |
| 99 selected_image_(0) { | 100 selected_image_(0), |
| 101 histogram_helper_(new ErrorScreensHistogramHelper("Supervised")) { |
| 100 DCHECK(actor_); | 102 DCHECK(actor_); |
| 101 if (actor_) | 103 if (actor_) |
| 102 actor_->SetDelegate(this); | 104 actor_->SetDelegate(this); |
| 103 } | 105 } |
| 104 | 106 |
| 105 SupervisedUserCreationScreen::~SupervisedUserCreationScreen() { | 107 SupervisedUserCreationScreen::~SupervisedUserCreationScreen() { |
| 106 CameraPresenceNotifier::GetInstance()->RemoveObserver(this); | 108 CameraPresenceNotifier::GetInstance()->RemoveObserver(this); |
| 107 if (sync_service_) | 109 if (sync_service_) |
| 108 sync_service_->RemoveObserver(this); | 110 sync_service_->RemoveObserver(this); |
| 109 if (actor_) | 111 if (actor_) |
| (...skipping 16 matching lines...) Expand all Loading... |
| 126 // removed once we have screens reworked. | 128 // removed once we have screens reworked. |
| 127 if (on_error_screen_) | 129 if (on_error_screen_) |
| 128 actor_->ShowPage(last_page_); | 130 actor_->ShowPage(last_page_); |
| 129 else | 131 else |
| 130 actor_->ShowIntroPage(); | 132 actor_->ShowIntroPage(); |
| 131 } | 133 } |
| 132 | 134 |
| 133 if (!on_error_screen_) | 135 if (!on_error_screen_) |
| 134 NetworkPortalDetector::Get()->AddAndFireObserver(this); | 136 NetworkPortalDetector::Get()->AddAndFireObserver(this); |
| 135 on_error_screen_ = false; | 137 on_error_screen_ = false; |
| 138 histogram_helper_->OnScreenShow(); |
| 136 } | 139 } |
| 137 | 140 |
| 138 void SupervisedUserCreationScreen::OnPageSelected(const std::string& page) { | 141 void SupervisedUserCreationScreen::OnPageSelected(const std::string& page) { |
| 139 last_page_ = page; | 142 last_page_ = page; |
| 140 } | 143 } |
| 141 | 144 |
| 142 void SupervisedUserCreationScreen::OnPortalDetectionCompleted( | 145 void SupervisedUserCreationScreen::OnPortalDetectionCompleted( |
| 143 const NetworkState* network, | 146 const NetworkState* network, |
| 144 const NetworkPortalDetector::CaptivePortalState& state) { | 147 const NetworkPortalDetector::CaptivePortalState& state) { |
| 145 if (state.status == NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE) { | 148 if (state.status == NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE) { |
| 146 get_screen_observer()->HideErrorScreen(this); | 149 get_screen_observer()->HideErrorScreen(this); |
| 150 histogram_helper_->OnErrorHide(); |
| 147 } else { | 151 } else { |
| 148 on_error_screen_ = true; | 152 on_error_screen_ = true; |
| 149 ErrorScreen* screen = get_screen_observer()->GetErrorScreen(); | 153 ErrorScreen* screen = get_screen_observer()->GetErrorScreen(); |
| 150 ConfigureErrorScreen(screen, network, state.status); | 154 ConfigureErrorScreen(screen, network, state.status); |
| 151 screen->SetUIState(ErrorScreen::UI_STATE_SUPERVISED); | 155 screen->SetUIState(ErrorScreen::UI_STATE_SUPERVISED); |
| 152 get_screen_observer()->ShowErrorScreen(); | 156 get_screen_observer()->ShowErrorScreen(); |
| 157 histogram_helper_->OnErrorShow(screen->GetErrorState()); |
| 153 } | 158 } |
| 154 } | 159 } |
| 155 | 160 |
| 156 void SupervisedUserCreationScreen::ShowManagerInconsistentStateErrorScreen() { | 161 void SupervisedUserCreationScreen::ShowManagerInconsistentStateErrorScreen() { |
| 157 if (!actor_) | 162 if (!actor_) |
| 158 return; | 163 return; |
| 159 actor_->ShowErrorPage( | 164 actor_->ShowErrorPage( |
| 160 l10n_util::GetStringUTF16( | 165 l10n_util::GetStringUTF16( |
| 161 IDS_CREATE_SUPERVISED_USER_MANAGER_INCONSISTENT_STATE_TITLE), | 166 IDS_CREATE_SUPERVISED_USER_MANAGER_INCONSISTENT_STATE_TITLE), |
| 162 l10n_util::GetStringUTF16( | 167 l10n_util::GetStringUTF16( |
| (...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 594 selected_image_ = user_manager::User::USER_IMAGE_EXTERNAL; | 599 selected_image_ = user_manager::User::USER_IMAGE_EXTERNAL; |
| 595 } else { | 600 } else { |
| 596 NOTREACHED() << "Unexpected image type: " << image_type; | 601 NOTREACHED() << "Unexpected image type: " << image_type; |
| 597 } | 602 } |
| 598 } | 603 } |
| 599 | 604 |
| 600 void SupervisedUserCreationScreen::OnImageAccepted() { | 605 void SupervisedUserCreationScreen::OnImageAccepted() { |
| 601 } | 606 } |
| 602 | 607 |
| 603 } // namespace chromeos | 608 } // namespace chromeos |
| OLD | NEW |