Index: ash/shell/shell_delegate_impl.cc |
diff --git a/ash/shell/shell_delegate_impl.cc b/ash/shell/shell_delegate_impl.cc |
index 02c6a27a2d5d75ac1cc1d24515a34ecd9f4ad1d5..fb8f6050dbe470fe175a1e29960f2d9abf65a1c6 100644 |
--- a/ash/shell/shell_delegate_impl.cc |
+++ b/ash/shell/shell_delegate_impl.cc |
@@ -22,6 +22,7 @@ |
#include "base/message_loop/message_loop.h" |
#include "base/strings/utf_string_conversions.h" |
#include "components/user_manager/user_info_impl.h" |
+#include "ui/app_list/app_list_view_delegate.h" |
#include "ui/aura/window.h" |
#include "ui/wm/core/input_method_event_filter.h" |
@@ -212,8 +213,10 @@ content::BrowserContext* ShellDelegateImpl::GetActiveBrowserContext() { |
return browser_context_; |
} |
-app_list::AppListViewDelegate* ShellDelegateImpl::CreateAppListViewDelegate() { |
- return ash::shell::CreateAppListViewDelegate(); |
+app_list::AppListViewDelegate* ShellDelegateImpl::GetAppListViewDelegate() { |
+ if (!app_list_view_delegate_) |
+ app_list_view_delegate_.reset(ash::shell::CreateAppListViewDelegate()); |
+ return app_list_view_delegate_.get(); |
} |
ShelfDelegate* ShellDelegateImpl::CreateShelfDelegate(ShelfModel* model) { |