Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(894)

Unified Diff: chrome/browser/chromeos/input_method/input_method_manager_impl.cc

Issue 67313006: Delete IBusClient. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove obsolete test. Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 820ee135798e7ce579aab8e26dba2b0ca44ee5d8..0fe1eb22d4a9f456439a308c5eb2dc41c549c501 100644
--- a/chrome/browser/chromeos/input_method/input_method_manager_impl.cc
+++ b/chrome/browser/chromeos/input_method/input_method_manager_impl.cc
@@ -19,7 +19,6 @@
#include "chrome/browser/chromeos/input_method/input_method_engine_ibus.h"
#include "chrome/browser/chromeos/language_preferences.h"
#include "chromeos/dbus/dbus_thread_manager.h"
-#include "chromeos/dbus/ibus/ibus_client.h"
#include "chromeos/ime/component_extension_ime_manager.h"
#include "chromeos/ime/extension_ime_util.h"
#include "chromeos/ime/input_method_delegate.h"
@@ -296,13 +295,11 @@ bool InputMethodManagerImpl::ChangeInputMethodInternal(
}
}
- if (!component_extension_ime_manager_->IsInitialized() ||
- (!InputMethodUtil::IsKeyboardLayout(input_method_id_to_switch) &&
- !IsIBusConnectionAlive())) {
- // We can't change input method before the initialization of component
- // extension ime manager or before connection to ibus-daemon is not
- // established. ChangeInputMethod will be called with
- // |pending_input_method_| when the both initialization is done.
+ if (!component_extension_ime_manager_->IsInitialized()) {
+ // We can't change input method before the initialization of
+ // component extension ime manager. ChangeInputMethod will be
+ // called with |pending_input_method_| when the initialization is
+ // done.
pending_input_method_ = input_method_id_to_switch;
return false;
}
@@ -310,7 +307,6 @@ bool InputMethodManagerImpl::ChangeInputMethodInternal(
pending_input_method_.clear();
IBusEngineHandlerInterface* engine = IBusBridge::Get()->GetEngineHandler();
const std::string current_input_method_id = current_input_method_.id();
- IBusClient* client = DBusThreadManager::Get()->GetIBusClient();
if (InputMethodUtil::IsKeyboardLayout(input_method_id_to_switch)) {
FOR_EACH_OBSERVER(InputMethodManager::Observer,
observers_,
@@ -320,9 +316,15 @@ bool InputMethodManagerImpl::ChangeInputMethodInternal(
IBusBridge::Get()->SetEngineHandler(NULL);
}
} else {
- DCHECK(client);
- client->SetGlobalEngine(input_method_id_to_switch,
- base::Bind(&base::DoNothing));
+ // Disable the current engine and enable the next engine.
+ if (engine)
+ engine->Disable();
+ IBusBridge::Get()->CreateEngine(input_method_id_to_switch);
+ IBusEngineHandlerInterface* next_engine =
+ IBusBridge::Get()->GetEngineHandler();
+ IBusBridge::Get()->SetEngineHandler(next_engine);
+ if (next_engine)
+ next_engine->Enable();
}
if (current_input_method_id != input_method_id_to_switch) {
@@ -866,9 +868,5 @@ void InputMethodManagerImpl::MaybeInitializeCandidateWindowController() {
DVLOG(1) << "Failed to initialize the candidate window controller";
}
-bool InputMethodManagerImpl::IsIBusConnectionAlive() {
- return DBusThreadManager::Get() && DBusThreadManager::Get()->GetIBusClient();
-}
-
} // namespace input_method
} // namespace chromeos

Powered by Google App Engine
This is Rietveld 408576698