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

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

Issue 1107363002: Merge M43: Fix crash on Enrollment screen. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2357
Patch Set: Created 5 years, 7 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 (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/wizard_controller.h" 5 #include "chrome/browser/chromeos/login/wizard_controller.h"
6 6
7 #include <signal.h> 7 #include <signal.h>
8 #include <stdlib.h> 8 #include <stdlib.h>
9 #include <sys/types.h> 9 #include <sys/types.h>
10 10
(...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after
279 first_screen_name_ = screen_pref; 279 first_screen_name_ = screen_pref;
280 } 280 }
281 281
282 AdvanceToScreen(first_screen_name_); 282 AdvanceToScreen(first_screen_name_);
283 if (!IsMachineHWIDCorrect() && !StartupUtils::IsDeviceRegistered() && 283 if (!IsMachineHWIDCorrect() && !StartupUtils::IsDeviceRegistered() &&
284 first_screen_name_.empty()) 284 first_screen_name_.empty())
285 ShowWrongHWIDScreen(); 285 ShowWrongHWIDScreen();
286 } 286 }
287 287
288 ErrorScreen* WizardController::GetErrorScreen() { 288 ErrorScreen* WizardController::GetErrorScreen() {
289 return static_cast<ErrorScreen*>(GetScreen(kErrorScreenName)); 289 return oobe_display_->GetErrorScreen();
290 }
291
292 BaseScreen* WizardController::GetScreen(const std::string& screen_name) {
293 if (screen_name == kErrorScreenName)
294 return GetErrorScreen();
295 return ScreenManager::GetScreen(screen_name);
290 } 296 }
291 297
292 BaseScreen* WizardController::CreateScreen(const std::string& screen_name) { 298 BaseScreen* WizardController::CreateScreen(const std::string& screen_name) {
293 if (screen_name == kNetworkScreenName) { 299 if (screen_name == kNetworkScreenName) {
294 scoped_ptr<NetworkScreen> screen( 300 scoped_ptr<NetworkScreen> screen(
295 new NetworkScreen(this, this, oobe_display_->GetNetworkView())); 301 new NetworkScreen(this, this, oobe_display_->GetNetworkView()));
296 screen->Initialize(nullptr /* context */); 302 screen->Initialize(nullptr /* context */);
297 return screen.release(); 303 return screen.release();
298 } else if (screen_name == kErrorScreenName) {
299 scoped_ptr<ErrorScreen> screen =
300 static_cast<OobeUI*>(oobe_display_)->GetErrorScreen();
301 if (!screen)
302 screen.reset(new ErrorScreen(this, oobe_display_->GetNetworkErrorView()));
303 screen->Initialize(nullptr /* context */);
304 return screen.release();
305 } else if (screen_name == kUpdateScreenName) { 304 } else if (screen_name == kUpdateScreenName) {
306 scoped_ptr<UpdateScreen> screen(new UpdateScreen( 305 scoped_ptr<UpdateScreen> screen(new UpdateScreen(
307 this, oobe_display_->GetUpdateView(), remora_controller_.get())); 306 this, oobe_display_->GetUpdateView(), remora_controller_.get()));
308 screen->Initialize(nullptr /* context */); 307 screen->Initialize(nullptr /* context */);
309 return screen.release(); 308 return screen.release();
310 } else if (screen_name == kUserImageScreenName) { 309 } else if (screen_name == kUserImageScreenName) {
311 return new UserImageScreen(this, oobe_display_->GetUserImageView()); 310 return new UserImageScreen(this, oobe_display_->GetUserImageView());
312 } else if (screen_name == kEulaScreenName) { 311 } else if (screen_name == kEulaScreenName) {
313 return new EulaScreen(this, this, oobe_display_->GetEulaView()); 312 return new EulaScreen(this, this, oobe_display_->GetEulaView());
314 } else if (screen_name == kEnrollmentScreenName) { 313 } else if (screen_name == kEnrollmentScreenName) {
(...skipping 994 matching lines...) Expand 10 before | Expand all | Expand 10 after
1309 } 1308 }
1310 1309
1311 EnrollmentScreen* screen = EnrollmentScreen::Get(this); 1310 EnrollmentScreen* screen = EnrollmentScreen::Get(this);
1312 screen->SetParameters(effective_config, shark_controller_.get(), 1311 screen->SetParameters(effective_config, shark_controller_.get(),
1313 remora_controller_.get()); 1312 remora_controller_.get());
1314 SetStatusAreaVisible(true); 1313 SetStatusAreaVisible(true);
1315 SetCurrentScreen(screen); 1314 SetCurrentScreen(screen);
1316 } 1315 }
1317 1316
1318 } // namespace chromeos 1317 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/login/wizard_controller.h ('k') | chrome/browser/ui/webui/chromeos/login/oobe_ui.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698