Index: chrome/browser/ui/search/instant_page.cc |
diff --git a/chrome/browser/ui/search/instant_page.cc b/chrome/browser/ui/search/instant_page.cc |
index c21c3078477e9fdb8974f9da4181205e97113cf3..c195e56d79d616866b18791f0c497ab6a947caf1 100644 |
--- a/chrome/browser/ui/search/instant_page.cc |
+++ b/chrome/browser/ui/search/instant_page.cc |
@@ -7,7 +7,9 @@ |
#include "base/utf_string_conversions.h" |
#include "chrome/common/render_messages.h" |
#include "chrome/common/url_constants.h" |
+#include "content/public/browser/navigation_details.h" |
#include "content/public/browser/web_contents.h" |
+#include "content/public/common/frame_navigate_params.h" |
#include "ui/base/resource/resource_bundle.h" |
#include "ui/gfx/font.h" |
@@ -192,6 +194,16 @@ void InstantPage::DidCommitProvisionalLoadForFrame( |
delegate_->InstantPageAboutToNavigateMainFrame(contents(), url); |
} |
+void InstantPage::DidFailProvisionalLoad( |
+ int64 frame_id, |
samarth
2013/05/01 06:26:47
nit: comment out the parameter names that you won'
David Black
2013/05/02 00:49:45
Done.
|
+ bool is_main_frame, |
+ const GURL& validated_url, |
+ int error_code, |
+ const string16& error_description, |
+ content::RenderViewHost* render_view_host) { |
+ delegate_->InstantPageLoadFailed(contents()); |
+} |
+ |
void InstantPage::OnSetSuggestions( |
int page_id, |
const std::vector<InstantSuggestion>& suggestions) { |
@@ -257,3 +269,13 @@ void InstantPage::OnUndoMostVisitedDeletion(InstantRestrictedID restricted_id) { |
void InstantPage::OnUndoAllMostVisitedDeletions() { |
delegate_->UndoAllMostVisitedDeletions(); |
} |
+ |
+void InstantPage::DidNavigateMainFrame( |
+ const content::LoadCommittedDetails& details, |
+ const content::FrameNavigateParams& params) { |
samarth
2013/05/01 06:26:47
Likewise, here
David Black
2013/05/02 00:49:45
Done.
|
+ // A 204 can be sent by the search provider as a lightweight signal |
+ // to fall back to the local page, and we obviously want to fall back |
+ // if we get any response code that indicates an error. |
+ if (details.http_status_code == 204 || details.http_status_code >= 400) |
+ delegate_->InstantPageLoadFailed(contents()); |
+} |