| 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 d9a35cbb629c76f7ab88d1edd5df083f75f54943..89ac5aa500b1187450a06c2544688c7cc2f22f3f 100644
|
| --- a/ui/base/ime/input_method_ibus.cc
|
| +++ b/ui/base/ime/input_method_ibus.cc
|
| @@ -334,9 +334,14 @@ void InputMethodIBus::OnCaretBoundsChanged(const TextInputClient* client) {
|
| DCHECK(!IsTextInputTypeNone());
|
| const gfx::Rect rect = GetTextInputClient()->GetCaretBounds();
|
|
|
| + gfx::Rect composition_head;
|
| + if (!GetTextInputClient()->GetCompositionCharacterBounds(0,
|
| + &composition_head)) {
|
| + composition_head = gfx::Rect();
|
| + }
|
| +
|
| // This function runs asynchronously.
|
| - ibus_client_->SetCursorLocation(
|
| - context_, rect.x(), rect.y(), rect.width(), rect.height());
|
| + ibus_client_->SetCursorLocation(context_, rect, composition_head);
|
| }
|
|
|
| void InputMethodIBus::CancelComposition(const TextInputClient* client) {
|
|
|