| Index: chrome/browser/chromeos/login/session/user_session_manager.cc
|
| diff --git a/chrome/browser/chromeos/login/session/user_session_manager.cc b/chrome/browser/chromeos/login/session/user_session_manager.cc
|
| index 3f25494a1ed3cd5371dda6e53b78d884df1257e4..dd33e3830b5e9cff299fb1ec3319f69cbb3f3fd6 100644
|
| --- a/chrome/browser/chromeos/login/session/user_session_manager.cc
|
| +++ b/chrome/browser/chromeos/login/session/user_session_manager.cc
|
| @@ -651,6 +651,12 @@ void UserSessionManager::OnProfileCreated(const UserContext& user_context,
|
| void UserSessionManager::InitProfilePreferences(
|
| Profile* profile,
|
| const UserContext& user_context) {
|
| + user_manager::User* user = ProfileHelper::Get()->GetUserByProfile(profile);
|
| + if (user->is_active()) {
|
| + input_method::InputMethodManager* manager =
|
| + input_method::InputMethodManager::Get();
|
| + manager->SetState(GetDefaultIMEState(profile));
|
| + }
|
| if (user_manager::UserManager::Get()->IsCurrentUserNew()) {
|
| SetFirstLoginPrefs(profile,
|
| user_context.GetPublicSessionLocale(),
|
| @@ -993,6 +999,11 @@ void UserSessionManager::NotifyPendingUserSessionsRestoreFinished() {
|
|
|
| void UserSessionManager::ActiveUserChanged(
|
| const user_manager::User* active_user) {
|
| + Profile* profile = ProfileHelper::Get()->GetProfileByUser(active_user);
|
| + // If profile has not yet been initialized, delay initialization of IME.
|
| + if (!profile)
|
| + return;
|
| +
|
| input_method::InputMethodManager* manager =
|
| input_method::InputMethodManager::Get();
|
| manager->SetState(
|
|
|