| Index: content/browser/web_contents/web_contents_impl.cc | 
| diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc | 
| index 104f8c63fab5ed61390267d391cd9352ac5a4723..7cd40faa0db336ebca17258068123a139d1f2fba 100644 | 
| --- a/content/browser/web_contents/web_contents_impl.cc | 
| +++ b/content/browser/web_contents/web_contents_impl.cc | 
| @@ -3211,14 +3211,23 @@ void WebContentsImpl::SetIsLoading(RenderViewHost* render_view_host, | 
| type, Source<NavigationController>(&controller_), det); | 
| } | 
|  | 
| -void WebContentsImpl::SelectRange(const gfx::Point& start, | 
| -                                  const gfx::Point& end) { | 
| +void WebContentsImpl::MoveRangeSelectionExtent(const gfx::Point& extent) { | 
| +  RenderFrameHost* focused_frame = GetFocusedFrame(); | 
| +  if (!focused_frame) | 
| +    return; | 
| + | 
| +  focused_frame->Send(new InputMsg_MoveRangeSelectionExtent( | 
| +      focused_frame->GetRoutingID(), extent)); | 
| +} | 
| + | 
| +void WebContentsImpl::SelectRange(const gfx::Point& base, | 
| +                                  const gfx::Point& extent) { | 
| RenderFrameHost* focused_frame = GetFocusedFrame(); | 
| if (!focused_frame) | 
| return; | 
|  | 
| focused_frame->Send( | 
| -      new InputMsg_SelectRange(focused_frame->GetRoutingID(), start, end)); | 
| +      new InputMsg_SelectRange(focused_frame->GetRoutingID(), base, extent)); | 
| } | 
|  | 
| void WebContentsImpl::UpdateMaxPageIDIfNecessary(RenderViewHost* rvh) { | 
|  |