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

Side by Side Diff: content/browser/frame_host/navigation_controller_impl.h

Issue 2475693002: Do not reset NavigationHandle when navigating same-page (Closed)
Patch Set: Rebase + removed DCHECK Created 4 years, 1 month 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 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_NAVIGATION_CONTROLLER_IMPL_H_ 5 #ifndef CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_
6 #define CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_ 6 #define CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after
132 // given details structure and broadcast the NOTIFY_NAV_ENTRY_COMMITTED 132 // given details structure and broadcast the NOTIFY_NAV_ENTRY_COMMITTED
133 // notification. The caller can then use the details without worrying about 133 // notification. The caller can then use the details without worrying about
134 // listening for the notification. 134 // listening for the notification.
135 // 135 //
136 // In the case that nothing has changed, the details structure is undefined 136 // In the case that nothing has changed, the details structure is undefined
137 // and it will return false. 137 // and it will return false.
138 bool RendererDidNavigate( 138 bool RendererDidNavigate(
139 RenderFrameHostImpl* rfh, 139 RenderFrameHostImpl* rfh,
140 const FrameHostMsg_DidCommitProvisionalLoad_Params& params, 140 const FrameHostMsg_DidCommitProvisionalLoad_Params& params,
141 LoadCommittedDetails* details, 141 LoadCommittedDetails* details,
142 bool is_navigation_within_page); 142 bool is_navigation_within_page,
143 NavigationHandleImpl* navigation_handle);
143 144
144 // Notifies us that we just became active. This is used by the WebContentsImpl 145 // Notifies us that we just became active. This is used by the WebContentsImpl
145 // so that we know to load URLs that were pending as "lazy" loads. 146 // so that we know to load URLs that were pending as "lazy" loads.
146 void SetActive(bool is_active); 147 void SetActive(bool is_active);
147 148
148 // Returns true if the given URL would be an in-page navigation (e.g., if the 149 // Returns true if the given URL would be an in-page navigation (e.g., if the
149 // reference fragment is different, or after a pushState) from the last 150 // reference fragment is different, or after a pushState) from the last
150 // committed URL in the specified frame. If there is no last committed entry, 151 // committed URL in the specified frame. If there is no last committed entry,
151 // then nothing will be in-page. 152 // then nothing will be in-page.
152 // 153 //
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 // 270 //
270 // The NewPage and NewSubframe functions take in |replace_entry| to pass to 271 // The NewPage and NewSubframe functions take in |replace_entry| to pass to
271 // InsertOrReplaceEntry, in case the newly created NavigationEntry is meant to 272 // InsertOrReplaceEntry, in case the newly created NavigationEntry is meant to
272 // replace the current one (e.g., for location.replace or successful loads 273 // replace the current one (e.g., for location.replace or successful loads
273 // after net errors), in contrast to updating a NavigationEntry in place 274 // after net errors), in contrast to updating a NavigationEntry in place
274 // (e.g., for history.replaceState). 275 // (e.g., for history.replaceState).
275 void RendererDidNavigateToNewPage( 276 void RendererDidNavigateToNewPage(
276 RenderFrameHostImpl* rfh, 277 RenderFrameHostImpl* rfh,
277 const FrameHostMsg_DidCommitProvisionalLoad_Params& params, 278 const FrameHostMsg_DidCommitProvisionalLoad_Params& params,
278 bool is_in_page, 279 bool is_in_page,
279 bool replace_entry); 280 bool replace_entry,
281 NavigationHandleImpl* handle);
280 void RendererDidNavigateToExistingPage( 282 void RendererDidNavigateToExistingPage(
281 RenderFrameHostImpl* rfh, 283 RenderFrameHostImpl* rfh,
282 const FrameHostMsg_DidCommitProvisionalLoad_Params& params, 284 const FrameHostMsg_DidCommitProvisionalLoad_Params& params,
283 bool is_in_page); 285 bool is_in_page,
286 NavigationHandleImpl* handle);
284 void RendererDidNavigateToSamePage( 287 void RendererDidNavigateToSamePage(
285 RenderFrameHostImpl* rfh, 288 RenderFrameHostImpl* rfh,
286 const FrameHostMsg_DidCommitProvisionalLoad_Params& params); 289 const FrameHostMsg_DidCommitProvisionalLoad_Params& params,
290 NavigationHandleImpl* handle);
287 void RendererDidNavigateNewSubframe( 291 void RendererDidNavigateNewSubframe(
288 RenderFrameHostImpl* rfh, 292 RenderFrameHostImpl* rfh,
289 const FrameHostMsg_DidCommitProvisionalLoad_Params& params, 293 const FrameHostMsg_DidCommitProvisionalLoad_Params& params,
290 bool is_in_page, 294 bool is_in_page,
291 bool replace_entry); 295 bool replace_entry);
292 bool RendererDidNavigateAutoSubframe( 296 bool RendererDidNavigateAutoSubframe(
293 RenderFrameHostImpl* rfh, 297 RenderFrameHostImpl* rfh,
294 const FrameHostMsg_DidCommitProvisionalLoad_Params& params); 298 const FrameHostMsg_DidCommitProvisionalLoad_Params& params);
295 299
296 // Helper function for code shared between Reload() and 300 // Helper function for code shared between Reload() and
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
441 // these are ReloadType::NONE and a null timestamp, respectively. 445 // these are ReloadType::NONE and a null timestamp, respectively.
442 ReloadType last_committed_reload_type_; 446 ReloadType last_committed_reload_type_;
443 base::Time last_committed_reload_time_; 447 base::Time last_committed_reload_time_;
444 448
445 DISALLOW_COPY_AND_ASSIGN(NavigationControllerImpl); 449 DISALLOW_COPY_AND_ASSIGN(NavigationControllerImpl);
446 }; 450 };
447 451
448 } // namespace content 452 } // namespace content
449 453
450 #endif // CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_ 454 #endif // CONTENT_BROWSER_FRAME_HOST_NAVIGATION_CONTROLLER_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698