OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/chromeos/input_method/input_method_util.h" | 5 #include "chrome/browser/chromeos/input_method/input_method_util.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <functional> | 8 #include <functional> |
9 #include <map> | 9 #include <map> |
10 #include <utility> | 10 #include <utility> |
(...skipping 323 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
334 bool InputMethodUtil::IsValidInputMethodId( | 334 bool InputMethodUtil::IsValidInputMethodId( |
335 const std::string& input_method_id) const { | 335 const std::string& input_method_id) const { |
336 // We can't check the component extension is whilelisted or not here because | 336 // We can't check the component extension is whilelisted or not here because |
337 // it might not be initialized. | 337 // it might not be initialized. |
338 return GetInputMethodDescriptorFromId(input_method_id) != NULL || | 338 return GetInputMethodDescriptorFromId(input_method_id) != NULL || |
339 extension_ime_util::IsComponentExtensionIME(input_method_id); | 339 extension_ime_util::IsComponentExtensionIME(input_method_id); |
340 } | 340 } |
341 | 341 |
342 // static | 342 // static |
343 bool InputMethodUtil::IsKeyboardLayout(const std::string& input_method_id) { | 343 bool InputMethodUtil::IsKeyboardLayout(const std::string& input_method_id) { |
344 const bool kCaseInsensitive = false; | 344 return StartsWithASCII(input_method_id, "xkb:", false) || |
345 return StartsWithASCII(input_method_id, "xkb:", kCaseInsensitive); | 345 extension_ime_util::IsKeyboardLayoutExtension(input_method_id); |
346 } | 346 } |
347 | 347 |
348 std::string InputMethodUtil::GetLanguageCodeFromInputMethodId( | 348 std::string InputMethodUtil::GetLanguageCodeFromInputMethodId( |
349 const std::string& input_method_id) const { | 349 const std::string& input_method_id) const { |
350 // The code should be compatible with one of codes used for UI languages, | 350 // The code should be compatible with one of codes used for UI languages, |
351 // defined in app/l10_util.cc. | 351 // defined in app/l10_util.cc. |
352 const char kDefaultLanguageCode[] = "en-US"; | 352 const char kDefaultLanguageCode[] = "en-US"; |
353 std::map<std::string, std::string>::const_iterator iter | 353 std::map<std::string, std::string>::const_iterator iter |
354 = id_to_language_code_.find(input_method_id); | 354 = id_to_language_code_.find(input_method_id); |
355 return (iter == id_to_language_code_.end()) ? | 355 return (iter == id_to_language_code_.end()) ? |
(...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
721 if (IsKeyboardLayout(input_method.id())) { | 721 if (IsKeyboardLayout(input_method.id())) { |
722 xkb_id_to_descriptor_.insert( | 722 xkb_id_to_descriptor_.insert( |
723 std::make_pair(input_method.GetPreferredKeyboardLayout(), | 723 std::make_pair(input_method.GetPreferredKeyboardLayout(), |
724 input_method)); | 724 input_method)); |
725 } | 725 } |
726 } | 726 } |
727 } | 727 } |
728 | 728 |
729 } // namespace input_method | 729 } // namespace input_method |
730 } // namespace chromeos | 730 } // namespace chromeos |
OLD | NEW |