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

Side by Side Diff: chrome/browser/chromeos/login/supervised/supervised_user_creation_screen.cc

Issue 494633003: UMA: How often are different network error screens encountered during OOBE (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Update after review Created 6 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
OLDNEW
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/screen_manager.h" 14 #include "chrome/browser/chromeos/login/screen_manager.h"
14 #include "chrome/browser/chromeos/login/screens/error_screen.h" 15 #include "chrome/browser/chromeos/login/screens/error_screen.h"
15 #include "chrome/browser/chromeos/login/screens/screen_observer.h" 16 #include "chrome/browser/chromeos/login/screens/screen_observer.h"
16 #include "chrome/browser/chromeos/login/signin_specifics.h" 17 #include "chrome/browser/chromeos/login/signin_specifics.h"
17 #include "chrome/browser/chromeos/login/supervised/supervised_user_authenticatio n.h" 18 #include "chrome/browser/chromeos/login/supervised/supervised_user_authenticatio n.h"
18 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_cont roller.h" 19 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_cont roller.h"
19 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_cont roller_new.h" 20 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_cont roller_new.h"
20 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_flow .h" 21 #include "chrome/browser/chromeos/login/supervised/supervised_user_creation_flow .h"
21 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager.h" 22 #include "chrome/browser/chromeos/login/users/avatar/user_image_manager.h"
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
99 SupervisedUserCreationScreenHandler* actor) 100 SupervisedUserCreationScreenHandler* actor)
100 : BaseScreen(observer), 101 : BaseScreen(observer),
101 actor_(actor), 102 actor_(actor),
102 on_error_screen_(false), 103 on_error_screen_(false),
103 manager_signin_in_progress_(false), 104 manager_signin_in_progress_(false),
104 last_page_(kNameOfIntroScreen), 105 last_page_(kNameOfIntroScreen),
105 sync_service_(NULL), 106 sync_service_(NULL),
106 image_decoder_(NULL), 107 image_decoder_(NULL),
107 apply_photo_after_decoding_(false), 108 apply_photo_after_decoding_(false),
108 selected_image_(0), 109 selected_image_(0),
110 histogram_helper_(new ErrorScreensHistogramHelper("Supervised")),
109 weak_factory_(this) { 111 weak_factory_(this) {
110 DCHECK(actor_); 112 DCHECK(actor_);
111 if (actor_) 113 if (actor_)
112 actor_->SetDelegate(this); 114 actor_->SetDelegate(this);
113 } 115 }
114 116
115 SupervisedUserCreationScreen::~SupervisedUserCreationScreen() { 117 SupervisedUserCreationScreen::~SupervisedUserCreationScreen() {
116 CameraPresenceNotifier::GetInstance()->RemoveObserver(this); 118 CameraPresenceNotifier::GetInstance()->RemoveObserver(this);
117 if (sync_service_) 119 if (sync_service_)
118 sync_service_->RemoveObserver(this); 120 sync_service_->RemoveObserver(this);
(...skipping 17 matching lines...) Expand all
136 // removed once we have screens reworked. 138 // removed once we have screens reworked.
137 if (on_error_screen_) 139 if (on_error_screen_)
138 actor_->ShowPage(last_page_); 140 actor_->ShowPage(last_page_);
139 else 141 else
140 actor_->ShowIntroPage(); 142 actor_->ShowIntroPage();
141 } 143 }
142 144
143 if (!on_error_screen_) 145 if (!on_error_screen_)
144 NetworkPortalDetector::Get()->AddAndFireObserver(this); 146 NetworkPortalDetector::Get()->AddAndFireObserver(this);
145 on_error_screen_ = false; 147 on_error_screen_ = false;
148 histogram_helper_->OnScreenShow();
146 } 149 }
147 150
148 void SupervisedUserCreationScreen::OnPageSelected(const std::string& page) { 151 void SupervisedUserCreationScreen::OnPageSelected(const std::string& page) {
149 last_page_ = page; 152 last_page_ = page;
150 } 153 }
151 154
152 void SupervisedUserCreationScreen::OnPortalDetectionCompleted( 155 void SupervisedUserCreationScreen::OnPortalDetectionCompleted(
153 const NetworkState* network, 156 const NetworkState* network,
154 const NetworkPortalDetector::CaptivePortalState& state) { 157 const NetworkPortalDetector::CaptivePortalState& state) {
155 if (state.status == NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE) { 158 if (state.status == NetworkPortalDetector::CAPTIVE_PORTAL_STATUS_ONLINE) {
156 get_screen_observer()->HideErrorScreen(this); 159 get_screen_observer()->HideErrorScreen(this);
160 histogram_helper_->OnErrorHide();
157 } else { 161 } else {
158 on_error_screen_ = true; 162 on_error_screen_ = true;
159 ErrorScreen* screen = get_screen_observer()->GetErrorScreen(); 163 ErrorScreen* screen = get_screen_observer()->GetErrorScreen();
160 ConfigureErrorScreen(screen, network, state.status); 164 ConfigureErrorScreen(screen, network, state.status);
161 screen->SetUIState(ErrorScreen::UI_STATE_SUPERVISED); 165 screen->SetUIState(ErrorScreen::UI_STATE_SUPERVISED);
162 get_screen_observer()->ShowErrorScreen(); 166 get_screen_observer()->ShowErrorScreen();
167 histogram_helper_->OnErrorShow(screen->GetErrorState());
163 } 168 }
164 } 169 }
165 170
166 void SupervisedUserCreationScreen::ShowManagerInconsistentStateErrorScreen() { 171 void SupervisedUserCreationScreen::ShowManagerInconsistentStateErrorScreen() {
167 manager_signin_in_progress_ = false; 172 manager_signin_in_progress_ = false;
168 if (!actor_) 173 if (!actor_)
169 return; 174 return;
170 actor_->ShowErrorPage( 175 actor_->ShowErrorPage(
171 l10n_util::GetStringUTF16( 176 l10n_util::GetStringUTF16(
172 IDS_CREATE_SUPERVISED_USER_MANAGER_INCONSISTENT_STATE_TITLE), 177 IDS_CREATE_SUPERVISED_USER_MANAGER_INCONSISTENT_STATE_TITLE),
(...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after
614 selected_image_ = user_manager::User::USER_IMAGE_EXTERNAL; 619 selected_image_ = user_manager::User::USER_IMAGE_EXTERNAL;
615 } else { 620 } else {
616 NOTREACHED() << "Unexpected image type: " << image_type; 621 NOTREACHED() << "Unexpected image type: " << image_type;
617 } 622 }
618 } 623 }
619 624
620 void SupervisedUserCreationScreen::OnImageAccepted() { 625 void SupervisedUserCreationScreen::OnImageAccepted() {
621 } 626 }
622 627
623 } // namespace chromeos 628 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698