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

Side by Side Diff: content/browser/renderer_host/render_widget_host_impl.cc

Issue 2122023002: Cross-process frames should be notified of device scale factor changes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix test. Created 4 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/renderer_host/render_widget_host_impl.h" 5 #include "content/browser/renderer_host/render_widget_host_impl.h"
6 6
7 #include <math.h> 7 #include <math.h>
8 8
9 #include <set> 9 #include <set>
10 #include <tuple> 10 #include <tuple>
(...skipping 570 matching lines...) Expand 10 before | Expand all | Expand 10 after
581 resize_params->is_fullscreen_granted = 581 resize_params->is_fullscreen_granted =
582 delegate_->IsFullscreenForCurrentTab(); 582 delegate_->IsFullscreenForCurrentTab();
583 resize_params->display_mode = delegate_->GetDisplayMode(this); 583 resize_params->display_mode = delegate_->GetDisplayMode(this);
584 } else { 584 } else {
585 resize_params->is_fullscreen_granted = false; 585 resize_params->is_fullscreen_granted = false;
586 resize_params->display_mode = blink::WebDisplayModeBrowser; 586 resize_params->display_mode = blink::WebDisplayModeBrowser;
587 } 587 }
588 588
589 if (view_) { 589 if (view_) {
590 resize_params->new_size = view_->GetRequestedRendererSize(); 590 resize_params->new_size = view_->GetRequestedRendererSize();
591 // TODO(wjmaclean): Can we just get rid of physical_backing_size and just
592 // deal with it on the renderer side? It seems to always be
593 // ScaleToCeiledSize(new_size, device_scale_factor) ??
oshima 2016/07/07 22:45:43 Ideally we should just send the backing size (or p
wjmaclean 2016/07/08 17:38:33 Ok ... so we would send the dsf and physical_backi
591 resize_params->physical_backing_size = view_->GetPhysicalBackingSize(); 594 resize_params->physical_backing_size = view_->GetPhysicalBackingSize();
592 resize_params->top_controls_height = view_->GetTopControlsHeight(); 595 resize_params->top_controls_height = view_->GetTopControlsHeight();
593 resize_params->top_controls_shrink_blink_size = 596 resize_params->top_controls_shrink_blink_size =
594 view_->DoTopControlsShrinkBlinkSize(); 597 view_->DoTopControlsShrinkBlinkSize();
595 resize_params->visible_viewport_size = view_->GetVisibleViewportSize(); 598 resize_params->visible_viewport_size = view_->GetVisibleViewportSize();
596 } 599 }
597 600
598 const bool size_changed = 601 const bool size_changed =
599 !old_resize_params_ || 602 !old_resize_params_ ||
600 old_resize_params_->new_size != resize_params->new_size || 603 old_resize_params_->new_size != resize_params->new_size ||
(...skipping 606 matching lines...) Expand 10 before | Expand all | Expand 10 after
1207 input_event_observers_.AddObserver(observer); 1210 input_event_observers_.AddObserver(observer);
1208 } 1211 }
1209 1212
1210 void RenderWidgetHostImpl::RemoveInputEventObserver( 1213 void RenderWidgetHostImpl::RemoveInputEventObserver(
1211 RenderWidgetHost::InputEventObserver* observer) { 1214 RenderWidgetHost::InputEventObserver* observer) {
1212 input_event_observers_.RemoveObserver(observer); 1215 input_event_observers_.RemoveObserver(observer);
1213 } 1216 }
1214 1217
1215 void RenderWidgetHostImpl::GetWebScreenInfo(blink::WebScreenInfo* result) { 1218 void RenderWidgetHostImpl::GetWebScreenInfo(blink::WebScreenInfo* result) {
1216 TRACE_EVENT0("renderer_host", "RenderWidgetHostImpl::GetWebScreenInfo"); 1219 TRACE_EVENT0("renderer_host", "RenderWidgetHostImpl::GetWebScreenInfo");
1217 if (view_) 1220 if (view_) {
1218 view_->GetScreenInfo(result); 1221 view_->GetScreenInfo(result);
1219 else 1222 } else {
1220 RenderWidgetHostViewBase::GetDefaultScreenInfo(result); 1223 RenderWidgetHostViewBase::GetDefaultScreenInfo(result);
1224 // The delegate may have more up-to-date information if we're a sub-frame.
1225 result->deviceScaleFactor = delegate_->DefaultDeviceScaleFactor();
1226 }
1221 // TODO(sievers): find a way to make this done another way so the method 1227 // TODO(sievers): find a way to make this done another way so the method
1222 // can be const. 1228 // can be const.
1223 latency_tracker_.set_device_scale_factor(result->deviceScaleFactor); 1229 latency_tracker_.set_device_scale_factor(result->deviceScaleFactor);
1224 if (IsUseZoomForDSFEnabled()) 1230 if (IsUseZoomForDSFEnabled())
1225 input_router_->SetDeviceScaleFactor(result->deviceScaleFactor); 1231 input_router_->SetDeviceScaleFactor(result->deviceScaleFactor);
1226 } 1232 }
1227 1233
1228 void RenderWidgetHostImpl::HandleCompositorProto( 1234 void RenderWidgetHostImpl::HandleCompositorProto(
1229 const std::vector<uint8_t>& proto) { 1235 const std::vector<uint8_t>& proto) {
1230 DCHECK(!proto.empty()); 1236 DCHECK(!proto.empty());
(...skipping 923 matching lines...) Expand 10 before | Expand all | Expand 10 after
2154 return delegate_ ? delegate_->GetRootBrowserAccessibilityManager() : NULL; 2160 return delegate_ ? delegate_->GetRootBrowserAccessibilityManager() : NULL;
2155 } 2161 }
2156 2162
2157 BrowserAccessibilityManager* 2163 BrowserAccessibilityManager*
2158 RenderWidgetHostImpl::GetOrCreateRootBrowserAccessibilityManager() { 2164 RenderWidgetHostImpl::GetOrCreateRootBrowserAccessibilityManager() {
2159 return delegate_ ? 2165 return delegate_ ?
2160 delegate_->GetOrCreateRootBrowserAccessibilityManager() : NULL; 2166 delegate_->GetOrCreateRootBrowserAccessibilityManager() : NULL;
2161 } 2167 }
2162 2168
2163 } // namespace content 2169 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698