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/login_oobe_session_manager_delegate.h" 6116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 7116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "base/prefs/pref_service.h" 8116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/browser_process.h" 9116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/browser_process_platform_part_chromeos.h" 10116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.h" 11116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/chromeos/kiosk_mode/kiosk_mode_settings.h" 12116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/chromeos/login/login_wizard.h" 13116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/browser/chromeos/policy/browser_policy_connector_chromeos.h" 14116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "chrome/common/pref_names.h" 15116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 16116680a4aac90f2aa7413d9095a592090648e557Ben Murdochnamespace chromeos { 17116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 18116680a4aac90f2aa7413d9095a592090648e557Ben MurdochLoginOobeSessionManagerDelegate::LoginOobeSessionManagerDelegate() { 19116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 20116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 21116680a4aac90f2aa7413d9095a592090648e557Ben MurdochLoginOobeSessionManagerDelegate::~LoginOobeSessionManagerDelegate() { 22116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 23116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 24116680a4aac90f2aa7413d9095a592090648e557Ben Murdochvoid LoginOobeSessionManagerDelegate::Start() { 25116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch // State will be defined once out-of-box/login branching is complete. 26116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch ShowLoginWizard(std::string()); 27116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch if (KioskModeSettings::Get()->IsKioskModeEnabled()) 29116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch InitializeKioskModeScreensaver(); 30116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 31116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch // Reset reboot after update flag when login screen is shown. 32116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch policy::BrowserPolicyConnectorChromeOS* connector = 33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch g_browser_process->platform_part()->browser_policy_connector_chromeos(); 34116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch if (!connector->IsEnterpriseManaged()) { 35116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch PrefService* local_state = g_browser_process->local_state(); 36116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch local_state->ClearPref(prefs::kRebootAfterUpdate); 37116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch } 38116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} 39116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch 40116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch} // namespace chromeos 41