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

Unified Diff: chrome/browser/ui/ash/launcher/chrome_launcher_controller.h

Issue 23606016: Refactor LauncherItemController and LauncherItemDelegate (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix for LauncherTest and observing LauncherModel in DelegateManager Created 7 years, 3 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
Index: chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
diff --git a/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h b/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
index f26e21907bd30452b0a32d7a41667ae3adea4fbc..b22c554ad421de567a59f99d52ced6a84727bde5 100644
--- a/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
+++ b/chrome/browser/ui/ash/launcher/chrome_launcher_controller.h
@@ -75,7 +75,6 @@ typedef ScopedVector<ChromeLauncherAppMenuItem> ChromeLauncherAppMenuItems;
// TODO(simon.hong81): Move LauncherItemDelegate out from
// ChromeLauncherController and makes separate subclass with it.
class ChromeLauncherController : public ash::LauncherDelegate,
- public ash::LauncherItemDelegate,
public ash::LauncherModelObserver,
public ash::ShellObserver,
public ash::DisplayController::Observer,
@@ -278,18 +277,6 @@ class ChromeLauncherController : public ash::LauncherDelegate,
virtual bool IsAppPinned(const std::string& app_id) OVERRIDE;
virtual void UnpinAppWithID(const std::string& app_id) OVERRIDE;
- // ash::LauncherItemDelegate overrides:
- virtual void ItemSelected(const ash::LauncherItem& item,
- const ui::Event& event) OVERRIDE;
- virtual string16 GetTitle(const ash::LauncherItem& item) OVERRIDE;
- virtual ui::MenuModel* CreateContextMenu(
- const ash::LauncherItem& item, aura::RootWindow* root) OVERRIDE;
- virtual ash::LauncherMenuModel* CreateApplicationMenu(
- const ash::LauncherItem& item,
- int event_flags) OVERRIDE;
- virtual bool IsDraggable(const ash::LauncherItem& item) OVERRIDE;
- virtual bool ShouldShowTooltip(const ash::LauncherItem& item) OVERRIDE;
-
// ash::LauncherModelObserver overrides:
virtual void LauncherItemAdded(int index) OVERRIDE;
virtual void LauncherItemRemoved(int index, ash::LauncherID id) OVERRIDE;
@@ -364,6 +351,8 @@ class ChromeLauncherController : public ash::LauncherDelegate,
BrowserShortcutLauncherItemController*
GetBrowserShortcutLauncherItemController();
+ LauncherItemController* GetLauncherItemController(const ash::LauncherID id);
+
protected:
// Creates a new app shortcut item and controller on the launcher at |index|.
// Use kInsertItemAtEnd to add a shortcut as the last item.
@@ -461,8 +450,13 @@ class ChromeLauncherController : public ash::LauncherDelegate,
void MoveItemWithoutPinnedStateChangeNotification(int source_index,
int target_index);
- // Register LauncherItemDelegate.
- void RegisterLauncherItemDelegate();
+ // Register LauncherItemDelegate |item_delegate| for |id|.
+ void RegisterLauncherItemDelegate(ash::LauncherID id,
+ ash::LauncherItemDelegate* item_delegate);
+
+ // Update LauncherItemDelegate for |id| with |item_delegate|.
+ void UpdateLauncherItemDelegate(ash::LauncherID id,
+ ash::LauncherItemDelegate* item_delegate);
static ChromeLauncherController* instance_;
@@ -500,9 +494,6 @@ class ChromeLauncherController : public ash::LauncherDelegate,
// Launchers that are currently being observed.
std::set<ash::Launcher*> launchers_;
- // The owned browser shortcut item.
- scoped_ptr<BrowserShortcutLauncherItemController> browser_item_controller_;
-
// The owned browser status monitor.
scoped_ptr<BrowserStatusMonitor> browser_status_monitor_;

Powered by Google App Engine
This is Rietveld 408576698