app_list_controller_ash.h revision f8ee788a64d60abd8f2d742a5fdedde054ecd910
1// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_UI_ASH_APP_LIST_APP_LIST_CONTROLLER_ASH_H_
6#define CHROME_BROWSER_UI_ASH_APP_LIST_APP_LIST_CONTROLLER_ASH_H_
7
8#include "base/basictypes.h"
9#include "base/compiler_specific.h"
10#include "chrome/browser/ui/app_list/app_list_controller_delegate.h"
11#include "chrome/browser/ui/ash/launcher/chrome_launcher_types.h"
12
13class AppListControllerDelegateAsh : public AppListControllerDelegate {
14 public:
15  AppListControllerDelegateAsh();
16  virtual ~AppListControllerDelegateAsh();
17
18 private:
19  // AppListControllerDelegate overrides:
20  virtual void DismissView() OVERRIDE;
21  virtual gfx::NativeWindow GetAppListWindow() OVERRIDE;
22  virtual gfx::Rect GetAppListBounds() OVERRIDE;
23  virtual gfx::ImageSkia GetWindowIcon() OVERRIDE;
24  virtual bool IsAppPinned(const std::string& extension_id) OVERRIDE;
25  virtual void PinApp(const std::string& extension_id) OVERRIDE;
26  virtual void UnpinApp(const std::string& extension_id) OVERRIDE;
27  virtual Pinnable GetPinnable() OVERRIDE;
28  virtual bool CanDoCreateShortcutsFlow() OVERRIDE;
29  virtual void DoCreateShortcutsFlow(Profile* profile,
30                                     const std::string& extension_id) OVERRIDE;
31  virtual void CreateNewWindow(Profile* profile, bool incognito) OVERRIDE;
32  virtual void ActivateApp(Profile* profile,
33                           const extensions::Extension* extension,
34                           AppListSource source,
35                           int event_flags) OVERRIDE;
36  virtual void LaunchApp(Profile* profile,
37                         const extensions::Extension* extension,
38                         AppListSource source,
39                         int event_flags) OVERRIDE;
40  virtual void ShowForProfileByPath(
41      const base::FilePath& profile_path) OVERRIDE;
42  virtual bool ShouldShowUserIcon() OVERRIDE;
43
44  ash::LaunchSource AppListSourceToLaunchSource(AppListSource source);
45
46  DISALLOW_COPY_AND_ASSIGN(AppListControllerDelegateAsh);
47};
48
49#endif  // CHROME_BROWSER_UI_ASH_APP_LIST_APP_LIST_CONTROLLER_ASH_H_
50