OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/render_frame_host_impl.h" | 5 #include "content/browser/frame_host/render_frame_host_impl.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
9 #include "base/containers/hash_tables.h" | 9 #include "base/containers/hash_tables.h" |
10 #include "base/lazy_instance.h" | 10 #include "base/lazy_instance.h" |
(...skipping 564 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
575 } | 575 } |
576 | 576 |
577 void RenderFrameHostImpl::OnDetach() { | 577 void RenderFrameHostImpl::OnDetach() { |
578 frame_tree_->RemoveFrame(frame_tree_node_); | 578 frame_tree_->RemoveFrame(frame_tree_node_); |
579 } | 579 } |
580 | 580 |
581 void RenderFrameHostImpl::OnFrameFocused() { | 581 void RenderFrameHostImpl::OnFrameFocused() { |
582 frame_tree_->SetFocusedFrame(frame_tree_node_); | 582 frame_tree_->SetFocusedFrame(frame_tree_node_); |
583 } | 583 } |
584 | 584 |
585 void RenderFrameHostImpl::OnOpenURL( | 585 void RenderFrameHostImpl::OnOpenURL(const FrameHostMsg_OpenURL_Params& params) { |
586 const FrameHostMsg_OpenURL_Params& params) { | 586 OpenURL(params, GetSiteInstance()); |
587 GURL validated_url(params.url); | |
588 GetProcess()->FilterURL(false, &validated_url); | |
589 | |
590 TRACE_EVENT1("navigation", "RenderFrameHostImpl::OnOpenURL", | |
591 "url", validated_url.possibly_invalid_spec()); | |
592 frame_tree_node_->navigator()->RequestOpenURL( | |
593 this, validated_url, params.referrer, params.disposition, | |
594 params.should_replace_current_entry, params.user_gesture); | |
595 } | 587 } |
596 | 588 |
597 void RenderFrameHostImpl::OnDocumentOnLoadCompleted() { | 589 void RenderFrameHostImpl::OnDocumentOnLoadCompleted() { |
598 // This message is only sent for top-level frames. TODO(avi): when frame tree | 590 // This message is only sent for top-level frames. TODO(avi): when frame tree |
599 // mirroring works correctly, add a check here to enforce it. | 591 // mirroring works correctly, add a check here to enforce it. |
600 delegate_->DocumentOnLoadCompleted(this); | 592 delegate_->DocumentOnLoadCompleted(this); |
601 } | 593 } |
602 | 594 |
603 void RenderFrameHostImpl::OnDidStartProvisionalLoadForFrame( | 595 void RenderFrameHostImpl::OnDidStartProvisionalLoadForFrame( |
604 const GURL& url, | 596 const GURL& url, |
(...skipping 669 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1274 params.common_params.transition = ui::PAGE_TRANSITION_LINK; | 1266 params.common_params.transition = ui::PAGE_TRANSITION_LINK; |
1275 params.common_params.navigation_type = FrameMsg_Navigate_Type::NORMAL; | 1267 params.common_params.navigation_type = FrameMsg_Navigate_Type::NORMAL; |
1276 params.commit_params.browser_navigation_start = base::TimeTicks::Now(); | 1268 params.commit_params.browser_navigation_start = base::TimeTicks::Now(); |
1277 params.page_id = -1; | 1269 params.page_id = -1; |
1278 params.pending_history_list_offset = -1; | 1270 params.pending_history_list_offset = -1; |
1279 params.current_history_list_offset = -1; | 1271 params.current_history_list_offset = -1; |
1280 params.current_history_list_length = 0; | 1272 params.current_history_list_length = 0; |
1281 Navigate(params); | 1273 Navigate(params); |
1282 } | 1274 } |
1283 | 1275 |
1284 void RenderFrameHostImpl::OpenURL(const FrameHostMsg_OpenURL_Params& params) { | 1276 void RenderFrameHostImpl::OpenURL(const FrameHostMsg_OpenURL_Params& params, |
1285 OnOpenURL(params); | 1277 SiteInstance* source_site_instance) { |
1278 GURL validated_url(params.url); | |
1279 GetProcess()->FilterURL(false, &validated_url); | |
1280 | |
1281 TRACE_EVENT1("navigation", "RenderFrameHostImpl::OnOpenURL", "url", | |
nasko
2014/12/11 01:14:44
nit: The method is no longer called OnOpenURL, so
lfg
2014/12/11 23:55:24
Done.
| |
1282 validated_url.possibly_invalid_spec()); | |
1283 frame_tree_node_->navigator()->RequestOpenURL( | |
1284 this, validated_url, source_site_instance, params.referrer, | |
1285 params.disposition, params.should_replace_current_entry, | |
1286 params.user_gesture); | |
1286 } | 1287 } |
1287 | 1288 |
1288 void RenderFrameHostImpl::Stop() { | 1289 void RenderFrameHostImpl::Stop() { |
1289 Send(new FrameMsg_Stop(routing_id_)); | 1290 Send(new FrameMsg_Stop(routing_id_)); |
1290 } | 1291 } |
1291 | 1292 |
1292 void RenderFrameHostImpl::DispatchBeforeUnload(bool for_cross_site_transition) { | 1293 void RenderFrameHostImpl::DispatchBeforeUnload(bool for_cross_site_transition) { |
1293 // TODO(creis): Support beforeunload on subframes. For now just pretend that | 1294 // TODO(creis): Support beforeunload on subframes. For now just pretend that |
1294 // the handler ran and allowed the navigation to proceed. | 1295 // the handler ran and allowed the navigation to proceed. |
1295 if (GetParent() || !IsRenderFrameLive()) { | 1296 if (GetParent() || !IsRenderFrameLive()) { |
(...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1585 void RenderFrameHostImpl::DidUseGeolocationPermission() { | 1586 void RenderFrameHostImpl::DidUseGeolocationPermission() { |
1586 RenderFrameHost* top_frame = frame_tree_node()->frame_tree()->GetMainFrame(); | 1587 RenderFrameHost* top_frame = frame_tree_node()->frame_tree()->GetMainFrame(); |
1587 GetContentClient()->browser()->RegisterPermissionUsage( | 1588 GetContentClient()->browser()->RegisterPermissionUsage( |
1588 PERMISSION_GEOLOCATION, | 1589 PERMISSION_GEOLOCATION, |
1589 delegate_->GetAsWebContents(), | 1590 delegate_->GetAsWebContents(), |
1590 GetLastCommittedURL().GetOrigin(), | 1591 GetLastCommittedURL().GetOrigin(), |
1591 top_frame->GetLastCommittedURL().GetOrigin()); | 1592 top_frame->GetLastCommittedURL().GetOrigin()); |
1592 } | 1593 } |
1593 | 1594 |
1594 } // namespace content | 1595 } // namespace content |
OLD | NEW |