Chromium Code Reviews| Index: ui/base/ime/input_method_ibus.cc |
| diff --git a/ui/base/ime/input_method_ibus.cc b/ui/base/ime/input_method_ibus.cc |
| index 5d3fd4e4026d6ffab50d77b3248c6c5b184638b9..5f1b04dce1ed3432e0a539185a4585a1b3f35f04 100644 |
| --- a/ui/base/ime/input_method_ibus.cc |
| +++ b/ui/base/ime/input_method_ibus.cc |
| @@ -28,7 +28,6 @@ |
| #include "chromeos/dbus/ibus/ibus_text.h" |
| #include "ui/base/events/event_constants.h" |
| #include "ui/base/events/event_utils.h" |
| -#include "ui/base/ime/ibus_client.h" |
| #include "ui/base/ime/text_input_client.h" |
| #include "ui/base/keycodes/keyboard_code_conversion.h" |
| #include "ui/base/keycodes/keyboard_code_conversion_x.h" |
| @@ -80,8 +79,7 @@ namespace ui { |
| // InputMethodIBus implementation ----------------------------------------- |
| InputMethodIBus::InputMethodIBus( |
| internal::InputMethodDelegate* delegate) |
| - : ibus_client_(new internal::IBusClient), |
| - input_context_state_(INPUT_CONTEXT_STOP), |
| + : input_context_state_(INPUT_CONTEXT_STOP), |
| create_input_context_fail_count_(0), |
| context_focused_(false), |
| composing_text_(false), |
| @@ -100,15 +98,6 @@ InputMethodIBus::~InputMethodIBus() { |
| GetInputContextClient()->SetInputContextHandler(NULL); |
| } |
| -void InputMethodIBus::set_ibus_client( |
| - scoped_ptr<internal::IBusClient> new_client) { |
| - ibus_client_.swap(new_client); |
| -} |
| - |
| -internal::IBusClient* InputMethodIBus::ibus_client() const { |
| - return ibus_client_.get(); |
| -} |
| - |
| void InputMethodIBus::OnFocus() { |
| InputMethodBase::OnFocus(); |
| UpdateContextFocusState(); |
| @@ -167,8 +156,8 @@ void InputMethodIBus::DispatchKeyEvent(const base::NativeEvent& native_event) { |
| // enabled, so that ibus can have a chance to enable the |context_|. |
| if (!context_focused_ || |
| GetTextInputType() == TEXT_INPUT_TYPE_PASSWORD || |
| - ibus_client_->GetInputMethodType() == |
| - internal::IBusClient::INPUT_METHOD_XKB_LAYOUT) { |
| + !GetInputContextClient() || |
| + GetInputContextClient()->IsXKBLayout()) { |
| if (native_event->type == KeyPress) |
| ProcessUnfilteredKeyPressEvent(native_event, ibus_keyval); |
| else |
| @@ -227,8 +216,15 @@ void InputMethodIBus::OnCaretBoundsChanged(const TextInputClient* client) { |
| composition_head = rect; |
| } |
| - // This function runs asynchronously. |
| - ibus_client_->SetCursorLocation(rect, composition_head); |
| + chromeos::ibus::Rect rect_ibus(rect.x(), |
| + rect.y(), |
| + rect.width(), |
| + rect.height()); |
|
satorux1
2013/01/29 05:16:08
maybe:
chromeos::ibus::Rect rect_ibus = chromeos
Seigo Nonaka
2013/01/30 06:00:07
We can't introduce FromGfxRect function into chrom
|
| + chromeos::ibus::Rect composition_head_ibus(composition_head.x(), |
| + composition_head.y(), |
| + composition_head.width(), |
| + composition_head.height()); |
| + GetInputContextClient()->SetCursorLocation(rect_ibus, composition_head_ibus); |
| ui::Range text_range; |
| ui::Range selection_range; |