| Index: content/renderer/render_view_impl.cc
|
| diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
|
| index 3f21403e359259cfde64d065611d1f2f69344044..5316552ef54be17d0ed5b8d7f1590fcd239729b6 100644
|
| --- a/content/renderer/render_view_impl.cc
|
| +++ b/content/renderer/render_view_impl.cc
|
| @@ -1276,7 +1276,18 @@ void RenderViewImpl::OnSelectWordAroundCaret() {
|
| return;
|
|
|
| input_handler_->set_handling_input_event(true);
|
| - webview()->FocusedFrame()->SelectWordAroundCaret();
|
| + int start_adjust = 0;
|
| + int end_adjust = 0;
|
| + blink::WebRange initial_range = webview()->FocusedFrame()->SelectionRange();
|
| + bool did_select = webview()->FocusedFrame()->SelectWordAroundCaret();
|
| + if (did_select) {
|
| + blink::WebRange adjusted_range =
|
| + webview()->FocusedFrame()->SelectionRange();
|
| + start_adjust = adjusted_range.StartOffset() - initial_range.StartOffset();
|
| + end_adjust = adjusted_range.EndOffset() - initial_range.EndOffset();
|
| + }
|
| + Send(new ViewHostMsg_SelectWordAroundCaretAck(GetRoutingID(), did_select,
|
| + start_adjust, end_adjust));
|
| input_handler_->set_handling_input_event(false);
|
| }
|
|
|
|
|