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

Unified Diff: chrome/browser/chromeos/login/session/user_session_manager.h

Issue 419293002: IME refactoring: ChromeOS introduce input methods State. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Cleanup. Created 6 years, 4 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/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.

Powered by Google App Engine
This is Rietveld 408576698