moves createviewfordwidget method to osrrwhv
This commit is contained in:
parent
bccc25165d
commit
062b1ed43e
6 changed files with 36 additions and 28 deletions
|
@ -89,6 +89,7 @@ class NativeWindowMac : public NativeWindow,
|
||||||
void SetContentProtection(bool enable) override;
|
void SetContentProtection(bool enable) override;
|
||||||
void SetBrowserView(NativeBrowserView* browser_view) override;
|
void SetBrowserView(NativeBrowserView* browser_view) override;
|
||||||
void SetParentWindow(NativeWindow* parent) override;
|
void SetParentWindow(NativeWindow* parent) override;
|
||||||
|
gfx::NativeView GetNativeView() override;
|
||||||
gfx::NativeWindow GetNativeWindow() override;
|
gfx::NativeWindow GetNativeWindow() override;
|
||||||
gfx::AcceleratedWidget GetAcceleratedWidget() override;
|
gfx::AcceleratedWidget GetAcceleratedWidget() override;
|
||||||
void SetProgressBar(double progress, const ProgressState state) override;
|
void SetProgressBar(double progress, const ProgressState state) override;
|
||||||
|
|
|
@ -1314,6 +1314,10 @@ void NativeWindowMac::SetParentWindow(NativeWindow* parent) {
|
||||||
[parent->GetNativeWindow() addChildWindow:window_ ordered:NSWindowAbove];
|
[parent->GetNativeWindow() addChildWindow:window_ ordered:NSWindowAbove];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gfx::NativeView NativeWindowMac::GetNativeView() {
|
||||||
|
return inspectable_web_contents()->GetView()->GetNativeView();
|
||||||
|
}
|
||||||
|
|
||||||
gfx::NativeWindow NativeWindowMac::GetNativeWindow() {
|
gfx::NativeWindow NativeWindowMac::GetNativeWindow() {
|
||||||
return window_;
|
return window_;
|
||||||
}
|
}
|
||||||
|
|
|
@ -415,13 +415,13 @@ OffScreenRenderWidgetHostView::OffScreenRenderWidgetHostView(
|
||||||
frame_rate_threshold_ms_(0),
|
frame_rate_threshold_ms_(0),
|
||||||
last_time_(base::Time::Now()),
|
last_time_(base::Time::Now()),
|
||||||
scale_factor_(kDefaultScaleFactor),
|
scale_factor_(kDefaultScaleFactor),
|
||||||
|
size_(native_window->GetSize()),
|
||||||
painting_(true),
|
painting_(true),
|
||||||
is_showing_(!render_widget_host_->is_hidden()),
|
is_showing_(!render_widget_host_->is_hidden()),
|
||||||
is_destroyed_(false),
|
is_destroyed_(false),
|
||||||
popup_position_(gfx::Rect()),
|
popup_position_(gfx::Rect()),
|
||||||
hold_resize_(false),
|
hold_resize_(false),
|
||||||
pending_resize_(false),
|
pending_resize_(false),
|
||||||
size_(native_window->GetSize()),
|
|
||||||
weak_ptr_factory_(this) {
|
weak_ptr_factory_(this) {
|
||||||
DCHECK(render_widget_host_);
|
DCHECK(render_widget_host_);
|
||||||
#if !defined(OS_MACOSX)
|
#if !defined(OS_MACOSX)
|
||||||
|
@ -839,6 +839,30 @@ gfx::Size OffScreenRenderWidgetHostView::GetRequestedRendererSize() const {
|
||||||
return GetDelegatedFrameHost()->GetRequestedRendererSize();
|
return GetDelegatedFrameHost()->GetRequestedRendererSize();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
content::RenderWidgetHostViewBase*
|
||||||
|
OffScreenRenderWidgetHostView::CreateViewForWidget(
|
||||||
|
content::RenderWidgetHost* render_widget_host,
|
||||||
|
content::RenderWidgetHost* embedder_render_widget_host,
|
||||||
|
content::WebContentsView* web_contents_view) {
|
||||||
|
if (render_widget_host->GetView()) {
|
||||||
|
return static_cast<content::RenderWidgetHostViewBase*>(
|
||||||
|
render_widget_host->GetView());
|
||||||
|
}
|
||||||
|
|
||||||
|
OffScreenRenderWidgetHostView* embedder_host_view = nullptr;
|
||||||
|
if (embedder_render_widget_host) {
|
||||||
|
embedder_host_view = static_cast<OffScreenRenderWidgetHostView*>(
|
||||||
|
embedder_render_widget_host->GetView());
|
||||||
|
}
|
||||||
|
|
||||||
|
return new OffScreenRenderWidgetHostView(
|
||||||
|
transparent_,
|
||||||
|
callback_,
|
||||||
|
render_widget_host,
|
||||||
|
embedder_host_view,
|
||||||
|
native_window_);
|
||||||
|
}
|
||||||
|
|
||||||
#if !defined(OS_MACOSX)
|
#if !defined(OS_MACOSX)
|
||||||
ui::Layer* OffScreenRenderWidgetHostView::DelegatedFrameHostGetLayer() const {
|
ui::Layer* OffScreenRenderWidgetHostView::DelegatedFrameHostGetLayer() const {
|
||||||
return const_cast<ui::Layer*>(root_layer_.get());
|
return const_cast<ui::Layer*>(root_layer_.get());
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
#include "content/browser/renderer_host/render_widget_host_impl.h"
|
#include "content/browser/renderer_host/render_widget_host_impl.h"
|
||||||
#include "content/browser/renderer_host/render_widget_host_view_base.h"
|
#include "content/browser/renderer_host/render_widget_host_view_base.h"
|
||||||
#include "content/browser/renderer_host/resize_lock.h"
|
#include "content/browser/renderer_host/resize_lock.h"
|
||||||
|
#include "content/browser/web_contents/web_contents_view.h"
|
||||||
#include "third_party/skia/include/core/SkBitmap.h"
|
#include "third_party/skia/include/core/SkBitmap.h"
|
||||||
#include "third_party/WebKit/public/platform/WebVector.h"
|
#include "third_party/WebKit/public/platform/WebVector.h"
|
||||||
#include "ui/base/ime/text_input_client.h"
|
#include "ui/base/ime/text_input_client.h"
|
||||||
|
@ -152,6 +153,11 @@ class OffScreenRenderWidgetHostView
|
||||||
gfx::Size GetPhysicalBackingSize() const override;
|
gfx::Size GetPhysicalBackingSize() const override;
|
||||||
gfx::Size GetRequestedRendererSize() const override;
|
gfx::Size GetRequestedRendererSize() const override;
|
||||||
|
|
||||||
|
content::RenderWidgetHostViewBase* CreateViewForWidget(
|
||||||
|
content::RenderWidgetHost*,
|
||||||
|
content::RenderWidgetHost*,
|
||||||
|
content::WebContentsView*) override;
|
||||||
|
|
||||||
#if !defined(OS_MACOSX)
|
#if !defined(OS_MACOSX)
|
||||||
// content::DelegatedFrameHostClient:
|
// content::DelegatedFrameHostClient:
|
||||||
int DelegatedFrameHostGetGpuMemoryBufferClientId(void) const;
|
int DelegatedFrameHostGetGpuMemoryBufferClientId(void) const;
|
||||||
|
|
|
@ -105,30 +105,6 @@ content::RenderWidgetHostViewBase*
|
||||||
relay->window.get());
|
relay->window.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
content::RenderWidgetHostViewBase*
|
|
||||||
OffScreenWebContentsView::CreateViewForWidget(
|
|
||||||
content::RenderWidgetHost* render_widget_host,
|
|
||||||
content::RenderWidgetHost* embedder_render_widget_host) {
|
|
||||||
if (render_widget_host->GetView()) {
|
|
||||||
return static_cast<content::RenderWidgetHostViewBase*>(
|
|
||||||
render_widget_host->GetView());
|
|
||||||
}
|
|
||||||
|
|
||||||
OffScreenRenderWidgetHostView* embedder_host_view = nullptr;
|
|
||||||
if (embedder_render_widget_host) {
|
|
||||||
embedder_host_view = static_cast<OffScreenRenderWidgetHostView*>(
|
|
||||||
embedder_render_widget_host->GetView());
|
|
||||||
}
|
|
||||||
|
|
||||||
auto relay = NativeWindowRelay::FromWebContents(web_contents_);
|
|
||||||
return new OffScreenRenderWidgetHostView(
|
|
||||||
transparent_,
|
|
||||||
callback_,
|
|
||||||
render_widget_host,
|
|
||||||
embedder_host_view,
|
|
||||||
relay->window.get());
|
|
||||||
}
|
|
||||||
|
|
||||||
content::RenderWidgetHostViewBase*
|
content::RenderWidgetHostViewBase*
|
||||||
OffScreenWebContentsView::CreateViewForPopupWidget(
|
OffScreenWebContentsView::CreateViewForPopupWidget(
|
||||||
content::RenderWidgetHost* render_widget_host) {
|
content::RenderWidgetHost* render_widget_host) {
|
||||||
|
|
|
@ -45,9 +45,6 @@ class OffScreenWebContentsView : public content::WebContentsView,
|
||||||
content::RenderWidgetHostViewBase* CreateViewForWidget(
|
content::RenderWidgetHostViewBase* CreateViewForWidget(
|
||||||
content::RenderWidgetHost* render_widget_host,
|
content::RenderWidgetHost* render_widget_host,
|
||||||
bool is_guest_view_hack) override;
|
bool is_guest_view_hack) override;
|
||||||
content::RenderWidgetHostViewBase* CreateViewForWidget(
|
|
||||||
content::RenderWidgetHost* render_widget_host,
|
|
||||||
content::RenderWidgetHost* embedder_render_widget_host) override;
|
|
||||||
content::RenderWidgetHostViewBase* CreateViewForPopupWidget(
|
content::RenderWidgetHostViewBase* CreateViewForPopupWidget(
|
||||||
content::RenderWidgetHost* render_widget_host) override;
|
content::RenderWidgetHost* render_widget_host) override;
|
||||||
void SetPageTitle(const base::string16& title) override;
|
void SetPageTitle(const base::string16& title) override;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue