Index: chrome/browser/chromeos/login/session/user_session_manager.h |
diff --git a/chrome/browser/chromeos/login/session/user_session_manager.h b/chrome/browser/chromeos/login/session/user_session_manager.h |
index 7a5448b8a9b1d34c1be75ca39fefb18e6a20f9e0..6b1f665b5e20de944abc3cc7476c9216eb31a11d 100644 |
--- a/chrome/browser/chromeos/login/session/user_session_manager.h |
+++ b/chrome/browser/chromeos/login/session/user_session_manager.h |
@@ -13,7 +13,9 @@ |
#include "base/observer_list.h" |
#include "chrome/browser/chromeos/base/locale_util.h" |
#include "chrome/browser/chromeos/login/signin/oauth2_login_manager.h" |
+#include "chrome/browser/chromeos/login/users/user_manager.h" |
#include "chromeos/dbus/session_manager_client.h" |
+#include "chromeos/ime/input_method_manager.h" |
#include "chromeos/login/auth/authenticator.h" |
#include "chromeos/login/auth/user_context.h" |
#include "components/user_manager/user.h" |
@@ -23,6 +25,12 @@ class PrefRegistrySimple; |
class PrefService; |
class Profile; |
+namespace user_manager { |
+ |
+class User; |
+ |
+} // namespace user_manager |
+ |
namespace chromeos { |
class UserSessionManagerDelegate { |
@@ -58,7 +66,8 @@ class UserSessionManager |
: public OAuth2LoginManager::Observer, |
public net::NetworkChangeNotifier::ConnectionTypeObserver, |
public base::SupportsWeakPtr<UserSessionManager>, |
- public UserSessionManagerDelegate { |
+ public UserSessionManagerDelegate, |
+ public UserManager::UserSessionStateObserver { |
public: |
// Returns UserSessionManager instance. |
static UserSessionManager* GetInstance(); |
@@ -109,7 +118,7 @@ class UserSessionManager |
// Invoked when the user is logging in for the first time, or is logging in to |
// an ephemeral session type, such as guest or a public session. |
static void SetFirstLoginPrefs( |
- PrefService* prefs, |
+ Profile* profile, |
const std::string& public_session_locale, |
const std::string& public_session_input_method); |
@@ -130,8 +139,11 @@ class UserSessionManager |
const user_manager::User* user, |
scoped_ptr<locale_util::SwitchLanguageCallback> callback) const; |
- void AddSessionStateObserver(UserSessionStateObserver* observer); |
- void RemoveSessionStateObserver(UserSessionStateObserver* observer); |
+ void AddSessionStateObserver(chromeos::UserSessionStateObserver* observer); |
+ void RemoveSessionStateObserver(chromeos::UserSessionStateObserver* observer); |
+ |
+ virtual void ActiveUserChanged( |
+ const user_manager::User* active_user) OVERRIDE; |
private: |
friend struct DefaultSingletonTraits<UserSessionManager>; |
@@ -240,7 +252,7 @@ class UserSessionManager |
// [user_id] > [user_id_hash] |
SessionManagerClient::ActiveSessionsMap pending_user_sessions_; |
- ObserverList<UserSessionStateObserver> session_state_observer_list_; |
+ ObserverList<chromeos::UserSessionStateObserver> session_state_observer_list_; |
// OAuth2 session related members. |