1// Copyright 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/kiosk_autolaunch_screen.h" 6 7#include "base/logging.h" 8#include "chrome/browser/chromeos/customization_document.h" 9#include "chrome/browser/chromeos/login/screens/screen_observer.h" 10#include "chrome/browser/chromeos/login/wizard_controller.h" 11 12namespace chromeos { 13 14KioskAutolaunchScreen::KioskAutolaunchScreen(ScreenObserver* observer, 15 KioskAutolaunchScreenActor* actor) 16 : WizardScreen(observer), actor_(actor) { 17 DCHECK(actor_); 18 if (actor_) 19 actor_->SetDelegate(this); 20} 21 22KioskAutolaunchScreen::~KioskAutolaunchScreen() { 23 if (actor_) 24 actor_->SetDelegate(NULL); 25} 26 27void KioskAutolaunchScreen::Show() { 28 if (actor_) 29 actor_->Show(); 30} 31 32std::string KioskAutolaunchScreen::GetName() const { 33 return WizardController::kKioskAutolaunchScreenName; 34} 35 36void KioskAutolaunchScreen::OnExit(bool confirmed) { 37 get_screen_observer()->OnExit( 38 confirmed ? ScreenObserver::KIOSK_AUTOLAUNCH_CONFIRMED : 39 ScreenObserver::KIOSK_AUTOLAUNCH_CANCELED); 40} 41 42void KioskAutolaunchScreen::OnActorDestroyed( 43 KioskAutolaunchScreenActor* actor) { 44 if (actor_ == actor) 45 actor_ = NULL; 46} 47 48} // namespace chromeos 49