Chromium Code Reviews| Index: chrome/browser/chromeos/input_method/input_method_manager_impl.cc |
| diff --git a/chrome/browser/chromeos/input_method/input_method_manager_impl.cc b/chrome/browser/chromeos/input_method/input_method_manager_impl.cc |
| index 0aab684ef53c7f1d90e98c8f8b29ab7a740011fc..e402d12d652ab21d38601ffd6b66e7904f5a5326 100644 |
| --- a/chrome/browser/chromeos/input_method/input_method_manager_impl.cc |
| +++ b/chrome/browser/chromeos/input_method/input_method_manager_impl.cc |
| @@ -348,11 +348,22 @@ void InputMethodManagerImpl::OnComponentExtensionInitialized( |
| void InputMethodManagerImpl::LoadNecessaryComponentExtensions() { |
| if (!component_extension_ime_manager_->IsInitialized()) |
| return; |
| - for (size_t i = 0; i < active_input_method_ids_.size(); ++i) { |
| - if (component_extension_ime_manager_->IsWhitelisted( |
| - active_input_method_ids_[i])) { |
| + // We have to do sanity check here, because some component extension IMEs may |
|
satorux1
2013/04/15 08:31:32
sanity check may be unclear. What about:
Load com
Seigo Nonaka
2013/04/16 07:17:03
Sure thanks! Done.
|
| + // be removed. So if specified component extension IME is no longer existing, |
|
satorux1
2013/04/15 08:31:32
may be removed -> might have been removed from the
Seigo Nonaka
2013/04/16 07:17:03
Done.
|
| + // falling back to existing IME. |
|
satorux1
2013/04/15 08:31:32
fall back to an existing IME.
Seigo Nonaka
2013/04/16 07:17:03
Done.
|
| + std::vector<std::string> unfiltered_input_method_ids = |
| + active_input_method_ids_; |
| + active_input_method_ids_.clear(); |
| + for (size_t i = 0; i < unfiltered_input_method_ids.size(); ++i) { |
| + if (!component_extension_ime_manager_->IsComponentExtensionIMEId( |
| + unfiltered_input_method_ids[i])) { |
| + // Legacy IMEs or xkb layouts are active alwayes. |
|
satorux1
2013/04/15 08:31:32
always active
Seigo Nonaka
2013/04/16 07:17:03
Done.
|
| + active_input_method_ids_.push_back(unfiltered_input_method_ids[i]); |
| + } else if (component_extension_ime_manager_->IsWhitelisted( |
| + unfiltered_input_method_ids[i])) { |
| component_extension_ime_manager_->LoadComponentExtensionIME( |
| - active_input_method_ids_[i]); |
| + unfiltered_input_method_ids[i]); |
| + active_input_method_ids_.push_back(unfiltered_input_method_ids[i]); |
| } |
| } |
| } |