| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "chrome/browser/chromeos/input_method/input_method_delegate_impl.h" |
| |
| #include "base/logging.h" |
| #include "base/prefs/pref_service.h" |
| #include "base/strings/string_util.h" |
| #include "chrome/browser/browser_process.h" |
| #include "chrome/common/pref_names.h" |
| #include "ui/base/l10n/l10n_util.h" |
| |
| namespace chromeos { |
| namespace input_method { |
| |
| InputMethodDelegateImpl::InputMethodDelegateImpl() { |
| } |
| |
| InputMethodDelegateImpl::~InputMethodDelegateImpl() { |
| } |
| |
| std::string InputMethodDelegateImpl::GetHardwareKeyboardLayouts() const { |
| if (!g_browser_process) |
| return ""; |
| |
| PrefService* local_state = g_browser_process->local_state(); |
| if (!local_state) |
| return ""; |
| |
| return local_state->GetString(prefs::kHardwareKeyboardLayout); |
| } |
| |
| base::string16 InputMethodDelegateImpl::GetLocalizedString( |
| int resource_id) const { |
| return l10n_util::GetStringUTF16(resource_id); |
| } |
| |
| base::string16 InputMethodDelegateImpl::GetDisplayLanguageName( |
| const std::string& language_code) const { |
| DCHECK(g_browser_process); |
| return l10n_util::GetDisplayNameForLocale( |
| language_code, |
| g_browser_process->GetApplicationLocale(), |
| true); |
| } |
| |
| void InputMethodDelegateImpl::SetHardwareKeyboardLayoutForTesting( |
| const std::string& layout) { |
| NOTREACHED() << "Use FakeInputMethodDelegate for hardware keyboard layout " |
| << "testing purpose."; |
| } |
| |
| } // namespace input_method |
| } // namespace chromeos |