| Index: content/browser/renderer_host/render_widget_host_view_aura.cc
 | 
| diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc
 | 
| index 8d3df3bd923206398feeb86662585936116c3336..dad412a0444d651d3e3c4ad8a116d5508f6584ad 100644
 | 
| --- a/content/browser/renderer_host/render_widget_host_view_aura.cc
 | 
| +++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
 | 
| @@ -345,12 +345,9 @@ void RenderWidgetHostViewAura::ApplyEventFilterForPopupExit(
 | 
|      // If we enter this code path it means that we did not receive any focus
 | 
|      // lost notifications for the popup window. Ensure that blink is aware
 | 
|      // of the fact that focus was lost for the host window by sending a Blur
 | 
| -    // notification. We also set a flag in the view indicating that we need
 | 
| -    // to force a Focus notification on the next mouse down.
 | 
| -    if (popup_parent_host_view_ && popup_parent_host_view_->host_) {
 | 
| -      popup_parent_host_view_->set_focus_on_mouse_down_ = true;
 | 
| +    // notification.
 | 
| +    if (popup_parent_host_view_ && popup_parent_host_view_->host_)
 | 
|        popup_parent_host_view_->host_->Blur();
 | 
| -    }
 | 
|      // Note: popup_parent_host_view_ may be NULL when there are multiple
 | 
|      // popup children per view. See: RenderWidgetHostViewAura::InitAsPopup().
 | 
|      Shutdown();
 | 
| @@ -472,7 +469,6 @@ RenderWidgetHostViewAura::RenderWidgetHostViewAura(RenderWidgetHost* host,
 | 
|        has_snapped_to_boundary_(false),
 | 
|        is_guest_view_hack_(is_guest_view_hack),
 | 
|        begin_frame_observer_proxy_(this),
 | 
| -      set_focus_on_mouse_down_(false),
 | 
|        weak_ptr_factory_(this) {
 | 
|    if (!is_guest_view_hack_)
 | 
|      host_->SetView(this);
 | 
| @@ -748,10 +744,6 @@ void RenderWidgetHostViewAura::SetKeyboardFocus() {
 | 
|        ::SetFocus(host->GetAcceleratedWidget());
 | 
|    }
 | 
|  #endif
 | 
| -  if (host_ && set_focus_on_mouse_down_) {
 | 
| -    set_focus_on_mouse_down_ = false;
 | 
| -    host_->Focus();
 | 
| -  }
 | 
|  }
 | 
|  
 | 
|  RenderFrameHostImpl* RenderWidgetHostViewAura::GetFocusedFrame() {
 | 
| @@ -1522,11 +1514,13 @@ void RenderWidgetHostViewAura::UnlockMouse() {
 | 
|  
 | 
|    mouse_locked_ = false;
 | 
|  
 | 
| -#if !defined(OS_WIN)
 | 
| -  window_->ReleaseCapture();
 | 
| -#else
 | 
| +  if (window_->HasCapture())
 | 
| +    window_->ReleaseCapture();
 | 
| +
 | 
| +#if defined(OS_WIN)
 | 
|    ::ClipCursor(NULL);
 | 
|  #endif
 | 
| +
 | 
|    window_->MoveCursorTo(unlocked_mouse_position_);
 | 
|    aura::client::CursorClient* cursor_client =
 | 
|        aura::client::GetCursorClient(root_window);
 | 
| 
 |