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

Side by Side Diff: trunk/src/content/browser/frame_host/cross_process_frame_connector.cc

Issue 295833002: Revert 271461 "Decouple RVH creation from CrossProcessFrameConne..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/frame_host/cross_process_frame_connector.h" 5 #include "content/browser/frame_host/cross_process_frame_connector.h"
6 6
7 #include "content/browser/frame_host/render_frame_host_impl.h" 7 #include "content/browser/frame_host/render_frame_host_impl.h"
8 #include "content/browser/frame_host/render_widget_host_view_child_frame.h" 8 #include "content/browser/frame_host/render_widget_host_view_child_frame.h"
9 #include "content/browser/renderer_host/render_view_host_impl.h" 9 #include "content/browser/renderer_host/render_view_host_impl.h"
10 #include "content/browser/renderer_host/render_widget_host_impl.h" 10 #include "content/browser/renderer_host/render_widget_host_impl.h"
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 } 46 }
47 47
48 void CrossProcessFrameConnector::set_view( 48 void CrossProcessFrameConnector::set_view(
49 RenderWidgetHostViewChildFrame* view) { 49 RenderWidgetHostViewChildFrame* view) {
50 // Detach ourselves from the previous |view_|. 50 // Detach ourselves from the previous |view_|.
51 if (view_) 51 if (view_)
52 view_->set_cross_process_frame_connector(NULL); 52 view_->set_cross_process_frame_connector(NULL);
53 53
54 view_ = view; 54 view_ = view;
55 55
56 // Attach ourselves to the new view and size it appropriately. 56 // Attach ourselves to the new view.
57 if (view_) { 57 if (view_)
58 view_->set_cross_process_frame_connector(this); 58 view_->set_cross_process_frame_connector(this);
59 SetDeviceScaleFactor(device_scale_factor_);
60 SetSize(child_frame_rect_);
61 }
62 } 59 }
63 60
64 void CrossProcessFrameConnector::RenderProcessGone() { 61 void CrossProcessFrameConnector::RenderProcessGone() {
65 frame_proxy_in_parent_renderer_->Send(new FrameMsg_ChildFrameProcessGone( 62 frame_proxy_in_parent_renderer_->Send(new FrameMsg_ChildFrameProcessGone(
66 frame_proxy_in_parent_renderer_->routing_id())); 63 frame_proxy_in_parent_renderer_->routing_id()));
67 } 64 }
68 65
69 void CrossProcessFrameConnector::ChildFrameBuffersSwapped( 66 void CrossProcessFrameConnector::ChildFrameBuffersSwapped(
70 const GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params& gpu_params, 67 const GpuHostMsg_AcceleratedSurfaceBuffersSwapped_Params& gpu_params,
71 int gpu_host_id) { 68 int gpu_host_id) {
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 void CrossProcessFrameConnector::OnReclaimCompositorResources( 116 void CrossProcessFrameConnector::OnReclaimCompositorResources(
120 const FrameHostMsg_ReclaimCompositorResources_Params& params) { 117 const FrameHostMsg_ReclaimCompositorResources_Params& params) {
121 RenderWidgetHostImpl::SendReclaimCompositorResources(params.route_id, 118 RenderWidgetHostImpl::SendReclaimCompositorResources(params.route_id,
122 params.output_surface_id, 119 params.output_surface_id,
123 params.renderer_host_id, 120 params.renderer_host_id,
124 params.ack); 121 params.ack);
125 } 122 }
126 123
127 void CrossProcessFrameConnector::OnInitializeChildFrame(gfx::Rect frame_rect, 124 void CrossProcessFrameConnector::OnInitializeChildFrame(gfx::Rect frame_rect,
128 float scale_factor) { 125 float scale_factor) {
129 if (scale_factor != device_scale_factor_) 126 if (scale_factor != device_scale_factor_) {
130 SetDeviceScaleFactor(scale_factor); 127 device_scale_factor_ = scale_factor;
128 if (view_) {
129 RenderWidgetHostImpl* child_widget =
130 RenderWidgetHostImpl::From(view_->GetRenderWidgetHost());
131 child_widget->NotifyScreenInfoChanged();
132 }
133 }
131 134
132 if (!frame_rect.size().IsEmpty()) 135 if (!frame_rect.size().IsEmpty()) {
133 SetSize(frame_rect); 136 child_frame_rect_ = frame_rect;
137 if (view_)
138 view_->SetSize(frame_rect.size());
139 }
134 } 140 }
135 141
136 gfx::Rect CrossProcessFrameConnector::ChildFrameRect() { 142 gfx::Rect CrossProcessFrameConnector::ChildFrameRect() {
137 return child_frame_rect_; 143 return child_frame_rect_;
138 } 144 }
139 145
140 void CrossProcessFrameConnector::OnForwardInputEvent( 146 void CrossProcessFrameConnector::OnForwardInputEvent(
141 const blink::WebInputEvent* event) { 147 const blink::WebInputEvent* event) {
142 if (!view_) 148 if (!view_)
143 return; 149 return;
(...skipping 18 matching lines...) Expand all
162 return; 168 return;
163 } 169 }
164 170
165 if (event->type == blink::WebInputEvent::MouseWheel) { 171 if (event->type == blink::WebInputEvent::MouseWheel) {
166 child_widget->ForwardWheelEvent( 172 child_widget->ForwardWheelEvent(
167 *static_cast<const blink::WebMouseWheelEvent*>(event)); 173 *static_cast<const blink::WebMouseWheelEvent*>(event));
168 return; 174 return;
169 } 175 }
170 } 176 }
171 177
172 void CrossProcessFrameConnector::SetDeviceScaleFactor(float scale_factor) {
173 device_scale_factor_ = scale_factor;
174 if (view_) {
175 RenderWidgetHostImpl* child_widget =
176 RenderWidgetHostImpl::From(view_->GetRenderWidgetHost());
177 child_widget->NotifyScreenInfoChanged();
178 }
179 }
180
181 void CrossProcessFrameConnector::SetSize(gfx::Rect frame_rect) {
182 child_frame_rect_ = frame_rect;
183 if (view_)
184 view_->SetSize(frame_rect.size());
185 }
186
187 } // namespace content 178 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698