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

Side by Side Diff: chrome/browser/ui/app_list/app_list_view_delegate.cc

Issue 20656002: Add profile selector menu to app list. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rework Created 7 years, 5 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/ui/app_list/app_list_view_delegate.h" 5 #include "chrome/browser/ui/app_list/app_list_view_delegate.h"
6 6
7 #include "base/callback.h" 7 #include "base/callback.h"
8 #include "base/files/file_path.h" 8 #include "base/files/file_path.h"
9 #include "chrome/browser/browser_process.h" 9 #include "chrome/browser/browser_process.h"
10 #include "chrome/browser/extensions/extension_service.h" 10 #include "chrome/browser/extensions/extension_service.h"
11 #include "chrome/browser/feedback/feedback_util.h" 11 #include "chrome/browser/feedback/feedback_util.h"
12 #include "chrome/browser/profiles/avatar_menu_model.h"
12 #include "chrome/browser/profiles/profile_manager.h" 13 #include "chrome/browser/profiles/profile_manager.h"
13 #include "chrome/browser/ui/app_list/app_list_controller_delegate.h" 14 #include "chrome/browser/ui/app_list/app_list_controller_delegate.h"
14 #include "chrome/browser/ui/app_list/apps_model_builder.h" 15 #include "chrome/browser/ui/app_list/apps_model_builder.h"
15 #include "chrome/browser/ui/app_list/chrome_app_list_item.h" 16 #include "chrome/browser/ui/app_list/chrome_app_list_item.h"
16 #include "chrome/browser/ui/app_list/chrome_signin_delegate.h" 17 #include "chrome/browser/ui/app_list/chrome_signin_delegate.h"
17 #include "chrome/browser/ui/app_list/search/search_controller.h" 18 #include "chrome/browser/ui/app_list/search/search_controller.h"
18 #include "chrome/browser/ui/browser_finder.h" 19 #include "chrome/browser/ui/browser_finder.h"
19 #include "chrome/browser/ui/chrome_pages.h" 20 #include "chrome/browser/ui/chrome_pages.h"
20 #include "chrome/browser/ui/host_desktop.h" 21 #include "chrome/browser/ui/host_desktop.h"
21 #include "chrome/browser/ui/web_applications/web_app_ui.h" 22 #include "chrome/browser/ui/web_applications/web_app_ui.h"
(...skipping 23 matching lines...) Expand all
45 content::BrowserThread::FILE, 46 content::BrowserThread::FILE,
46 FROM_HERE, 47 FROM_HERE,
47 base::Bind(web_app::CreateShortcutInWebAppDir, app_data_dir, info), 48 base::Bind(web_app::CreateShortcutInWebAppDir, app_data_dir, info),
48 callback); 49 callback);
49 } 50 }
50 #endif 51 #endif
51 52
52 } // namespace 53 } // namespace
53 54
54 AppListViewDelegate::AppListViewDelegate(AppListControllerDelegate* controller, 55 AppListViewDelegate::AppListViewDelegate(AppListControllerDelegate* controller,
55 Profile* profile) 56 Profile* profile,
57 AvatarMenuModel* avatar_menu_model)
56 : controller_(controller), 58 : controller_(controller),
57 profile_(profile) {} 59 profile_(profile),
60 avatar_menu_model_(avatar_menu_model) {}
58 61
59 AppListViewDelegate::~AppListViewDelegate() {} 62 AppListViewDelegate::~AppListViewDelegate() {}
60 63
61 void AppListViewDelegate::SetModel(app_list::AppListModel* model) { 64 void AppListViewDelegate::SetModel(app_list::AppListModel* model) {
62 if (model) { 65 if (model) {
63 apps_builder_.reset(new AppsModelBuilder(profile_, 66 apps_builder_.reset(new AppsModelBuilder(profile_,
64 model->apps(), 67 model->apps(),
65 controller_.get())); 68 controller_.get()));
66 apps_builder_->Build(); 69 apps_builder_->Build();
67 70
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
202 } 205 }
203 206
204 void AppListViewDelegate::OpenFeedback() { 207 void AppListViewDelegate::OpenFeedback() {
205 chrome::HostDesktopType desktop = chrome::GetHostDesktopTypeForNativeWindow( 208 chrome::HostDesktopType desktop = chrome::GetHostDesktopTypeForNativeWindow(
206 controller_->GetAppListWindow()); 209 controller_->GetAppListWindow());
207 Browser* browser = chrome::FindOrCreateTabbedBrowser( 210 Browser* browser = chrome::FindOrCreateTabbedBrowser(
208 profile_, desktop); 211 profile_, desktop);
209 chrome::ShowFeedbackPage(browser, std::string(), 212 chrome::ShowFeedbackPage(browser, std::string(),
210 chrome::kAppLauncherCategoryTag); 213 chrome::kAppLauncherCategoryTag);
211 } 214 }
215
216 std::vector<AvatarMenuItemModel> AppListViewDelegate::GetAvatarMenuItems() {
217 std::vector<AvatarMenuItemModel> items;
218 for (size_t i = 0; i < avatar_menu_model_->GetNumberOfItems(); ++i) {
219 items.push_back(avatar_menu_model_->GetItemAt(i));
220 }
221 return items;
222 }
223
224 void AppListViewDelegate::ShowForProfileAtIndex(size_t index) {
225 controller_->ShowForProfileAtIndex(index);
226 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698