diff options
author | calamity@chromium.org <calamity@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-07 06:43:09 +0000 |
---|---|---|
committer | calamity@chromium.org <calamity@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-07-07 06:43:09 +0000 |
commit | e5275409c2368be1c68d0489d99c23a7c775da50 (patch) | |
tree | be40f12407352f91716122b2f99753d04ab32c2d /ui/app_list | |
parent | a93defc444fb83335c918dabb8f14a7b3547b83c (diff) | |
download | chromium_src-e5275409c2368be1c68d0489d99c23a7c775da50.zip chromium_src-e5275409c2368be1c68d0489d99c23a7c775da50.tar.gz chromium_src-e5275409c2368be1c68d0489d99c23a7c775da50.tar.bz2 |
Fix focus issue in the experimental app list.
Fix an issue where the experimental app list would steal focus
after being dismissed due to the app list reset code.
This CL is the experimental app list's equivalent fix for the
focus issue fixed by r279585.
BUG=387559
Review URL: https://codereview.chromium.org/366203003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@281498 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/app_list')
-rw-r--r-- | ui/app_list/views/start_page_view.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/ui/app_list/views/start_page_view.cc b/ui/app_list/views/start_page_view.cc index c81fbb9..affdc2d 100644 --- a/ui/app_list/views/start_page_view.cc +++ b/ui/app_list/views/start_page_view.cc @@ -19,6 +19,7 @@ #include "ui/views/controls/label.h" #include "ui/views/controls/textfield/textfield.h" #include "ui/views/layout/box_layout.h" +#include "ui/views/widget/widget.h" namespace app_list { @@ -196,7 +197,9 @@ void StartPageView::SetShowState(ShowState show_state) { instant_container_->SetVisible(show_state == SHOW_START_PAGE); results_view_->SetVisible(show_state == SHOW_SEARCH_RESULTS); - if (show_state == SHOW_START_PAGE) + // This can be called when the app list is closing (widget is invisible). In + // that case, do not steal focus from other elements. + if (show_state == SHOW_START_PAGE && GetWidget() && GetWidget()->IsVisible()) search_box_view_->search_box()->RequestFocus(); if (show_state_ == show_state) |