Index: chrome/browser/ui/gtk/global_history_menu.h |
diff --git a/chrome/browser/ui/gtk/global_history_menu.h b/chrome/browser/ui/gtk/global_history_menu.h |
deleted file mode 100644 |
index ccdde343acad9a7bd453b2a53a9a922fa7dabcbd..0000000000000000000000000000000000000000 |
--- a/chrome/browser/ui/gtk/global_history_menu.h |
+++ /dev/null |
@@ -1,124 +0,0 @@ |
-// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#ifndef CHROME_BROWSER_UI_GTK_GLOBAL_HISTORY_MENU_H_ |
-#define CHROME_BROWSER_UI_GTK_GLOBAL_HISTORY_MENU_H_ |
- |
-#include <map> |
- |
-#include "base/compiler_specific.h" |
-#include "chrome/browser/common/cancelable_request.h" |
-#include "chrome/browser/history/history_types.h" |
-#include "chrome/browser/sessions/tab_restore_service.h" |
-#include "chrome/browser/sessions/tab_restore_service_observer.h" |
-#include "chrome/browser/ui/gtk/global_menu_owner.h" |
-#include "content/public/browser/notification_observer.h" |
-#include "content/public/browser/notification_registrar.h" |
-#include "ui/base/gtk/gtk_signal.h" |
- |
-class Browser; |
-class Profile; |
- |
-namespace history { |
-class TopSites; |
-} |
- |
-typedef struct _GdkPixbuf GdkPixbuf; |
- |
-// Controls the History menu. |
-class GlobalHistoryMenu : public GlobalMenuOwner, |
- public content::NotificationObserver, |
- public TabRestoreServiceObserver { |
- public: |
- explicit GlobalHistoryMenu(Browser* browser); |
- virtual ~GlobalHistoryMenu(); |
- |
- // Takes the history menu we need to modify based on the tab restore/most |
- // visited state. |
- virtual void Init(GtkWidget* history_menu, |
- GtkWidget* history_menu_item) OVERRIDE; |
- |
- private: |
- class HistoryItem; |
- struct ClearMenuClosure; |
- struct GetIndexClosure; |
- |
- typedef std::map<GtkWidget*, HistoryItem*> MenuItemToHistoryMap; |
- |
- // Sends a message off to History for data. |
- void GetTopSitesData(); |
- |
- // Callback to receive data requested from GetTopSitesData(). |
- void OnTopSitesReceived(const history::MostVisitedURLList& visited_list); |
- |
- // Returns the currently existing HistoryItem associated with |
- // |menu_item|. Can return NULL. |
- HistoryItem* HistoryItemForMenuItem(GtkWidget* menu_item); |
- |
- // Returns whether there's a valid HistoryItem representation of |entry|. |
- bool HasValidHistoryItemForTab(const TabRestoreService::Tab& entry); |
- |
- // Creates a HistoryItem from the data in |entry|. |
- HistoryItem* HistoryItemForTab(const TabRestoreService::Tab& entry); |
- |
- // Creates a menu item form |item| and inserts it in |menu| at |index|. |
- GtkWidget* AddHistoryItemToMenu(HistoryItem* item, |
- GtkWidget* menu, |
- int tag, |
- int index); |
- |
- // Find the first index of the item in |menu| with the tag |tag_id|. |
- int GetIndexOfMenuItemWithTag(GtkWidget* menu, int tag_id); |
- |
- // This will remove all menu items in |menu| with |tag| as their tag. This |
- // clears state about HistoryItems* that we keep to prevent that data from |
- // going stale. That's why this method recurses into its child menus. |
- void ClearMenuSection(GtkWidget* menu, int tag); |
- |
- // Implementation detail of GetIndexOfMenuItemWithTag. |
- static void GetIndexCallback(GtkWidget* widget, GetIndexClosure* closure); |
- |
- // Implementation detail of ClearMenuSection. |
- static void ClearMenuCallback(GtkWidget* widget, ClearMenuClosure* closure); |
- |
- // content::NotificationObserver: |
- virtual void Observe(int type, |
- const content::NotificationSource& source, |
- const content::NotificationDetails& details) OVERRIDE; |
- |
- // For TabRestoreServiceObserver |
- virtual void TabRestoreServiceChanged(TabRestoreService* service) OVERRIDE; |
- virtual void TabRestoreServiceDestroyed(TabRestoreService* service) OVERRIDE; |
- |
- CHROMEGTK_CALLBACK_0(GlobalHistoryMenu, void, OnRecentlyClosedItemActivated); |
- |
- // Listen for the first menu show command so we can then connect to the |
- // TabRestoreService. With how the global menus work, I'd prefer to register |
- // with the TabRestoreService as soon as we're constructed, but this breaks |
- // unit tests which test the service (because they force different |
- // construction ordering while us connecting to the TabRestoreService loads |
- // data now!) |
- CHROMEGTK_CALLBACK_0(GlobalHistoryMenu, void, OnMenuActivate); |
- |
- Browser* browser_; |
- Profile* profile_; |
- |
- // The history menu. We keep this since we need to rewrite parts of it |
- // periodically. |
- GtkWidget* history_menu_; |
- |
- history::TopSites* top_sites_; |
- |
- TabRestoreService* tab_restore_service_; // weak |
- |
- // A mapping from GtkMenuItems to HistoryItems that maintain data. |
- MenuItemToHistoryMap menu_item_history_map_; |
- |
- content::NotificationRegistrar registrar_; |
- |
- // For callbacks which may be run after destruction. |
- base::WeakPtrFactory<GlobalHistoryMenu> weak_ptr_factory_; |
-}; |
- |
-#endif // CHROME_BROWSER_UI_GTK_GLOBAL_HISTORY_MENU_H_ |