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

Side by Side Diff: chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.cc

Issue 9568038: Implement the auto-logout on idle feature for Kiosk mode. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years, 9 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 | Annotate | Revision Log
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/kiosk_mode/kiosk_mode_screensaver.h" 5 #include "chrome/browser/chromeos/kiosk_mode/kiosk_mode_screensaver.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/lazy_instance.h" 8 #include "base/lazy_instance.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "chrome/browser/chromeos/dbus/dbus_thread_manager.h" 10 #include "chrome/browser/chromeos/dbus/dbus_thread_manager.h"
(...skipping 16 matching lines...) Expand all
27 } 27 }
28 28
29 KioskModeScreensaver::~KioskModeScreensaver() { 29 KioskModeScreensaver::~KioskModeScreensaver() {
30 chromeos::PowerManagerClient* power_manager = 30 chromeos::PowerManagerClient* power_manager =
31 chromeos::DBusThreadManager::Get()->GetPowerManagerClient(); 31 chromeos::DBusThreadManager::Get()->GetPowerManagerClient();
32 if (power_manager->HasObserver(this)) 32 if (power_manager->HasObserver(this))
33 power_manager->RemoveObserver(this); 33 power_manager->RemoveObserver(this);
34 } 34 }
35 35
36 void KioskModeScreensaver::Setup() { 36 void KioskModeScreensaver::Setup() {
37
38 // We should NOT be created if already logged in. 37 // We should NOT be created if already logged in.
39 CHECK(!chromeos::UserManager::Get()->user_is_logged_in()); 38 CHECK(!chromeos::UserManager::Get()->user_is_logged_in());
40 39
41 registrar_.Add(this, chrome::NOTIFICATION_LOGIN_USER_CHANGED, 40 registrar_.Add(this, chrome::NOTIFICATION_LOGIN_USER_CHANGED,
42 content::NotificationService::AllSources()); 41 content::NotificationService::AllSources());
43 42
44 // We will register ourselves now and unregister if a user logs in. 43 // We will register ourselves now and unregister if a user logs in.
45 chromeos::PowerManagerClient* power_manager = 44 chromeos::PowerManagerClient* power_manager =
46 chromeos::DBusThreadManager::Get()->GetPowerManagerClient(); 45 chromeos::DBusThreadManager::Get()->GetPowerManagerClient();
47 if (!power_manager->HasObserver(this)) 46 if (!power_manager->HasObserver(this))
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 void InitializeKioskModeScreensaver() { 88 void InitializeKioskModeScreensaver() {
90 if (g_kiosk_mode_screensaver) { 89 if (g_kiosk_mode_screensaver) {
91 LOG(WARNING) << "Screensaver was already initialized"; 90 LOG(WARNING) << "Screensaver was already initialized";
92 return; 91 return;
93 } 92 }
94 93
95 g_kiosk_mode_screensaver = new KioskModeScreensaver(); 94 g_kiosk_mode_screensaver = new KioskModeScreensaver();
96 } 95 }
97 96
98 void ShutdownKioskModeScreensaver() { 97 void ShutdownKioskModeScreensaver() {
99 if (!g_kiosk_mode_screensaver) {
100 LOG(WARNING) << "Screensaver shutdown called when uninitialized.";
101 return;
102 }
103
104 delete g_kiosk_mode_screensaver; 98 delete g_kiosk_mode_screensaver;
105 g_kiosk_mode_screensaver = NULL; 99 g_kiosk_mode_screensaver = NULL;
106 } 100 }
107 101
108 } // namespace chromeos 102 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698