Chromium Code Reviews| Index: chromeos/dbus/session_manager_client.cc |
| diff --git a/chromeos/dbus/session_manager_client.cc b/chromeos/dbus/session_manager_client.cc |
| index 737a9be3786463fd6e0d8995fdb76e3a240d56af..27858284366571281b977be3666941f1a02c29a2 100644 |
| --- a/chromeos/dbus/session_manager_client.cc |
| +++ b/chromeos/dbus/session_manager_client.cc |
| @@ -36,6 +36,10 @@ class SessionManagerClientImpl : public SessionManagerClient { |
| } |
| // SessionManagerClient overrides: |
| + virtual void SetStubDelegate(StubDelegate* delegate) OVERRIDE { |
| + // Do nothing; this isn't a stub implementation. |
| + } |
| + |
| virtual void AddObserver(Observer* observer) OVERRIDE { |
| observers_.AddObserver(observer); |
| } |
| @@ -238,16 +242,6 @@ class SessionManagerClientImpl : public SessionManagerClient { |
| blocking_method_caller_.reset( |
| new BlockingMethodCaller(bus, session_manager_proxy_)); |
| - // Signals emitted on Chromium's interface. Many of these ought to be |
| - // method calls instead. |
| - session_manager_proxy_->ConnectToSignal( |
| - chromium::kChromiumInterface, |
| - chromium::kLockScreenSignal, |
| - base::Bind(&SessionManagerClientImpl::ScreenLockReceived, |
| - weak_ptr_factory_.GetWeakPtr()), |
| - base::Bind(&SessionManagerClientImpl::SignalConnected, |
| - weak_ptr_factory_.GetWeakPtr())); |
| - |
| // Signals emitted on the session manager's interface. |
| session_manager_proxy_->ConnectToSignal( |
| login_manager::kSessionManagerInterface, |
| @@ -463,10 +457,6 @@ class SessionManagerClientImpl : public SessionManagerClient { |
| FOR_EACH_OBSERVER(Observer, observers_, PropertyChangeComplete(success)); |
| } |
| - void ScreenLockReceived(dbus::Signal* signal) { |
| - FOR_EACH_OBSERVER(Observer, observers_, LockScreen()); |
| - } |
| - |
| void ScreenIsLockedReceived(dbus::Signal* signal) { |
| FOR_EACH_OBSERVER(Observer, observers_, ScreenIsLocked()); |
| } |
| @@ -497,7 +487,7 @@ class SessionManagerClientImpl : public SessionManagerClient { |
| // which does nothing. |
| class SessionManagerClientStubImpl : public SessionManagerClient { |
|
stevenjb
2014/03/12 00:40:03
I'm a bit confused as to what the difference betwe
Daniel Erat
2014/03/12 01:21:13
yeah, i don't know the history here either and dou
|
| public: |
| - SessionManagerClientStubImpl() {} |
| + SessionManagerClientStubImpl() : delegate_(NULL) {} |
| virtual ~SessionManagerClientStubImpl() {} |
| // SessionManagerClient overrides |
| @@ -514,6 +504,9 @@ class SessionManagerClientStubImpl : public SessionManagerClient { |
| } |
| } |
| + virtual void SetStubDelegate(StubDelegate* delegate) OVERRIDE { |
| + delegate_ = delegate; |
| + } |
| virtual void AddObserver(Observer* observer) OVERRIDE { |
| observers_.AddObserver(observer); |
| } |
| @@ -529,7 +522,8 @@ class SessionManagerClientStubImpl : public SessionManagerClient { |
| virtual void StopSession() OVERRIDE {} |
| virtual void StartDeviceWipe() OVERRIDE {} |
| virtual void RequestLockScreen() OVERRIDE { |
| - FOR_EACH_OBSERVER(Observer, observers_, LockScreen()); |
| + if (delegate_) |
| + delegate_->LockScreenForStub(); |
| } |
| virtual void NotifyLockScreenShown() OVERRIDE { |
| FOR_EACH_OBSERVER(Observer, observers_, ScreenIsLocked()); |
| @@ -617,6 +611,7 @@ class SessionManagerClientStubImpl : public SessionManagerClient { |
| } |
| private: |
| + StubDelegate* delegate_; // Weak pointer; may be NULL. |
| ObserverList<Observer> observers_; |
| std::string device_policy_; |
| std::map<std::string, std::string> user_policies_; |