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; |