Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / ui / navigation_correction_tab_observer.h
index 795afa6..85a2095 100644 (file)
@@ -6,8 +6,7 @@
 #define CHROME_BROWSER_UI_NAVIGATION_CORRECTION_TAB_OBSERVER_H_
 
 #include "base/prefs/pref_change_registrar.h"
-#include "content/public/browser/notification_observer.h"
-#include "content/public/browser/notification_registrar.h"
+#include "components/google/core/browser/google_url_tracker.h"
 #include "content/public/browser/web_contents_observer.h"
 #include "content/public/browser/web_contents_user_data.h"
 
@@ -20,10 +19,9 @@ class PrefRegistrySyncable;
 // Per-tab class to implement navigation suggestion service functionality.
 class NavigationCorrectionTabObserver
     : public content::WebContentsObserver,
-      public content::NotificationObserver,
       public content::WebContentsUserData<NavigationCorrectionTabObserver> {
  public:
-  virtual ~NavigationCorrectionTabObserver();
+  ~NavigationCorrectionTabObserver() override;
 
   static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry);
 
@@ -32,16 +30,13 @@ class NavigationCorrectionTabObserver
   friend class content::WebContentsUserData<NavigationCorrectionTabObserver>;
 
   // content::WebContentsObserver overrides:
-  virtual void RenderViewCreated(
-      content::RenderViewHost* render_view_host) OVERRIDE;
-
-  // content::NotificationObserver overrides:
-  virtual void Observe(int type,
-                       const content::NotificationSource& source,
-                       const content::NotificationDetails& details) OVERRIDE;
+  void RenderViewCreated(content::RenderViewHost* render_view_host) override;
 
   // Internal helpers ----------------------------------------------------------
 
+  // Callback that is called when the Google URL is updated.
+  void OnGoogleURLUpdated();
+
   // Returns the URL for the correction service.  If the returned URL
   // is empty, the default error pages will be used.
   GURL GetNavigationCorrectionURL() const;
@@ -53,8 +48,8 @@ class NavigationCorrectionTabObserver
   void UpdateNavigationCorrectionInfo(content::RenderViewHost* rvh);
 
   Profile* profile_;
-  content::NotificationRegistrar registrar_;
   PrefChangeRegistrar pref_change_registrar_;
+  scoped_ptr<GoogleURLTracker::Subscription> google_url_updated_subscription_;
 
   DISALLOW_COPY_AND_ASSIGN(NavigationCorrectionTabObserver);
 };