OLD | NEW |
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/renderer/render_frame_proxy.h" | 5 #include "content/renderer/render_frame_proxy.h" |
6 | 6 |
7 #include <map> | 7 #include <map> |
8 | 8 |
9 #include "base/lazy_instance.h" | 9 #include "base/lazy_instance.h" |
10 #include "content/child/webmessageportchannel_impl.h" | 10 #include "content/child/webmessageportchannel_impl.h" |
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
311 delete this; | 311 delete this; |
312 } | 312 } |
313 | 313 |
314 void RenderFrameProxy::postMessageEvent( | 314 void RenderFrameProxy::postMessageEvent( |
315 blink::WebLocalFrame* source_frame, | 315 blink::WebLocalFrame* source_frame, |
316 blink::WebRemoteFrame* target_frame, | 316 blink::WebRemoteFrame* target_frame, |
317 blink::WebSecurityOrigin target_origin, | 317 blink::WebSecurityOrigin target_origin, |
318 blink::WebDOMMessageEvent event) { | 318 blink::WebDOMMessageEvent event) { |
319 DCHECK(!web_frame_ || web_frame_ == target_frame); | 319 DCHECK(!web_frame_ || web_frame_ == target_frame); |
320 | 320 |
321 ViewMsg_PostMessage_Params params; | 321 FrameMsg_PostMessage_Params params; |
322 params.is_data_raw_string = false; | 322 params.is_data_raw_string = false; |
323 params.data = event.data().toString(); | 323 params.data = event.data().toString(); |
324 params.source_origin = event.origin(); | 324 params.source_origin = event.origin(); |
325 if (!target_origin.isNull()) | 325 if (!target_origin.isNull()) |
326 params.target_origin = target_origin.toString(); | 326 params.target_origin = target_origin.toString(); |
327 | 327 |
328 params.message_ports = | 328 params.message_ports = |
329 WebMessagePortChannelImpl::ExtractMessagePortIDs(event.releaseChannels()); | 329 WebMessagePortChannelImpl::ExtractMessagePortIDs(event.releaseChannels()); |
330 | 330 |
331 // Include the routing ID for the source frame (if one exists), which the | 331 // Include the routing ID for the source frame (if one exists), which the |
332 // browser process will translate into the routing ID for the equivalent | 332 // browser process will translate into the routing ID for the equivalent |
333 // frame in the target process. | 333 // frame in the target process. |
334 params.source_routing_id = MSG_ROUTING_NONE; | 334 params.source_routing_id = MSG_ROUTING_NONE; |
335 if (source_frame) { | 335 if (source_frame) { |
336 RenderViewImpl* source_view = | 336 RenderFrameImpl* source_render_frame = |
337 RenderViewImpl::FromWebView(source_frame->view()); | 337 RenderFrameImpl::FromWebFrame(source_frame); |
338 if (source_view) | 338 if (source_render_frame) |
339 params.source_routing_id = source_view->routing_id(); | 339 params.source_routing_id = source_render_frame->GetRoutingID(); |
340 } | 340 } |
| 341 params.source_view_routing_id = MSG_ROUTING_NONE; |
341 | 342 |
342 Send(new ViewHostMsg_RouteMessageEvent(render_view_->GetRoutingID(), params)); | 343 Send(new FrameHostMsg_RouteMessageEvent(routing_id_, params)); |
343 } | 344 } |
344 | 345 |
345 void RenderFrameProxy::initializeChildFrame( | 346 void RenderFrameProxy::initializeChildFrame( |
346 const blink::WebRect& frame_rect, | 347 const blink::WebRect& frame_rect, |
347 float scale_factor) { | 348 float scale_factor) { |
348 Send(new FrameHostMsg_InitializeChildFrame( | 349 Send(new FrameHostMsg_InitializeChildFrame( |
349 routing_id_, frame_rect, scale_factor)); | 350 routing_id_, frame_rect, scale_factor)); |
350 } | 351 } |
351 | 352 |
352 void RenderFrameProxy::navigate(const blink::WebURLRequest& request, | 353 void RenderFrameProxy::navigate(const blink::WebURLRequest& request, |
353 bool should_replace_current_entry) { | 354 bool should_replace_current_entry) { |
354 FrameHostMsg_OpenURL_Params params; | 355 FrameHostMsg_OpenURL_Params params; |
355 params.url = request.url(); | 356 params.url = request.url(); |
356 params.referrer = Referrer( | 357 params.referrer = Referrer( |
357 GURL(request.httpHeaderField(blink::WebString::fromUTF8("Referer"))), | 358 GURL(request.httpHeaderField(blink::WebString::fromUTF8("Referer"))), |
358 request.referrerPolicy()); | 359 request.referrerPolicy()); |
359 params.disposition = CURRENT_TAB; | 360 params.disposition = CURRENT_TAB; |
360 params.should_replace_current_entry = should_replace_current_entry; | 361 params.should_replace_current_entry = should_replace_current_entry; |
361 params.user_gesture = | 362 params.user_gesture = |
362 blink::WebUserGestureIndicator::isProcessingUserGesture(); | 363 blink::WebUserGestureIndicator::isProcessingUserGesture(); |
363 blink::WebUserGestureIndicator::consumeUserGesture(); | 364 blink::WebUserGestureIndicator::consumeUserGesture(); |
364 Send(new FrameHostMsg_OpenURL(routing_id_, params)); | 365 Send(new FrameHostMsg_OpenURL(routing_id_, params)); |
365 } | 366 } |
366 | 367 |
367 void RenderFrameProxy::forwardInputEvent(const blink::WebInputEvent* event) { | 368 void RenderFrameProxy::forwardInputEvent(const blink::WebInputEvent* event) { |
368 Send(new FrameHostMsg_ForwardInputEvent(routing_id_, event)); | 369 Send(new FrameHostMsg_ForwardInputEvent(routing_id_, event)); |
369 } | 370 } |
370 | 371 |
371 } // namespace | 372 } // namespace |
OLD | NEW |