Index: chrome/browser/ui/views/app_list/app_list_controller_win.cc |
diff --git a/chrome/browser/ui/views/app_list/app_list_controller_win.cc b/chrome/browser/ui/views/app_list/app_list_controller_win.cc |
index 96a94709988d0f0d6da92161325b245d561059a9..5599cd211e33347a8922e578d5b69538b72a5a5c 100644 |
--- a/chrome/browser/ui/views/app_list/app_list_controller_win.cc |
+++ b/chrome/browser/ui/views/app_list/app_list_controller_win.cc |
@@ -311,6 +311,7 @@ class AppListController : public AppListServiceImpl { |
virtual void DismissAppList() OVERRIDE; |
virtual bool IsAppListVisible() const OVERRIDE; |
virtual void EnableAppList() OVERRIDE; |
+ virtual gfx::NativeWindow GetAppListWindow() OVERRIDE; |
virtual AppListControllerDelegate* CreateControllerDelegate() OVERRIDE; |
// AppListServiceImpl overrides: |
@@ -409,8 +410,7 @@ void AppListControllerDelegateWin::ViewClosing() { |
} |
gfx::NativeWindow AppListControllerDelegateWin::GetAppListWindow() { |
- app_list::AppListView* view = AppListController::GetInstance()->GetView(); |
- return view ? view->GetWidget()->GetNativeWindow() : NULL; |
+ return AppListController::GetInstance()->GetAppListWindow(); |
} |
gfx::ImageSkia AppListControllerDelegateWin::GetWindowIcon() { |
@@ -483,6 +483,12 @@ AppListController::AppListController() |
AppListController::~AppListController() { |
} |
+gfx::NativeWindow AppListController::GetAppListWindow() { |
+ if (!IsAppListVisible()) |
+ return NULL; |
+ return current_view_ ? current_view_->GetWidget()->GetNativeWindow() : NULL; |
+} |
+ |
AppListControllerDelegate* AppListController::CreateControllerDelegate() { |
return new AppListControllerDelegateWin(); |
} |