| Index: chrome/browser/chromeos/base/locale_util.cc
 | 
| diff --git a/chrome/browser/chromeos/base/locale_util.cc b/chrome/browser/chromeos/base/locale_util.cc
 | 
| index 4a931fe80fb001d39364d293ea9375debfa57290..845cbed6a5aa49e00a8bca7c752fbaf1bd997430 100644
 | 
| --- a/chrome/browser/chromeos/base/locale_util.cc
 | 
| +++ b/chrome/browser/chromeos/base/locale_util.cc
 | 
| @@ -18,16 +18,19 @@ namespace {
 | 
|  struct SwitchLanguageData {
 | 
|    SwitchLanguageData(const std::string& locale,
 | 
|                       const bool enableLocaleKeyboardLayouts,
 | 
| +                     const bool login_layouts_only,
 | 
|                       scoped_ptr<locale_util::SwitchLanguageCallback> callback)
 | 
|        : callback(callback.Pass()),
 | 
|          locale(locale),
 | 
|          enableLocaleKeyboardLayouts(enableLocaleKeyboardLayouts),
 | 
| +        login_layouts_only(login_layouts_only),
 | 
|          success(false) {}
 | 
|  
 | 
|    scoped_ptr<locale_util::SwitchLanguageCallback> callback;
 | 
|  
 | 
|    const std::string locale;
 | 
|    const bool enableLocaleKeyboardLayouts;
 | 
| +  const bool login_layouts_only;
 | 
|    std::string loaded_locale;
 | 
|    bool success;
 | 
|  };
 | 
| @@ -60,7 +63,8 @@ void FinishSwitchLanguage(scoped_ptr<SwitchLanguageData> data) {
 | 
|            input_method::InputMethodManager::Get();
 | 
|        manager->EnableLayouts(
 | 
|            data->locale,
 | 
| -          manager->GetInputMethodUtil()->GetHardwareInputMethodId());
 | 
| +          manager->GetInputMethodUtil()->GetHardwareLoginInputMethodId(),
 | 
| +          data->login_layouts_only);
 | 
|      }
 | 
|    }
 | 
|    gfx::PlatformFontPango::ReloadDefaultFont();
 | 
| @@ -73,11 +77,15 @@ void FinishSwitchLanguage(scoped_ptr<SwitchLanguageData> data) {
 | 
|  namespace locale_util {
 | 
|  
 | 
|  void SwitchLanguage(const std::string& locale,
 | 
| -                    bool enableLocaleKeyboardLayouts,
 | 
| +                    const bool enableLocaleKeyboardLayouts,
 | 
| +                    const bool login_layouts_only,
 | 
|                      scoped_ptr<SwitchLanguageCallback> callback) {
 | 
|    DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI));
 | 
| -  scoped_ptr<SwitchLanguageData> data(new SwitchLanguageData(
 | 
| -      locale, enableLocaleKeyboardLayouts, callback.Pass()));
 | 
| +  scoped_ptr<SwitchLanguageData> data(
 | 
| +      new SwitchLanguageData(locale,
 | 
| +                             enableLocaleKeyboardLayouts,
 | 
| +                             login_layouts_only,
 | 
| +                             callback.Pass()));
 | 
|    base::Closure reloader(
 | 
|        base::Bind(&SwitchLanguageDoReloadLocale, base::Unretained(data.get())));
 | 
|    content::BrowserThread::PostBlockingPoolTaskAndReply(
 | 
| 
 |