Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(371)

Unified Diff: content/renderer/render_view_impl.cc

Issue 1980133002: Implement pointer lock API for out-of-process iframes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: removing one more override Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/renderer/render_view_impl.cc
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index df3decf81cfa4d64c33f75b9fc1c8c215b09a726..7c38c57d49e3b3db40e650362c74189f00a01f1d 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -92,7 +92,6 @@
#include "content/renderer/render_frame_proxy.h"
#include "content/renderer/render_process.h"
#include "content/renderer/render_thread_impl.h"
-#include "content/renderer/render_view_mouse_lock_dispatcher.h"
#include "content/renderer/render_widget_fullscreen_pepper.h"
#include "content/renderer/renderer_webapplicationcachehost_impl.h"
#include "content/renderer/resizing_mode_selector.h"
@@ -403,29 +402,6 @@ struct RenderViewImpl::PendingFileChooser {
namespace {
-class WebWidgetLockTarget : public MouseLockDispatcher::LockTarget {
- public:
- explicit WebWidgetLockTarget(blink::WebWidget* webwidget)
- : webwidget_(webwidget) {}
-
- void OnLockMouseACK(bool succeeded) override {
- if (succeeded)
- webwidget_->didAcquirePointerLock();
- else
- webwidget_->didNotAcquirePointerLock();
- }
-
- void OnMouseLockLost() override { webwidget_->didLosePointerLock(); }
-
- bool HandleMouseLockedInputEvent(const blink::WebMouseEvent& event) override {
- // The WebWidget handles mouse lock in WebKit's handleInputEvent().
- return false;
- }
-
- private:
- blink::WebWidget* webwidget_;
-};
-
WebDragData DropDataToWebDragData(const DropData& drop_data) {
std::vector<WebDragData::Item> item_list;
@@ -654,7 +630,6 @@ RenderViewImpl::RenderViewImpl(CompositorDependencies* compositor_deps,
main_render_frame_(nullptr),
frame_widget_(nullptr),
speech_recognition_dispatcher_(NULL),
- mouse_lock_dispatcher_(NULL),
#if defined(OS_ANDROID)
expected_content_intent_id_(0),
#endif
@@ -679,8 +654,7 @@ void RenderViewImpl::Initialize(const ViewMsg_New_Params& params,
DCHECK_GE(next_page_id_, 0);
webview_ = WebView::create(this);
- webwidget_ = webview_->widget();
- webwidget_mouse_lock_target_.reset(new WebWidgetLockTarget(webwidget_));
+ RenderWidget::DoInit(MSG_ROUTING_NONE, webview_->widget(), nullptr, false);
g_view_map.Get().insert(std::make_pair(webview(), this));
g_routing_id_view_map.Get().insert(std::make_pair(GetRoutingID(), this));
@@ -808,10 +782,6 @@ void RenderViewImpl::Initialize(const ViewMsg_New_Params& params,
new TextInputClientObserver(this);
#endif // defined(OS_MACOSX)
- // The next group of objects all implement RenderViewObserver, so are deleted
- // along with the RenderView automatically.
- mouse_lock_dispatcher_ = new RenderViewMouseLockDispatcher(this);
-
// We don't use HistoryController in OOPIF-enabled modes.
if (!SiteIsolationPolicy::UseSubframeNavigationEntries())
history_controller_.reset(new HistoryController(this));
@@ -1994,19 +1964,6 @@ void RenderViewImpl::show(WebNavigationPolicy policy) {
SetPendingWindowRect(initial_rect_);
}
-bool RenderViewImpl::requestPointerLock() {
- return mouse_lock_dispatcher_->LockMouse(webwidget_mouse_lock_target_.get());
-}
-
-void RenderViewImpl::requestPointerUnlock() {
- mouse_lock_dispatcher_->UnlockMouse(webwidget_mouse_lock_target_.get());
-}
-
-bool RenderViewImpl::isPointerLocked() {
- return mouse_lock_dispatcher_->IsMouseLockedTo(
- webwidget_mouse_lock_target_.get());
-}
-
void RenderViewImpl::onMouseDown(const WebNode& mouse_down_node) {
FOR_EACH_OBSERVER(
RenderViewObserver, observers_, OnMouseDown(mouse_down_node));

Powered by Google App Engine
This is Rietveld 408576698