| Index: chrome/browser/ui/search/instant_controller.h | 
| diff --git a/chrome/browser/ui/search/instant_controller.h b/chrome/browser/ui/search/instant_controller.h | 
| index 0807663297ac5d9e59c026a0a89502244494f65e..dcfa1b902c2de8f4687051db7c082f55f912c074 100644 | 
| --- a/chrome/browser/ui/search/instant_controller.h | 
| +++ b/chrome/browser/ui/search/instant_controller.h | 
| @@ -16,7 +16,6 @@ | 
| #include "base/string16.h" | 
| #include "base/time.h" | 
| #include "base/timer.h" | 
| -#include "chrome/browser/history/history_types.h" | 
| #include "chrome/browser/ui/omnibox/omnibox_edit_model.h" | 
| #include "chrome/browser/ui/search/instant_commit_type.h" | 
| #include "chrome/browser/ui/search/instant_overlay_model.h" | 
| @@ -24,8 +23,6 @@ | 
| #include "chrome/common/instant_types.h" | 
| #include "chrome/common/omnibox_focus_state.h" | 
| #include "chrome/common/search_types.h" | 
| -#include "content/public/browser/notification_observer.h" | 
| -#include "content/public/browser/notification_registrar.h" | 
| #include "content/public/common/page_transition_types.h" | 
| #include "googleurl/src/gurl.h" | 
| #include "ui/base/window_open_disposition.h" | 
| @@ -69,8 +66,7 @@ class WebContents; | 
| // only an InstantOverlay instance is kept. | 
| // | 
| // InstantController is owned by Browser via BrowserInstantController. | 
| -class InstantController : public InstantPage::Delegate, | 
| -                          public content::NotificationObserver { | 
| +class InstantController : public InstantPage::Delegate { | 
| public: | 
| // For reporting fallbacks to local overlay. | 
| enum InstantFallbackReason { | 
| @@ -232,6 +228,10 @@ class InstantController : public InstantPage::Delegate, | 
| // happen through the InstantController interface. | 
| InstantOverlayModel* model() { return &model_; } | 
|  | 
| +  // Gets the Most Visited items info from InstantService and forwards them to | 
| +  // the Instant page renderer via the appropriate InstantPage subclass. | 
| +  void UpdateMostVisitedItems(); | 
| + | 
| protected: | 
| // Accessors are made protected for testing purposes. | 
| virtual bool extended_enabled() const; | 
| @@ -301,11 +301,6 @@ class InstantController : public InstantPage::Delegate, | 
|  | 
| Profile* profile() const; | 
|  | 
| -  // Overridden from content::NotificationObserver: | 
| -  virtual void Observe(int type, | 
| -                       const content::NotificationSource& source, | 
| -                       const content::NotificationDetails& details) OVERRIDE; | 
| - | 
| // Overridden from InstantPage::Delegate: | 
| // TODO(shishir): We assume that the WebContent's current RenderViewHost is | 
| // the RenderViewHost being created which is not always true. Fix this. | 
| @@ -339,13 +334,11 @@ class InstantController : public InstantPage::Delegate, | 
|  | 
| // Invoked by the InstantLoader when the Instant page wants to delete a | 
| // Most Visited item. | 
| -  virtual void DeleteMostVisitedItem(InstantRestrictedID most_visited_item_id) | 
| -      OVERRIDE; | 
| +  virtual void DeleteMostVisitedItem(const GURL& url) OVERRIDE; | 
|  | 
| // Invoked by the InstantLoader when the Instant page wants to undo a | 
| // Most Visited deletion. | 
| -  virtual void UndoMostVisitedDeletion(InstantRestrictedID most_visited_item_id) | 
| -      OVERRIDE; | 
| +  virtual void UndoMostVisitedDeletion(const GURL& url) OVERRIDE; | 
|  | 
| // Invoked by the InstantLoader when the Instant page wants to undo all | 
| // Most Visited deletions. | 
| @@ -404,22 +397,7 @@ class InstantController : public InstantPage::Delegate, | 
| // Send the omnibox popup bounds to the page. | 
| void SendPopupBoundsToPage(); | 
|  | 
| -  // Begin listening to change notifications from TopSites and fire off an | 
| -  // initial request for most visited items. | 
| -  void StartListeningToMostVisitedChanges(); | 
| - | 
| -  // Fire off an async request for most visited items to the TopNav code. | 
| -  void RequestMostVisitedItems(); | 
|  | 
| -  // Called when we get new most visited items from the TopNav code, | 
| -  // registered as an async callback.  Parses them and sends them to the | 
| -  // renderer via SendMostVisitedItems. | 
| -  void OnMostVisitedItemsReceived(const history::MostVisitedURLList& data); | 
| - | 
| -  // Sends a collection of MostVisitedItems to the renderer process via | 
| -  // the appropriate InstantPage subclass. | 
| -  void SendMostVisitedItems( | 
| -      const std::vector<InstantMostVisitedItemIDPair>& items); | 
|  | 
| // If possible, tries to mutate |suggestion| to a valid suggestion. Returns | 
| // true if successful. (Note that |suggestion| may be modified even if this | 
| @@ -546,12 +524,6 @@ class InstantController : public InstantPage::Delegate, | 
| // List of events and their timestamps, useful in debugging Instant behaviour. | 
| mutable std::list<std::pair<int64, std::string> > debug_events_; | 
|  | 
| -  // Used for Top Sites async retrieval. | 
| -  base::WeakPtrFactory<InstantController> weak_ptr_factory_; | 
| - | 
| -  // Used to get notifications about Most Visted changes. | 
| -  content::NotificationRegistrar registrar_; | 
| - | 
| DISALLOW_COPY_AND_ASSIGN(InstantController); | 
| }; | 
|  | 
|  |