summaryrefslogtreecommitdiffstats
path: root/chrome/browser/instant/instant_controller.h
diff options
context:
space:
mode:
authorshishir@chromium.org <shishir@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-12-07 08:19:15 +0000
committershishir@chromium.org <shishir@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-12-07 08:19:15 +0000
commita09a7546f7535a6909886c473e1555d59b9ed88e (patch)
tree7f9f61e3c7b699ebc60a2b5c5d011280e6ef72d5 /chrome/browser/instant/instant_controller.h
parentf9285be839ca1efd30a3d4ddb27e479bd364639b (diff)
downloadchromium_src-a09a7546f7535a6909886c473e1555d59b9ed88e.zip
chromium_src-a09a7546f7535a6909886c473e1555d59b9ed88e.tar.gz
chromium_src-a09a7546f7535a6909886c473e1555d59b9ed88e.tar.bz2
Recreate InstantLoader when its underlying RenderView dies.
Currently the new loader created is not updated with the previous status and the omnibox input stays the same as before the crash. If the user changes the omnibox input in any way, instant will showup as expected. BUG=159327 Review URL: https://chromiumcodereview.appspot.com/11412180 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171723 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/instant/instant_controller.h')
-rw-r--r--chrome/browser/instant/instant_controller.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/chrome/browser/instant/instant_controller.h b/chrome/browser/instant/instant_controller.h
index 34e78ab..5661ba1 100644
--- a/chrome/browser/instant/instant_controller.h
+++ b/chrome/browser/instant/instant_controller.h
@@ -142,6 +142,9 @@ class InstantController {
// user clicking on it.
void InstantLoaderContentsFocused();
+ // Invoked by the InstantLoader when its RenderView crashes.
+ void InstantLoaderRenderViewGone();
+
private:
FRIEND_TEST_ALL_PREFIXES(InstantTest, OmniboxFocusLoadsInstant);
FRIEND_TEST_ALL_PREFIXES(InstantTest, NonInstantSearchProvider);
@@ -256,10 +259,11 @@ class InstantController {
base::OneShotTimer<InstantController> stale_loader_timer_;
// For each key K => value N, the map says that we found that the search
- // engine identified by Instant URL K didn't support the Instant API in each
- // of the last N times that we loaded it. If an Instant URL isn't present in
- // the map at all or has a value 0, it means that search engine supports the
- // Instant API (or we assume it does, since we haven't determined it doesn't).
+ // engine identified by Instant URL K didn't support the Instant API, or
+ // caused RenderView crashes in each of the last N times that we loaded it.
+ // If an Instant URL isn't present in the map at all or has a value 0,
+ // it means that search engine supports the Instant API (or we assume it does,
+ // since we haven't determined it doesn't) and it did not cause a crash.
std::map<std::string, int> blacklisted_urls_;
// Search terms extraction (for autocomplete history matches) doesn't work