| Index: chrome/browser/history/history_tab_helper.cc
 | 
| diff --git a/chrome/browser/history/history_tab_helper.cc b/chrome/browser/history/history_tab_helper.cc
 | 
| index 0117be104244d9ee3576af72af211fb497971615..c44188c43edd95fdf992471dedbad748ccdb7d7b 100644
 | 
| --- a/chrome/browser/history/history_tab_helper.cc
 | 
| +++ b/chrome/browser/history/history_tab_helper.cc
 | 
| @@ -14,8 +14,8 @@
 | 
|  #include "chrome/browser/profiles/profile.h"
 | 
|  #include "components/history/content/browser/history_context_helper.h"
 | 
|  #include "components/history/core/browser/history_service.h"
 | 
| -#include "content/public/browser/navigation_details.h"
 | 
|  #include "content/public/browser/navigation_entry.h"
 | 
| +#include "content/public/browser/navigation_handle.h"
 | 
|  #include "content/public/browser/web_contents.h"
 | 
|  #include "content/public/browser/web_contents_delegate.h"
 | 
|  #include "content/public/common/frame_navigate_params.h"
 | 
| @@ -63,21 +63,22 @@ history::HistoryAddPageArgs
 | 
|  HistoryTabHelper::CreateHistoryAddPageArgs(
 | 
|      const GURL& virtual_url,
 | 
|      base::Time timestamp,
 | 
| -    bool did_replace_entry,
 | 
|      int nav_entry_id,
 | 
| -    const content::FrameNavigateParams& params) {
 | 
| +    content::NavigationHandle* navigation_handle) {
 | 
|    // Clicks on content suggestions on the NTP should not contribute to the
 | 
|    // Most Visited tiles in the NTP.
 | 
|    const bool consider_for_ntp_most_visited =
 | 
| -      params.referrer.url != kChromeContentSuggestionsReferrer;
 | 
| +      navigation_handle->GetReferrer().url != kChromeContentSuggestionsReferrer;
 | 
|  
 | 
|    history::HistoryAddPageArgs add_page_args(
 | 
| -      params.url, timestamp, history::ContextIDForWebContents(web_contents()),
 | 
| -      nav_entry_id, params.referrer.url, params.redirects, params.transition,
 | 
| -      history::SOURCE_BROWSED, did_replace_entry,
 | 
| -      consider_for_ntp_most_visited);
 | 
| -  if (ui::PageTransitionIsMainFrame(params.transition) &&
 | 
| -      virtual_url != params.url) {
 | 
| +      navigation_handle->GetURL(), timestamp,
 | 
| +      history::ContextIDForWebContents(web_contents()),
 | 
| +      nav_entry_id, navigation_handle->GetReferrer().url,
 | 
| +      navigation_handle->GetRedirectChain(),
 | 
| +      navigation_handle->GetPageTransition(), history::SOURCE_BROWSED,
 | 
| +      navigation_handle->DidReplaceEntry(), consider_for_ntp_most_visited);
 | 
| +  if (ui::PageTransitionIsMainFrame(navigation_handle->GetPageTransition()) &&
 | 
| +      virtual_url != navigation_handle->GetURL()) {
 | 
|      // Hack on the "virtual" URL so that it will appear in history. For some
 | 
|      // types of URLs, we will display a magic URL that is different from where
 | 
|      // the page is actually navigated. We want the user to see in history what
 | 
| @@ -91,20 +92,19 @@ HistoryTabHelper::CreateHistoryAddPageArgs(
 | 
|    return add_page_args;
 | 
|  }
 | 
|  
 | 
| -void HistoryTabHelper::DidNavigateMainFrame(
 | 
| -    const content::LoadCommittedDetails& details,
 | 
| -    const content::FrameNavigateParams& params) {
 | 
| -  // Allow the new page to set the title again.
 | 
| -  received_page_title_ = false;
 | 
| -}
 | 
| +void HistoryTabHelper::DidFinishNavigation(
 | 
| +    content::NavigationHandle* navigation_handle) {
 | 
| +  if (!navigation_handle->HasCommitted())
 | 
| +    return;
 | 
| +
 | 
| +  if (navigation_handle->IsInMainFrame()) {
 | 
| +    // Allow the new page to set the title again.
 | 
| +    received_page_title_ = false;
 | 
| +  }
 | 
|  
 | 
| -void HistoryTabHelper::DidNavigateAnyFrame(
 | 
| -    content::RenderFrameHost* render_frame_host,
 | 
| -    const content::LoadCommittedDetails& details,
 | 
| -    const content::FrameNavigateParams& params) {
 | 
|    // Update history. Note that this needs to happen after the entry is complete,
 | 
|    // which WillNavigate[Main,Sub]Frame will do before this function is called.
 | 
| -  if (!params.should_update_history)
 | 
| +  if (!navigation_handle->ShouldUpdateHistory())
 | 
|      return;
 | 
|  
 | 
|    // Most of the time, the displayURL matches the loaded URL, but for about:
 | 
| @@ -115,8 +115,8 @@ void HistoryTabHelper::DidNavigateAnyFrame(
 | 
|        web_contents()->GetController().GetLastCommittedEntry();
 | 
|    const history::HistoryAddPageArgs& add_page_args =
 | 
|        CreateHistoryAddPageArgs(
 | 
| -          web_contents()->GetURL(), details.entry->GetTimestamp(),
 | 
| -          details.did_replace_entry, last_committed->GetUniqueID(), params);
 | 
| +          web_contents()->GetURL(), last_committed->GetTimestamp(),
 | 
| +          last_committed->GetUniqueID(), navigation_handle);
 | 
|  
 | 
|    prerender::PrerenderManager* prerender_manager =
 | 
|        prerender::PrerenderManagerFactory::GetForBrowserContext(
 | 
| 
 |