| Index: chrome/browser/ui/ash/launcher/arc_app_window_launcher_item_controller.h
|
| diff --git a/chrome/browser/ui/ash/launcher/arc_app_window_launcher_item_controller.h b/chrome/browser/ui/ash/launcher/arc_app_window_launcher_item_controller.h
|
| index 622ea28446effe98436e173f360c730af4e70742..b2b0ef0dd272f26020e4e6324b5932f01f03a03a 100644
|
| --- a/chrome/browser/ui/ash/launcher/arc_app_window_launcher_item_controller.h
|
| +++ b/chrome/browser/ui/ash/launcher/arc_app_window_launcher_item_controller.h
|
| @@ -11,11 +11,15 @@
|
| #include "base/macros.h"
|
| #include "chrome/browser/ui/ash/launcher/app_window_launcher_item_controller.h"
|
|
|
| +class ArcAppWindow;
|
| +class ChromeLauncherController;
|
| +
|
| // Shelf item delegate for ARC app windows.
|
| class ArcAppWindowLauncherItemController
|
| : public AppWindowLauncherItemController {
|
| public:
|
| - explicit ArcAppWindowLauncherItemController(const std::string& arc_app_id);
|
| + ArcAppWindowLauncherItemController(const std::string& arc_app_id,
|
| + ChromeLauncherController* owner);
|
|
|
| ~ArcAppWindowLauncherItemController() override;
|
|
|
| @@ -31,9 +35,23 @@ class ArcAppWindowLauncherItemController
|
| void RemoveTaskId(int task_id);
|
| bool HasAnyTasks() const;
|
|
|
| + void OnWindowChanged(ArcAppWindow* arc_app_window);
|
| +
|
| private:
|
| + // Updates controller icon from the active window. If custom icon of the
|
| + // window exists and decoded then set this custom icon for the controller.
|
| + // If not and controller has custom icon set then update the icon from default
|
| + // AppIconLoader.
|
| + void UpdateIcon(ArcAppWindow* arc_app_window);
|
| +
|
| + // AppWindowLauncherItemController:
|
| + void OnActiveWindowChanged(ui::BaseWindow* active_window) override;
|
| +
|
| std::unordered_set<int> task_ids_;
|
|
|
| + // Unowned property.
|
| + ChromeLauncherController* const owner_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(ArcAppWindowLauncherItemController);
|
| };
|
|
|
|
|