1 // Copyright 2013 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 #include "ui/app_list/test/app_list_test_view_delegate.h"
9 #include "base/callback.h"
10 #include "base/files/file_path.h"
11 #include "ui/app_list/app_list_model.h"
12 #include "ui/app_list/app_list_view_delegate_observer.h"
13 #include "ui/app_list/signin_delegate.h"
14 #include "ui/app_list/test/app_list_test_model.h"
15 #include "ui/gfx/image/image_skia.h"
20 class TestSigninDelegate : public SigninDelegate {
22 TestSigninDelegate() : signed_in_(true) {}
24 void set_signed_in(bool signed_in) { signed_in_ = signed_in; }
26 // SigninDelegate overrides:
27 virtual bool NeedSignin() OVERRIDE { return !signed_in_; }
28 virtual void ShowSignin() OVERRIDE {}
29 virtual void OpenLearnMore() OVERRIDE {}
30 virtual void OpenSettings() OVERRIDE {}
32 virtual base::string16 GetSigninHeading() OVERRIDE {
33 return base::string16();
35 virtual base::string16 GetSigninText() OVERRIDE { return base::string16(); }
36 virtual base::string16 GetSigninButtonText() OVERRIDE {
37 return base::string16();
39 virtual base::string16 GetLearnMoreLinkText() OVERRIDE {
40 return base::string16();
42 virtual base::string16 GetSettingsLinkText() OVERRIDE {
43 return base::string16();
49 DISALLOW_COPY_AND_ASSIGN(TestSigninDelegate);
52 AppListTestViewDelegate::AppListTestViewDelegate()
54 open_search_result_count_(0),
55 test_signin_delegate_(new TestSigninDelegate),
56 model_(new AppListTestModel),
57 speech_ui_(SPEECH_RECOGNITION_OFF) {
60 AppListTestViewDelegate::~AppListTestViewDelegate() {}
62 void AppListTestViewDelegate::SetSignedIn(bool signed_in) {
63 test_signin_delegate_->set_signed_in(signed_in);
64 FOR_EACH_OBSERVER(AppListViewDelegateObserver,
69 bool AppListTestViewDelegate::ForceNativeDesktop() const {
73 AppListModel* AppListTestViewDelegate::GetModel() {
77 SigninDelegate* AppListTestViewDelegate::GetSigninDelegate() {
78 return test_signin_delegate_.get();
81 SpeechUIModel* AppListTestViewDelegate::GetSpeechUI() {
85 void AppListTestViewDelegate::GetShortcutPathForApp(
86 const std::string& app_id,
87 const base::Callback<void(const base::FilePath&)>& callback) {
88 callback.Run(base::FilePath());
91 void AppListTestViewDelegate::OpenSearchResult(SearchResult* result,
94 const AppListModel::SearchResults* results = model_->results();
95 for (size_t i = 0; i < results->item_count(); ++i) {
96 if (results->GetItemAt(i) == result) {
97 open_search_result_counts_[i]++;
101 ++open_search_result_count_;
104 base::TimeDelta AppListTestViewDelegate::GetAutoLaunchTimeout() {
105 return auto_launch_timeout_;
108 void AppListTestViewDelegate::AutoLaunchCanceled() {
109 auto_launch_timeout_ = base::TimeDelta();
112 void AppListTestViewDelegate::Dismiss() {
116 gfx::ImageSkia AppListTestViewDelegate::GetWindowIcon() {
117 return gfx::ImageSkia();
120 content::WebContents* AppListTestViewDelegate::GetStartPageContents() {
124 content::WebContents* AppListTestViewDelegate::GetSpeechRecognitionContents() {
128 const AppListViewDelegate::Users& AppListTestViewDelegate::GetUsers() const {
132 bool AppListTestViewDelegate::ShouldCenterWindow() const {
136 void AppListTestViewDelegate::ReplaceTestModel(int item_count) {
137 model_.reset(new AppListTestModel);
138 model_->PopulateApps(item_count);
141 void AppListTestViewDelegate::AddObserver(
142 AppListViewDelegateObserver* observer) {
143 observers_.AddObserver(observer);
146 void AppListTestViewDelegate::RemoveObserver(
147 AppListViewDelegateObserver* observer) {
148 observers_.RemoveObserver(observer);
152 } // namespace app_list