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

Unified Diff: chrome/browser/chromeos/system/ash_system_tray_delegate.cc

Issue 10693087: chromeos: Request screen lock directly from session manager. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: remove locking-related metrics code Created 8 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/system/ash_system_tray_delegate.cc
diff --git a/chrome/browser/chromeos/system/ash_system_tray_delegate.cc b/chrome/browser/chromeos/system/ash_system_tray_delegate.cc
index ae77fccc9316471cf60e2798ed2d0b5dd0984fb1..b77c18f7eeb6ad083cfad0edae6e830171e4a850 100644
--- a/chrome/browser/chromeos/system/ash_system_tray_delegate.cc
+++ b/chrome/browser/chromeos/system/ash_system_tray_delegate.cc
@@ -66,6 +66,7 @@
#include "chrome/common/url_constants.h"
#include "chromeos/dbus/dbus_thread_manager.h"
#include "chromeos/dbus/power_manager_client.h"
+#include "chromeos/dbus/session_manager_client.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/notification_observer.h"
#include "content/public/browser/notification_service.h"
@@ -152,6 +153,7 @@ void BluetoothDeviceConnectError() {
class SystemTrayDelegate : public ash::SystemTrayDelegate,
public AudioHandler::VolumeObserver,
public PowerManagerClient::Observer,
+ public SessionManagerClient::Observer,
public NetworkMenuIcon::Delegate,
public NetworkMenu::Delegate,
public NetworkLibrary::NetworkManagerObserver,
@@ -184,6 +186,7 @@ class SystemTrayDelegate : public ash::SystemTrayDelegate,
DBusThreadManager::Get()->GetPowerManagerClient()->AddObserver(this);
DBusThreadManager::Get()->GetPowerManagerClient()->RequestStatusUpdate(
PowerManagerClient::UPDATE_INITIAL);
+ DBusThreadManager::Get()->GetSessionManagerClient()->AddObserver(this);
NetworkLibrary* crosnet = CrosLibrary::Get()->GetNetworkLibrary();
crosnet->AddNetworkManagerObserver(this);
@@ -226,6 +229,7 @@ class SystemTrayDelegate : public ash::SystemTrayDelegate,
AudioHandler* audiohandler = AudioHandler::GetInstance();
if (audiohandler)
audiohandler->RemoveVolumeObserver(this);
+ DBusThreadManager::Get()->GetSessionManagerClient()->RemoveObserver(this);
DBusThreadManager::Get()->GetPowerManagerClient()->RemoveObserver(this);
NetworkLibrary* crosnet = CrosLibrary::Get()->GetNetworkLibrary();
if (crosnet) {
@@ -380,8 +384,7 @@ class SystemTrayDelegate : public ash::SystemTrayDelegate,
}
virtual void RequestLockScreen() OVERRIDE {
- DBusThreadManager::Get()->GetPowerManagerClient()->
- NotifyScreenLockRequested();
+ DBusThreadManager::Get()->GetSessionManagerClient()->RequestLockScreen();
}
virtual void RequestRestart() OVERRIDE {
@@ -951,6 +954,7 @@ class SystemTrayDelegate : public ash::SystemTrayDelegate,
NotifyRefreshClock();
}
+ // Overridden from SessionManagerClient::Observer.
virtual void LockScreen() OVERRIDE {
screen_locked_ = true;
ash::Shell::GetInstance()->status_area_widget()->
« no previous file with comments | « chrome/browser/chromeos/power/screen_lock_observer.cc ('k') | chrome/browser/ui/views/ash/chrome_shell_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698