1116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Copyright 2014 The Chromium Authors. All rights reserved. 2116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Use of this source code is governed by a BSD-style license that can be 3116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// found in the LICENSE file. 4116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 5116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/chromeos/login/session/kiosk_auto_launcher_session_manager_delegate.h" 6116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 7116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "base/logging.h" 8116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/chromeos/login/login_wizard.h" 9116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/chromeos/login/wizard_controller.h" 10116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chromeos/dbus/dbus_thread_manager.h" 11116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chromeos/dbus/session_manager_client.h" 12116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 13116680a4aac90f2aa7413d9095a592090648e557Ben Murdochnamespace chromeos { 14116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 15116680a4aac90f2aa7413d9095a592090648e557Ben MurdochKioskAutoLauncherSessionManagerDelegate:: 16116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch KioskAutoLauncherSessionManagerDelegate() { 17116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 18116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 19116680a4aac90f2aa7413d9095a592090648e557Ben MurdochKioskAutoLauncherSessionManagerDelegate:: 20116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch ~KioskAutoLauncherSessionManagerDelegate() { 21116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 22116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 23116680a4aac90f2aa7413d9095a592090648e557Ben Murdochvoid KioskAutoLauncherSessionManagerDelegate::Start() { 24116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch // Kiosk app launcher starts with login state. 25116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch session_manager_->SetSessionState( 26116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch session_manager::SESSION_STATE_LOGIN_PRIMARY); 27116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch ShowLoginWizard(chromeos::WizardController::kAppLaunchSplashScreenName); 29116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 30116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch // Login screen is skipped but 'login-prompt-visible' signal is still needed. 31116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch VLOG(1) << "Kiosk app auto launch >> login-prompt-visible"; 32116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch DBusThreadManager::Get()->GetSessionManagerClient()->EmitLoginPromptVisible(); 33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 34116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 35116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} // namespace chromeos 36