Chromium Code Reviews| Index: content/browser/renderer_host/render_widget_host_impl.cc |
| diff --git a/content/browser/renderer_host/render_widget_host_impl.cc b/content/browser/renderer_host/render_widget_host_impl.cc |
| index 2ffb0941f4904d76418a629972dd878487e18442..f4ce9e19d768e25a25f15109fa17d6c65be48c65 100644 |
| --- a/content/browser/renderer_host/render_widget_host_impl.cc |
| +++ b/content/browser/renderer_host/render_widget_host_impl.cc |
| @@ -233,6 +233,8 @@ void RenderWidgetHostImpl::Init() { |
| } |
| void RenderWidgetHostImpl::Shutdown() { |
| + RejectMouseLockOrUnlockIfNecessary(); |
| + |
| if (process_->HasConnection()) { |
| // Tell the renderer object to close. |
| bool rv = Send(new ViewMsg_Close(routing_id_)); |
| @@ -1485,7 +1487,7 @@ void RenderWidgetHostImpl::OnMsgDidActivateAcceleratedCompositing( |
| view_->OnAcceleratedCompositingStateChange(); |
| } |
| -void RenderWidgetHostImpl::OnMsgLockMouse(bool user_gesture) { |
| +void RenderWidgetHostImpl::OnMsgLockMouse(bool user_gesture, bool privileged) { |
| if (pending_mouse_lock_request_) { |
| Send(new ViewMsg_LockMouse_ACK(routing_id_, false)); |
| return; |
| @@ -1495,7 +1497,12 @@ void RenderWidgetHostImpl::OnMsgLockMouse(bool user_gesture) { |
| } |
| pending_mouse_lock_request_ = true; |
| - RequestToLockMouse(user_gesture); |
| + if (privileged) { |
|
brettw
2012/05/29 20:20:09
Are there security considerations here? I'm not su
|
| + // Directly approve to lock the mouse. |
| + GotResponseToLockMouseRequest(true); |
| + } else { |
| + RequestToLockMouse(user_gesture); |
| + } |
| } |
| void RenderWidgetHostImpl::OnMsgUnlockMouse() { |