1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "chrome/browser/chromeos/login/screens/wrong_hwid_screen.h" 6 7 #include "chrome/browser/chromeos/login/screens/screen_observer.h" 8 #include "chrome/browser/chromeos/login/wizard_controller.h" 9 10 namespace chromeos { 11 12 WrongHWIDScreen::WrongHWIDScreen(ScreenObserver* observer, 13 WrongHWIDScreenActor* actor) 14 : WizardScreen(observer), actor_(actor) { 15 DCHECK(actor_); 16 if (actor_) 17 actor_->SetDelegate(this); 18 } 19 20 WrongHWIDScreen::~WrongHWIDScreen() { 21 if (actor_) 22 actor_->SetDelegate(NULL); 23 } 24 25 void WrongHWIDScreen::PrepareToShow() { 26 if (actor_) 27 actor_->PrepareToShow(); 28 } 29 30 void WrongHWIDScreen::Show() { 31 if (actor_) 32 actor_->Show(); 33 } 34 35 void WrongHWIDScreen::Hide() { 36 if (actor_) 37 actor_->Hide(); 38 } 39 40 std::string WrongHWIDScreen::GetName() const { 41 return WizardController::kWrongHWIDScreenName; 42 } 43 44 void WrongHWIDScreen::OnExit() { 45 get_screen_observer()->OnExit(ScreenObserver::WRONG_HWID_WARNING_SKIPPED); 46 } 47 48 void WrongHWIDScreen::OnActorDestroyed(WrongHWIDScreenActor* actor) { 49 if (actor_ == actor) 50 actor_ = NULL; 51 } 52 53 } // namespace chromeos 54 55