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 #ifndef CONTENT_BROWSER_FRAME_HOST_NAVIGATOR_IMPL_H_ | 5 #ifndef CONTENT_BROWSER_FRAME_HOST_NAVIGATOR_IMPL_H_ |
6 #define CONTENT_BROWSER_FRAME_HOST_NAVIGATOR_IMPL_H_ | 6 #define CONTENT_BROWSER_FRAME_HOST_NAVIGATOR_IMPL_H_ |
7 | 7 |
8 #include "base/containers/scoped_ptr_hash_map.h" | 8 #include "base/containers/scoped_ptr_hash_map.h" |
9 #include "base/memory/ref_counted.h" | 9 #include "base/memory/ref_counted.h" |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 override; | 45 override; |
46 void DidFailLoadWithError(RenderFrameHostImpl* render_frame_host, | 46 void DidFailLoadWithError(RenderFrameHostImpl* render_frame_host, |
47 const GURL& url, | 47 const GURL& url, |
48 int error_code, | 48 int error_code, |
49 const base::string16& error_description) override; | 49 const base::string16& error_description) override; |
50 void DidNavigate(RenderFrameHostImpl* render_frame_host, | 50 void DidNavigate(RenderFrameHostImpl* render_frame_host, |
51 const FrameHostMsg_DidCommitProvisionalLoad_Params& | 51 const FrameHostMsg_DidCommitProvisionalLoad_Params& |
52 input_params) override; | 52 input_params) override; |
53 bool NavigateToPendingEntry( | 53 bool NavigateToPendingEntry( |
54 FrameTreeNode* frame_tree_node, | 54 FrameTreeNode* frame_tree_node, |
| 55 const FrameNavigationEntry& frame_nav_entry, |
55 NavigationController::ReloadType reload_type) override; | 56 NavigationController::ReloadType reload_type) override; |
56 void RequestOpenURL(RenderFrameHostImpl* render_frame_host, | 57 void RequestOpenURL(RenderFrameHostImpl* render_frame_host, |
57 const GURL& url, | 58 const GURL& url, |
58 SiteInstance* source_site_instance, | 59 SiteInstance* source_site_instance, |
59 const Referrer& referrer, | 60 const Referrer& referrer, |
60 WindowOpenDisposition disposition, | 61 WindowOpenDisposition disposition, |
61 bool should_replace_current_entry, | 62 bool should_replace_current_entry, |
62 bool user_gesture) override; | 63 bool user_gesture) override; |
63 void RequestTransferURL(RenderFrameHostImpl* render_frame_host, | 64 void RequestTransferURL(RenderFrameHostImpl* render_frame_host, |
64 const GURL& url, | 65 const GURL& url, |
(...skipping 30 matching lines...) Expand all Loading... |
95 // Holds data used to track browser side navigation metrics. | 96 // Holds data used to track browser side navigation metrics. |
96 struct NavigationMetricsData; | 97 struct NavigationMetricsData; |
97 | 98 |
98 friend class NavigatorTestWithBrowserSideNavigation; | 99 friend class NavigatorTestWithBrowserSideNavigation; |
99 ~NavigatorImpl() override; | 100 ~NavigatorImpl() override; |
100 | 101 |
101 // Navigates to the given entry, which must be the pending entry. Private | 102 // Navigates to the given entry, which must be the pending entry. Private |
102 // because all callers should use NavigateToPendingEntry. | 103 // because all callers should use NavigateToPendingEntry. |
103 bool NavigateToEntry( | 104 bool NavigateToEntry( |
104 FrameTreeNode* frame_tree_node, | 105 FrameTreeNode* frame_tree_node, |
| 106 const FrameNavigationEntry& frame_nav_entry, |
105 const NavigationEntryImpl& entry, | 107 const NavigationEntryImpl& entry, |
106 NavigationController::ReloadType reload_type); | 108 NavigationController::ReloadType reload_type); |
107 | 109 |
108 bool ShouldAssignSiteForURL(const GURL& url); | 110 bool ShouldAssignSiteForURL(const GURL& url); |
109 | 111 |
110 void CheckWebUIRendererDoesNotDisplayNormalURL( | 112 void CheckWebUIRendererDoesNotDisplayNormalURL( |
111 RenderFrameHostImpl* render_frame_host, | 113 RenderFrameHostImpl* render_frame_host, |
112 const GURL& url); | 114 const GURL& url); |
113 | 115 |
114 // PlzNavigate: if needed, sends a BeforeUnload IPC to the renderer to ask it | 116 // PlzNavigate: if needed, sends a BeforeUnload IPC to the renderer to ask it |
115 // to execute the beforeUnload event. Otherwise, the navigation request will | 117 // to execute the beforeUnload event. Otherwise, the navigation request will |
116 // be started. | 118 // be started. |
117 void RequestNavigation(FrameTreeNode* frame_tree_node, | 119 void RequestNavigation(FrameTreeNode* frame_tree_node, |
| 120 const FrameNavigationEntry& frame_entry, |
118 const NavigationEntryImpl& entry, | 121 const NavigationEntryImpl& entry, |
119 NavigationController::ReloadType reload_type, | 122 NavigationController::ReloadType reload_type, |
120 base::TimeTicks navigation_start); | 123 base::TimeTicks navigation_start); |
121 | 124 |
122 // PlzNavigate: sends the NavigationRequest for |frame_tree_node| to the | 125 // PlzNavigate: sends the NavigationRequest for |frame_tree_node| to the |
123 // network stack so that it can start. | 126 // network stack so that it can start. |
124 void BeginNavigation(FrameTreeNode* frame_tree_node); | 127 void BeginNavigation(FrameTreeNode* frame_tree_node); |
125 | 128 |
126 void RecordNavigationMetrics( | 129 void RecordNavigationMetrics( |
127 const LoadCommittedDetails& details, | 130 const LoadCommittedDetails& details, |
(...skipping 16 matching lines...) Expand all Loading... |
144 // different FrameTreeNodes, based on the frame_tree_node_id. | 147 // different FrameTreeNodes, based on the frame_tree_node_id. |
145 typedef base::ScopedPtrHashMap<int64, NavigationRequest> NavigationRequestMap; | 148 typedef base::ScopedPtrHashMap<int64, NavigationRequest> NavigationRequestMap; |
146 NavigationRequestMap navigation_request_map_; | 149 NavigationRequestMap navigation_request_map_; |
147 | 150 |
148 DISALLOW_COPY_AND_ASSIGN(NavigatorImpl); | 151 DISALLOW_COPY_AND_ASSIGN(NavigatorImpl); |
149 }; | 152 }; |
150 | 153 |
151 } // namespace content | 154 } // namespace content |
152 | 155 |
153 #endif // CONTENT_BROWSER_FRAME_HOST_NAVIGATOR_IMPL_H_ | 156 #endif // CONTENT_BROWSER_FRAME_HOST_NAVIGATOR_IMPL_H_ |
OLD | NEW |