Index: content/renderer/render_widget.h |
diff --git a/content/renderer/render_widget.h b/content/renderer/render_widget.h |
index 3cffee421e5433e7848a1606b604642099df93b4..f03c05da0935b7f9b057f8f49fc62d97be49e7c2 100644 |
--- a/content/renderer/render_widget.h |
+++ b/content/renderer/render_widget.h |
@@ -27,6 +27,8 @@ |
#include "content/renderer/input/render_widget_input_handler.h" |
#include "content/renderer/input/render_widget_input_handler_delegate.h" |
#include "content/renderer/message_delivery_policy.h" |
+#include "content/renderer/mouse_lock_dispatcher.h" |
+#include "content/renderer/render_widget_mouse_lock_dispatcher.h" |
#include "ipc/ipc_listener.h" |
#include "ipc/ipc_sender.h" |
#include "third_party/WebKit/public/platform/WebDisplayMode.h" |
@@ -261,6 +263,9 @@ class CONTENT_EXPORT RenderWidget |
void showImeIfNeeded() override; |
void convertViewportToWindow(blink::WebRect* rect) override; |
void convertWindowToViewport(blink::WebFloatRect* rect) override; |
+ bool requestPointerLock() override; |
+ void requestPointerUnlock() override; |
+ bool isPointerLocked() override; |
// Override point to obtain that the current input method state and caret |
// position. |
@@ -365,6 +370,10 @@ class CONTENT_EXPORT RenderWidget |
// Indicates whether this widget has focus. |
bool has_focus() const { return has_focus_; } |
+ MouseLockDispatcher* mouse_lock_dispatcher() { |
+ return mouse_lock_dispatcher_.get(); |
+ } |
+ |
protected: |
// Friend RefCounted so that the dtor can be non-public. Using this class |
// without ref-counting is an error. |
@@ -759,6 +768,12 @@ class CONTENT_EXPORT RenderWidget |
std::unique_ptr<scheduler::RenderWidgetSchedulingState> |
render_widget_scheduling_state_; |
+ // Mouse Lock dispatcher attached to this view. |
+ std::unique_ptr<RenderWidgetMouseLockDispatcher> mouse_lock_dispatcher_; |
+ |
+ // Wraps the |webwidget_| as a MouseLockDispatcher::LockTarget interface. |
+ std::unique_ptr<MouseLockDispatcher::LockTarget> webwidget_mouse_lock_target_; |
+ |
private: |
// When emulated, this returns original device scale factor. |
float GetOriginalDeviceScaleFactor() const; |