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

Unified Diff: chrome/browser/search/instant_service.h

Issue 273153004: Revert of Handle TemplateURLService load failure better, and make some test correctness fixes that will be ne… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/profile_resetter/profile_resetter.cc ('k') | chrome/browser/search/instant_service.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/search/instant_service.h
diff --git a/chrome/browser/search/instant_service.h b/chrome/browser/search/instant_service.h
index 02dc7c77f0a4ac92f97df7f2c87ff26972b7938d..393d0721fa06c06b3657c61f5e59482b230145f6 100644
--- a/chrome/browser/search/instant_service.h
+++ b/chrome/browser/search/instant_service.h
@@ -5,37 +5,44 @@
#ifndef CHROME_BROWSER_SEARCH_INSTANT_SERVICE_H_
#define CHROME_BROWSER_SEARCH_INSTANT_SERVICE_H_
+#include <map>
#include <set>
+#include <string>
#include <vector>
-#include "base/gtest_prod_util.h"
+#include "base/basictypes.h"
+#include "base/memory/ref_counted.h"
+#include "base/memory/scoped_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/observer_list.h"
+#include "base/prefs/pref_change_registrar.h"
+#include "chrome/browser/google/google_url_tracker.h"
#include "chrome/browser/history/history_types.h"
-#include "chrome/browser/search_engines/template_url_service_observer.h"
+#include "chrome/browser/ui/search/instant_search_prerenderer.h"
+#include "chrome/common/instant_types.h"
#include "components/keyed_service/core/keyed_service.h"
#include "content/public/browser/notification_observer.h"
#include "content/public/browser/notification_registrar.h"
-#include "url/gurl.h"
+class GURL;
class InstantIOContext;
-struct InstantMostVisitedItem;
-class InstantSearchPrerenderer;
class InstantServiceObserver;
+class InstantTestBase;
+class InstantServiceTest;
class Profile;
-struct TemplateURLData;
-class TemplateURLService;
-struct ThemeBackgroundInfo;
class ThemeService;
namespace content {
class RenderProcessHost;
}
+namespace net {
+class URLRequest;
+}
+
// Tracks render process host IDs that are associated with Instant.
class InstantService : public KeyedService,
- public content::NotificationObserver,
- public TemplateURLServiceObserver {
+ public content::NotificationObserver {
public:
explicit InstantService(Profile* profile);
virtual ~InstantService();
@@ -101,22 +108,15 @@
FRIEND_TEST_ALL_PREFIXES(InstantExtendedManualTest,
MANUAL_SearchesFromFakebox);
FRIEND_TEST_ALL_PREFIXES(InstantExtendedTest, ProcessIsolation);
- FRIEND_TEST_ALL_PREFIXES(InstantServiceEnabledTest,
- SendsSearchURLsToRenderer);
+ FRIEND_TEST_ALL_PREFIXES(InstantServiceTest, SendsSearchURLsToRenderer);
- // KeyedService:
+ // Overridden from KeyedService:
virtual void Shutdown() OVERRIDE;
- // content::NotificationObserver:
+ // Overridden from content::NotificationObserver:
virtual void Observe(int type,
const content::NotificationSource& source,
const content::NotificationDetails& details) OVERRIDE;
-
- // TemplateURLServiceObserver:
- // Caches the previous value of the Default Search Provider and the Google
- // base URL to filter out changes other than those affecting the Default
- // Search Provider.
- virtual void OnTemplateURLServiceChanged() OVERRIDE;
// Called when a renderer process is terminated.
void OnRendererProcessTerminated(int process_id);
@@ -132,13 +132,14 @@
// Theme changed notification handler.
void OnThemeChanged(ThemeService* theme_service);
+ void OnGoogleURLUpdated(Profile* profile,
+ GoogleURLTracker::UpdatedDetails* details);
+
+ void OnDefaultSearchProviderChanged(const std::string& pref_name);
+
void ResetInstantSearchPrerenderer();
Profile* const profile_;
-
- // The TemplateURLService that we are observing. It will outlive this
- // InstantService due to the dependency declared in InstantServiceFactory.
- TemplateURLService* template_url_service_;
// The process ids associated with Instant processes.
std::set<int> process_ids_;
@@ -157,6 +158,8 @@
content::NotificationRegistrar registrar_;
+ PrefChangeRegistrar profile_pref_registrar_;
+
scoped_refptr<InstantIOContext> instant_io_context_;
// Set to NULL if the default search provider does not support Instant.
@@ -165,11 +168,6 @@
// Used for Top Sites async retrieval.
base::WeakPtrFactory<InstantService> weak_ptr_factory_;
- // Used to check whether notifications from TemplateURLService indicate a
- // change that affects the default search provider.
- scoped_ptr<TemplateURLData> previous_default_search_provider_;
- GURL previous_google_base_url_;
-
DISALLOW_COPY_AND_ASSIGN(InstantService);
};
« no previous file with comments | « chrome/browser/profile_resetter/profile_resetter.cc ('k') | chrome/browser/search/instant_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698