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

Unified Diff: content/renderer/render_view_impl.cc

Issue 964403003: Make it possible to set the display mode from Chromium (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Decouple getting display mode and renderer-initiated fullscreen mode code paths Created 5 years, 9 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 7e31a9f050b48180bce5b83fdc1b90db56062347..127ac9ed30b78062f2869ae81645186d8ecdb44c 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -659,6 +659,7 @@ void RenderViewImpl::Initialize(const ViewMsg_New_Params& params,
surface_id_ = params.surface_id;
if (params.opener_route_id != MSG_ROUTING_NONE && was_created_by_renderer)
opener_id_ = params.opener_route_id;
+ display_mode_= params.initial_size.display_mode;
// Ensure we start with a valid next_page_id_ from the browser.
DCHECK_GE(next_page_id_, 0);
@@ -715,6 +716,7 @@ void RenderViewImpl::Initialize(const ViewMsg_New_Params& params,
g_view_map.Get().insert(std::make_pair(webview(), this));
g_routing_id_view_map.Get().insert(std::make_pair(routing_id_, this));
webview()->setDeviceScaleFactor(device_scale_factor_);
+ webview()->setDisplayMode(display_mode_);
webview()->settings()->setPreferCompositingToLCDTextEnabled(
PreferCompositingToLCDText(compositor_deps_, device_scale_factor_));
webview()->settings()->setThreadedScrollingEnabled(
@@ -2735,6 +2737,7 @@ void RenderViewImpl::OnDisableAutoResize(const gfx::Size& new_size) {
visible_viewport_size_,
resizer_rect_,
is_fullscreen_,
+ display_mode_,
NO_RESIZE_ACK);
}
}
@@ -2920,6 +2923,10 @@ void RenderViewImpl::OnResize(const ViewMsg_Resize_Params& params) {
ShouldDisplayScrollbars(params.new_size.width(),
params.new_size.height()));
}
+ if (display_mode_ != params.display_mode) {
+ display_mode_ = params.display_mode;
+ webview()->setDisplayMode(display_mode_);
+ }
}
gfx::Size old_visible_viewport_size = visible_viewport_size_;
@@ -3740,7 +3747,8 @@ void RenderViewImpl::SetDeviceScaleFactorForTesting(float factor) {
params.top_controls_shrink_blink_size = false;
params.top_controls_height = 0.f;
params.resizer_rect = WebRect();
- params.is_fullscreen = is_fullscreen();
+ params.is_fullscreen = is_fullscreen_;
+ params.display_mode = display_mode_;
OnResize(params);
}

Powered by Google App Engine
This is Rietveld 408576698