| Index: chrome/browser/chromeos/login/login_display_host_impl.cc
|
| diff --git a/chrome/browser/chromeos/login/login_display_host_impl.cc b/chrome/browser/chromeos/login/login_display_host_impl.cc
|
| index 2866397380a024b896e235df9068779e53cfa51f..92dbc4187ac332c6388f685eb929f4c94f754287 100644
|
| --- a/chrome/browser/chromeos/login/login_display_host_impl.cc
|
| +++ b/chrome/browser/chromeos/login/login_display_host_impl.cc
|
| @@ -16,6 +16,7 @@
|
| #include "base/debug/trace_event.h"
|
| #include "base/logging.h"
|
| #include "base/prefs/pref_service.h"
|
| +#include "base/strings/string_split.h"
|
| #include "base/strings/utf_string_conversions.h"
|
| #include "base/threading/thread_restrictions.h"
|
| #include "base/time/time.h"
|
| @@ -61,6 +62,7 @@
|
| #include "chromeos/chromeos_switches.h"
|
| #include "chromeos/dbus/dbus_thread_manager.h"
|
| #include "chromeos/dbus/session_manager_client.h"
|
| +#include "chromeos/ime/extension_ime_util.h"
|
| #include "chromeos/ime/input_method_manager.h"
|
| #include "chromeos/login/login_state.h"
|
| #include "chromeos/settings/timezone_settings.h"
|
| @@ -127,7 +129,10 @@ void DetermineAndSaveHardwareKeyboard(const std::string& locale,
|
| std::string layout;
|
| if (!oem_layout.empty()) {
|
| // If the OEM layout information is provided, use it.
|
| - layout = oem_layout;
|
| + std::vector<std::string> layouts;
|
| + base::SplitString(oem_layout, ',', &layouts);
|
| + layout = chromeos::extension_ime_util::GetInputMethodIDByKeyboardLayout(
|
| + layouts[0]);
|
| } else {
|
| chromeos::input_method::InputMethodManager* manager =
|
| chromeos::input_method::InputMethodManager::Get();
|
|
|