74 lines
3.6 KiB
Diff
74 lines
3.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Anonymous <anonymous@electronjs.org>
|
|
Date: Thu, 20 Sep 2018 17:46:21 -0700
|
|
Subject: render_widget_host_view_base.patch
|
|
|
|
... something to do with OSR? and maybe <webview> as well? terrifying.
|
|
|
|
diff --git a/content/browser/renderer_host/render_widget_host_view_base.cc b/content/browser/renderer_host/render_widget_host_view_base.cc
|
|
index 38678fccf52b5e487123456b998d3a9749808740..d79700c16506c02700b11b1f1392345d5cafe9cb 100644
|
|
--- a/content/browser/renderer_host/render_widget_host_view_base.cc
|
|
+++ b/content/browser/renderer_host/render_widget_host_view_base.cc
|
|
@@ -583,6 +583,13 @@ bool RenderWidgetHostViewBase::ScreenRectIsUnstableFor(
|
|
return false;
|
|
}
|
|
|
|
+RenderWidgetHostViewBase* RenderWidgetHostViewBase::CreateViewForWidget(
|
|
+ RenderWidgetHost* render_widget_host,
|
|
+ RenderWidgetHost* embedder_render_widget_host,
|
|
+ WebContentsView* web_contents_view) {
|
|
+ return web_contents_view->CreateViewForWidget(render_widget_host);
|
|
+}
|
|
+
|
|
void RenderWidgetHostViewBase::ProcessMouseEvent(
|
|
const blink::WebMouseEvent& event,
|
|
const ui::LatencyInfo& latency) {
|
|
diff --git a/content/browser/renderer_host/render_widget_host_view_base.h b/content/browser/renderer_host/render_widget_host_view_base.h
|
|
index e36fac493c11e896efd87d4e0a854d103ae66a37..ee3f9179c49cbc725946dddd68e7f9a5dd8d67d2 100644
|
|
--- a/content/browser/renderer_host/render_widget_host_view_base.h
|
|
+++ b/content/browser/renderer_host/render_widget_host_view_base.h
|
|
@@ -25,8 +25,10 @@
|
|
#include "components/viz/host/hit_test/hit_test_query.h"
|
|
#include "content/browser/renderer_host/display_feature.h"
|
|
#include "content/browser/renderer_host/event_with_latency_info.h"
|
|
+#include "content/browser/web_contents/web_contents_view.h"
|
|
#include "content/common/content_export.h"
|
|
#include "content/public/browser/render_frame_metadata_provider.h"
|
|
+#include "content/public/browser/render_widget_host.h"
|
|
#include "content/public/browser/render_widget_host_view.h"
|
|
#include "content/public/common/widget_type.h"
|
|
#include "services/viz/public/mojom/hit_test/hit_test_region_list.mojom.h"
|
|
@@ -66,9 +68,11 @@ class CursorManager;
|
|
class MouseWheelPhaseHandler;
|
|
class RenderWidgetHostImpl;
|
|
class RenderWidgetHostViewBaseObserver;
|
|
+class RenderWidgetHostViewGuest;
|
|
class SyntheticGestureTarget;
|
|
class TextInputManager;
|
|
class TouchSelectionControllerClientManager;
|
|
+class WebContentsView;
|
|
class WebCursor;
|
|
class DelegatedFrameHost;
|
|
struct DisplayFeature;
|
|
@@ -121,6 +125,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView {
|
|
bool show_reason_unoccluded,
|
|
bool show_reason_bfcache_restore) final;
|
|
|
|
+ virtual void InitAsGuest(RenderWidgetHostView* parent_host_view,
|
|
+ RenderWidgetHostViewGuest* guest_view) {}
|
|
+
|
|
// This only needs to be overridden by RenderWidgetHostViewBase subclasses
|
|
// that handle content embedded within other RenderWidgetHostViews.
|
|
gfx::PointF TransformPointToRootCoordSpaceF(
|
|
@@ -287,6 +294,11 @@ class CONTENT_EXPORT RenderWidgetHostViewBase : public RenderWidgetHostView {
|
|
virtual void ProcessGestureEvent(const blink::WebGestureEvent& event,
|
|
const ui::LatencyInfo& latency);
|
|
|
|
+ virtual RenderWidgetHostViewBase* CreateViewForWidget(
|
|
+ RenderWidgetHost* render_widget_host,
|
|
+ RenderWidgetHost* embedder_render_widget_host,
|
|
+ WebContentsView* web_contents_view);
|
|
+
|
|
// Transform a point that is in the coordinate space of a Surface that is
|
|
// embedded within the RenderWidgetHostViewBase's Surface to the
|
|
// coordinate space of an embedding, or embedded, Surface. Typically this
|