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

Unified Diff: content/renderer/render_frame_impl.cc

Issue 2498463002: RenderWidget/RenderView: encapsulate ViewHostMsg_Show, etc, in a callback (Closed)
Patch Set: Remove RenderWidgetFullscreen Created 4 years, 1 month 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
« no previous file with comments | « content/renderer/BUILD.gn ('k') | content/renderer/render_thread_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_frame_impl.cc
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index 571c2f9fecf70ce2eec1d463d9a6ddd75591046e..4b9d528fb5fff49c29d3bedef9a7eb16b1869677 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -1352,11 +1352,18 @@ RenderWidgetFullscreenPepper* RenderFrameImpl::CreatePepperFullscreenContainer(
&fullscreen_widget_routing_id)) {
return nullptr;
}
+ RenderWidget::ShowCallback show_callback = base::Bind(
+ &RenderViewImpl::ShowCreatedFullscreenWidget, render_view()->AsWeakPtr());
RenderWidgetFullscreenPepper* widget = RenderWidgetFullscreenPepper::Create(
- fullscreen_widget_routing_id, render_view()->routing_id(),
+ fullscreen_widget_routing_id, show_callback,
GetRenderWidget()->compositor_deps(), plugin, active_url,
GetRenderWidget()->screen_info());
+ // TODO(nick): The show() handshake seems like unnecessary complexity here,
+ // since there's no real delay between CreateFullscreenWidget and
+ // ShowCreatedFullscreenWidget. Would it be simpler to have the
+ // CreateFullscreenWidget mojo method implicitly show the window, and skip the
+ // subsequent step?
widget->show(blink::WebNavigationPolicyIgnore);
return widget;
}
@@ -5114,11 +5121,13 @@ WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation(
!pending_navigation_params_->request_params.redirects.empty());
#ifdef OS_ANDROID
+ bool render_view_was_created_by_renderer =
+ render_view_->was_created_by_renderer_;
// The handlenavigation API is deprecated and will be removed once
// crbug.com/325351 is resolved.
if (GetContentClient()->renderer()->HandleNavigation(
- this, is_content_initiated, render_view_->opener_id_, frame_,
- info.urlRequest, info.navigationType, info.defaultPolicy,
+ this, is_content_initiated, render_view_was_created_by_renderer,
+ frame_, info.urlRequest, info.navigationType, info.defaultPolicy,
is_redirect)) {
return blink::WebNavigationPolicyIgnore;
}
« no previous file with comments | « content/renderer/BUILD.gn ('k') | content/renderer/render_thread_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698