Chromium Code Reviews| Index: chrome/browser/ui/views/aura/chrome_shell_delegate.cc |
| diff --git a/chrome/browser/ui/views/aura/chrome_shell_delegate.cc b/chrome/browser/ui/views/aura/chrome_shell_delegate.cc |
| index 7750f8cc94c6964421c4316e8e17b0283682337f..d380a2e158d07e7adb7910970eb123ba733875a8 100644 |
| --- a/chrome/browser/ui/views/aura/chrome_shell_delegate.cc |
| +++ b/chrome/browser/ui/views/aura/chrome_shell_delegate.cc |
| @@ -4,12 +4,17 @@ |
| #include "chrome/browser/ui/views/aura/chrome_shell_delegate.h" |
| +#include "base/command_line.h" |
| #include "chrome/browser/profiles/profile_manager.h" |
| #include "chrome/browser/ui/browser.h" |
| #include "chrome/browser/ui/views/aura/app_list_window.h" |
| +#include "chrome/browser/ui/views/aura/app_list/app_list_model.h" |
| +#include "chrome/browser/ui/views/aura/app_list/app_list_view_delegate.h" |
| #include "chrome/browser/ui/views/aura/status_area_host_aura.h" |
| #include "chrome/browser/ui/views/frame/browser_view.h" |
| +#include "ui/aura/aura_switches.h" |
| #include "ui/aura/window.h" |
| +#include "ui/aura_shell/app_list/app_list_view.h" |
| #include "ui/aura_shell/launcher/launcher_types.h" |
| #include "ui/aura_shell/window_util.h" |
| @@ -60,8 +65,20 @@ views::Widget* ChromeShellDelegate::CreateStatusArea() { |
| void ChromeShellDelegate::RequestAppListWidget( |
| const gfx::Rect& bounds, |
| const SetWidgetCallback& callback) { |
| - // AppListWindow deletes itself when closed. |
| - new AppListWindow(bounds, callback); |
| + // AppListWindow and AppListView deletes itself when closed. |
| + if (CommandLine::ForCurrentProcess()->HasSwitch( |
| + switches::kAuraViewsAppList)) { |
| + scoped_ptr<AppListModel> model( |
| + new AppListModel(ProfileManager::GetDefaultProfile())); |
| + model->Init(); |
| + |
| + new aura_shell::AppListView(model.release(), |
|
Ben Goodger (Google)
2011/12/20 19:07:18
can you just return the model instance and do this
xiyuan
2011/12/20 21:55:50
Done.
|
| + new AppListViewDelegate, |
| + bounds, |
| + callback); |
| + } else { |
| + new AppListWindow(bounds, callback); |
| + } |
| } |
| void ChromeShellDelegate::LauncherItemClicked( |