1 // Copyright 2014 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.
5 #ifndef ATHENA_HOME_APP_LIST_VIEW_DELEGATE_H_
6 #define ATHENA_HOME_APP_LIST_VIEW_DELEGATE_H_
8 #include "base/macros.h"
9 #include "base/memory/scoped_ptr.h"
10 #include "ui/app_list/app_list_view_delegate.h"
13 class SearchController
;
17 class AppModelBuilder
;
18 class SearchControllerFactory
;
20 class AppListViewDelegate
: public app_list::AppListViewDelegate
{
22 AppListViewDelegate(AppModelBuilder
* model_builder
,
23 SearchControllerFactory
* search_factory
);
24 virtual ~AppListViewDelegate();
27 // Overridden from app_list::AppListViewDelegate:
28 virtual bool ForceNativeDesktop() const override
;
29 virtual void SetProfileByPath(const base::FilePath
& profile_path
) override
;
30 virtual app_list::AppListModel
* GetModel() override
;
31 virtual app_list::SpeechUIModel
* GetSpeechUI() override
;
32 virtual void GetShortcutPathForApp(
33 const std::string
& app_id
,
34 const base::Callback
<void(const base::FilePath
&)>& callback
) override
;
35 virtual void StartSearch() override
;
36 virtual void StopSearch() override
;
37 virtual void OpenSearchResult(app_list::SearchResult
* result
,
39 int event_flags
) override
;
40 virtual void InvokeSearchResultAction(app_list::SearchResult
* result
,
42 int event_flags
) override
;
43 virtual base::TimeDelta
GetAutoLaunchTimeout() override
;
44 virtual void AutoLaunchCanceled() override
;
45 virtual void ViewInitialized() override
;
46 virtual void Dismiss() override
;
47 virtual void ViewClosing() override
;
48 virtual gfx::ImageSkia
GetWindowIcon() override
;
49 virtual void OpenSettings() override
;
50 virtual void OpenHelp() override
;
51 virtual void OpenFeedback() override
;
52 virtual void ToggleSpeechRecognition() override
;
53 virtual void ShowForProfileByPath(
54 const base::FilePath
& profile_path
) override
;
55 virtual views::View
* CreateStartPageWebView(const gfx::Size
& size
) override
;
56 virtual std::vector
<views::View
*> CreateCustomPageWebViews(
57 const gfx::Size
& size
) override
;
58 virtual bool IsSpeechRecognitionEnabled() override
;
59 virtual const Users
& GetUsers() const override
;
60 virtual bool ShouldCenterWindow() const override
;
62 scoped_ptr
<app_list::AppListModel
> model_
;
63 scoped_ptr
<app_list::SpeechUIModel
> speech_ui_
;
65 scoped_ptr
<app_list::SearchController
> search_controller_
;
67 DISALLOW_COPY_AND_ASSIGN(AppListViewDelegate
);
72 #endif // ATHENA_HOME_APP_LIST_VIEW_DELEGATE_H_