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

Unified Diff: content/renderer/render_widget.cc

Issue 1003113003: [DevTools] Handle emulation in embedder, call into web API. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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_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();
}
« content/browser/devtools/protocol/page_handler.cc ('K') | « content/renderer/render_widget.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698