Index: content/renderer/render_widget.cc |
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc |
index 8c5c6d6893bfbfd4f368e714bfa72c5c94e0759e..e279288312a14f3b3890e5bce4ba4481cd50ea4f 100644 |
--- a/content/renderer/render_widget.cc |
+++ b/content/renderer/render_widget.cc |
@@ -248,7 +248,7 @@ class RenderWidget::ScreenMetricsEmulator { |
// Scale and offset used to convert between host coordinates |
// and webwidget coordinates. |
float scale() { return scale_; } |
- gfx::Point offset() { return offset_; } |
+ gfx::PointF offset() { return offset_; } |
gfx::Rect applied_widget_rect() const { return applied_widget_rect_; } |
gfx::Rect original_screen_rect() const { return original_view_screen_rect_; } |
const WebScreenInfo& original_screen_info() { return original_screen_info_; } |
@@ -278,7 +278,7 @@ class RenderWidget::ScreenMetricsEmulator { |
// The computed scale and offset used to fit widget into browser window. |
float scale_; |
- gfx::Point offset_; |
+ gfx::PointF offset_; |
// Widget rect as passed to webwidget. |
gfx::Rect applied_widget_rect_; |
@@ -314,7 +314,7 @@ RenderWidget::ScreenMetricsEmulator::~ScreenMetricsEmulator() { |
widget_->screen_info_ = original_screen_info_; |
widget_->SetDeviceScaleFactor(original_screen_info_.deviceScaleFactor); |
- widget_->SetScreenMetricsEmulationParameters(0.f, gfx::Point(), 1.f); |
+ widget_->SetScreenMetricsEmulationParameters(false, params_); |
widget_->view_screen_rect_ = original_view_screen_rect_; |
widget_->window_screen_rect_ = original_window_screen_rect_; |
widget_->Resize(original_size_, |
@@ -392,8 +392,11 @@ void RenderWidget::ScreenMetricsEmulator::Apply( |
// even when emulating different scale factor; |
// - in order to fit into view, WebView applies offset and scale to the |
// root layer. |
- widget_->SetScreenMetricsEmulationParameters( |
- original_screen_info_.deviceScaleFactor, offset_, scale_); |
+ blink::WebDeviceEmulationParams modified_params = params_; |
+ modified_params.deviceScaleFactor = original_screen_info_.deviceScaleFactor; |
+ modified_params.offset = blink::WebFloatPoint(offset_.x(), offset_.y()); |
+ modified_params.scale = scale_; |
+ widget_->SetScreenMetricsEmulationParameters(true, modified_params); |
widget_->SetDeviceScaleFactor(applied_device_scale_factor); |
widget_->view_screen_rect_ = applied_widget_rect_; |
@@ -686,9 +689,8 @@ gfx::Rect RenderWidget::AdjustValidationMessageAnchor(const gfx::Rect& anchor) { |
} |
void RenderWidget::SetScreenMetricsEmulationParameters( |
- float device_scale_factor, |
- const gfx::Point& root_layer_offset, |
- float root_layer_scale) { |
+ bool enabled, |
+ const blink::WebDeviceEmulationParams& params) { |
// This is only supported in RenderView. |
NOTREACHED(); |
} |