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 13d39be633900fde08b0f38e125322f0896c9db7..0ebf73c8bf181a5aa7b1d216a794924efd88c374 100644 |
--- a/chrome/browser/chromeos/input_method/input_method_manager_impl.cc |
+++ b/chrome/browser/chromeos/input_method/input_method_manager_impl.cc |
@@ -215,13 +215,22 @@ void InputMethodManagerImpl::ReconfigureIMFramework() { |
if (component_extension_ime_manager_->IsInitialized()) |
LoadNecessaryComponentExtensions(); |
- if (ContainsOnlyKeyboardLayout(active_input_method_ids_)) { |
+ const bool keyboard_layout_only = |
+ ContainsOnlyKeyboardLayout(active_input_method_ids_); |
+ |
+ // Initialize candidate window controller and widgets such as |
+ // candidate window, infolist and mode indicator. Note, mode |
+ // indicator is used by only keyboard layout input methods. |
+ if (!keyboard_layout_only || active_input_method_ids_.size() > 1) { |
+ MaybeInitializeCandidateWindowController(); |
+ } |
+ |
+ if (keyboard_layout_only) { |
// Do NOT call ibus_controller_->Stop(); here to work around a crash issue |
Seigo Nonaka
2013/11/06 02:47:08
This comment makes no sense now.
Please remove thi
|
// at crbug.com/27051. |
// TODO(yusukes): We can safely call Stop(); here once crbug.com/26443 |
// is implemented. |
} else { |
- MaybeInitializeCandidateWindowController(); |
IBusDaemonController::GetInstance()->Start(); |
} |
} |