refactor: remove CreateViewForWidget
patch (#47084)
* refactor: remove CreateViewForWidget patch Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com> * chore: rm unintended osr change Co-authored-by: deepak1556 <hop2deep@gmail.com> --------- Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com> Co-authored-by: deepak1556 <hop2deep@gmail.com>
This commit is contained in:
parent
be5b02386d
commit
ec1b0f4923
5 changed files with 20 additions and 84 deletions
|
@ -4,7 +4,6 @@ blink_local_frame.patch
|
|||
can_create_window.patch
|
||||
disable_hidden.patch
|
||||
dom_storage_limits.patch
|
||||
render_widget_host_view_base.patch
|
||||
render_widget_host_view_mac.patch
|
||||
webview_cross_drag.patch
|
||||
gin_enable_disable_v8_platform.patch
|
||||
|
|
|
@ -1,73 +0,0 @@
|
|||
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 bb7475f1f8be4038c77d2dc68b09a7ac2338b160..c35ef5290ef1f812c5e7ff31d71ae0661b26d124 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
+++ b/content/browser/renderer_host/render_widget_host_view_base.cc
|
||||
@@ -655,6 +655,13 @@ void RenderWidgetHostViewBase::OnFrameTokenChangedForView(
|
||||
host()->DidProcessFrame(frame_token, activation_time);
|
||||
}
|
||||
|
||||
+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 5627ee381a99c49760bbaa6e5e3476d8b4bc8cb1..230e059ee11ed64a1694232dad791fbb5644b578 100644
|
||||
--- a/content/browser/renderer_host/render_widget_host_view_base.h
|
||||
+++ b/content/browser/renderer_host/render_widget_host_view_base.h
|
||||
@@ -30,6 +30,8 @@
|
||||
#include "components/viz/common/surfaces/scoped_surface_id_allocator.h"
|
||||
#include "components/viz/common/surfaces/surface_id.h"
|
||||
#include "content/browser/renderer_host/display_feature.h"
|
||||
+#include "content/browser/renderer_host/visible_time_request_trigger.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"
|
||||
@@ -73,11 +75,13 @@ namespace content {
|
||||
class DevicePosturePlatformProvider;
|
||||
class MouseWheelPhaseHandler;
|
||||
class RenderWidgetHostImpl;
|
||||
+class RenderWidgetHostViewGuest;
|
||||
class ScopedViewTransitionResources;
|
||||
class TextInputManager;
|
||||
class TouchSelectionControllerClientManager;
|
||||
class TouchSelectionControllerInputObserver;
|
||||
class WebContentsAccessibility;
|
||||
+class WebContentsView;
|
||||
class DelegatedFrameHost;
|
||||
class SyntheticGestureTarget;
|
||||
|
||||
@@ -149,6 +153,10 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
void ProcessGestureEvent(const blink::WebGestureEvent& event,
|
||||
const ui::LatencyInfo& latency) override;
|
||||
RenderWidgetHostViewBase* GetRootView() override;
|
||||
+ virtual RenderWidgetHostViewBase* CreateViewForWidget(
|
||||
+ RenderWidgetHost* render_widget_host,
|
||||
+ RenderWidgetHost* embedder_render_widget_host,
|
||||
+ WebContentsView* web_contents_view);
|
||||
void OnAutoscrollStart() override;
|
||||
const viz::DisplayHitTestQueryMap& GetDisplayHitTestQuery() const override;
|
||||
|
||||
@@ -198,6 +206,9 @@ class CONTENT_EXPORT RenderWidgetHostViewBase
|
||||
void ShowInterestInElement(int) override {}
|
||||
bool IsHTMLFormPopup() const override;
|
||||
|
||||
+ 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(
|
|
@ -170,7 +170,7 @@ class OffScreenRenderWidgetHostView
|
|||
content::RenderWidgetHostViewBase* CreateViewForWidget(
|
||||
content::RenderWidgetHost*,
|
||||
content::RenderWidgetHost*,
|
||||
content::WebContentsView*) override;
|
||||
content::WebContentsView*);
|
||||
|
||||
const viz::LocalSurfaceId& GetLocalSurfaceId() const override;
|
||||
const viz::FrameSinkId& GetFrameSinkId() const override;
|
||||
|
|
|
@ -122,14 +122,19 @@ OffScreenWebContentsView::CreateViewForChildWidget(
|
|||
auto* web_contents_impl =
|
||||
static_cast<content::WebContentsImpl*>(web_contents_);
|
||||
|
||||
auto* view = static_cast<OffScreenRenderWidgetHostView*>(
|
||||
web_contents_impl->GetOuterWebContents()
|
||||
? web_contents_impl->GetOuterWebContents()->GetRenderWidgetHostView()
|
||||
: web_contents_impl->GetRenderWidgetHostView());
|
||||
OffScreenRenderWidgetHostView* embedder_host_view = nullptr;
|
||||
if (web_contents_impl->GetOuterWebContents()) {
|
||||
embedder_host_view = static_cast<OffScreenRenderWidgetHostView*>(
|
||||
web_contents_impl->GetOuterWebContents()->GetRenderWidgetHostView());
|
||||
} else {
|
||||
embedder_host_view = static_cast<OffScreenRenderWidgetHostView*>(
|
||||
web_contents_impl->GetRenderWidgetHostView());
|
||||
}
|
||||
|
||||
return new OffScreenRenderWidgetHostView(
|
||||
transparent_, offscreen_use_shared_texture_, painting_,
|
||||
view->frame_rate(), callback_, render_widget_host, view, GetSize());
|
||||
embedder_host_view->frame_rate(), callback_, render_widget_host,
|
||||
embedder_host_view, GetSize());
|
||||
}
|
||||
|
||||
void OffScreenWebContentsView::RenderViewReady() {
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
#include <memory>
|
||||
|
||||
#include "content/browser/web_contents/web_contents_impl.h" // nogncheck
|
||||
#include "content/browser/web_contents/web_contents_view.h" // nogncheck
|
||||
#include "content/public/browser/navigation_handle.h"
|
||||
#include "content/public/browser/render_frame_host.h"
|
||||
#include "content/public/browser/render_process_host.h"
|
||||
|
@ -111,10 +112,14 @@ WebViewGuestDelegate::CreateNewGuestWindow(
|
|||
auto* guest_contents_impl =
|
||||
static_cast<content::WebContentsImpl*>(guest_contents.release());
|
||||
auto* new_guest_view = guest_contents_impl->GetView();
|
||||
content::RenderWidgetHostView* widget_view =
|
||||
new_guest_view->CreateViewForWidget(
|
||||
guest_contents_impl->GetRenderViewHost()->GetWidget());
|
||||
if (!create_params.initially_hidden)
|
||||
|
||||
content::RenderWidgetHostView* widget_view = nullptr;
|
||||
if (new_guest_view) {
|
||||
widget_view = new_guest_view->CreateViewForWidget(
|
||||
guest_contents_impl->GetRenderViewHost()->GetWidget());
|
||||
}
|
||||
|
||||
if (widget_view && !create_params.initially_hidden)
|
||||
widget_view->Show();
|
||||
return base::WrapUnique(
|
||||
static_cast<content::WebContentsImpl*>(guest_contents_impl));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue