diff options
Diffstat (limited to 'chrome/browser/ui/omnibox/alternate_nav_url_fetcher.cc')
-rw-r--r-- | chrome/browser/ui/omnibox/alternate_nav_url_fetcher.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/chrome/browser/ui/omnibox/alternate_nav_url_fetcher.cc b/chrome/browser/ui/omnibox/alternate_nav_url_fetcher.cc index 2b302c0..c6e6d63 100644 --- a/chrome/browser/ui/omnibox/alternate_nav_url_fetcher.cc +++ b/chrome/browser/ui/omnibox/alternate_nav_url_fetcher.cc @@ -29,6 +29,8 @@ AlternateNavURLFetcher::AlternateNavURLFetcher( navigated_to_entry_(false) { registrar_.Add(this, content::NOTIFICATION_NAV_ENTRY_PENDING, content::NotificationService::AllSources()); + registrar_.Add(this, chrome::NOTIFICATION_INSTANT_COMMITTED, + content::NotificationService::AllSources()); } AlternateNavURLFetcher::~AlternateNavURLFetcher() { @@ -58,6 +60,19 @@ void AlternateNavURLFetcher::Observe( break; } + case chrome::NOTIFICATION_INSTANT_COMMITTED: { + // See above. + NavigationController* controller = + &content::Source<content::WebContents>(source)->GetController(); + if (controller_ == controller) { + delete this; + } else if (!controller_) { + navigated_to_entry_ = true; + StartFetch(controller); + } + break; + } + case content::NOTIFICATION_NAV_ENTRY_COMMITTED: // The page was navigated, we can show the infobar now if necessary. registrar_.Remove(this, content::NOTIFICATION_NAV_ENTRY_COMMITTED, |