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

Unified Diff: ui/app_list/views/contents_view.cc

Issue 307333002: Add search results to experimental app list start page. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: ui/app_list/views/contents_view.cc
diff --git a/ui/app_list/views/contents_view.cc b/ui/app_list/views/contents_view.cc
index 688d8d677981d408e7dab0adbff71b10c883bd54..372a6f0587b6ee4c3c51803f6623fd88b71ea1b0 100644
--- a/ui/app_list/views/contents_view.cc
+++ b/ui/app_list/views/contents_view.cc
@@ -28,8 +28,10 @@ namespace {
// Indexes of interesting views in ViewModel of ContentsView.
const int kIndexAppsContainer = 0;
+// Only one of these views is created depending on whether the experimental app
+// list is enabled.
const int kIndexSearchResults = 1;
-const int kIndexStartPage = 2;
+const int kIndexStartPage = 1;
const int kMinMouseWheelToSwitchPage = 20;
const int kMinScrollToSwitchPage = 20;
@@ -42,11 +44,13 @@ AppsContainerView* GetAppsContainerView(views::ViewModel* model) {
}
SearchResultListView* GetSearchResultListView(views::ViewModel* model) {
+ DCHECK(!app_list::switches::IsExperimentalAppListEnabled());
return static_cast<SearchResultListView*>(
model->view_at(kIndexSearchResults));
}
StartPageView* GetStartPageView(views::ViewModel* model) {
+ DCHECK(app_list::switches::IsExperimentalAppListEnabled());
return static_cast<StartPageView*>(model->view_at(kIndexStartPage));
}
@@ -72,18 +76,18 @@ ContentsView::ContentsView(AppListMainView* app_list_main_view,
AddChildView(apps_container_view_);
view_model_->Add(apps_container_view_, kIndexAppsContainer);
- SearchResultListView* search_results_view = new SearchResultListView(
- app_list_main_view, view_delegate);
- AddChildView(search_results_view);
- view_model_->Add(search_results_view, kIndexSearchResults);
-
if (app_list::switches::IsExperimentalAppListEnabled()) {
start_page_view_ = new StartPageView(app_list_main_view, view_delegate);
AddChildView(start_page_view_);
view_model_->Add(start_page_view_, kIndexStartPage);
+ } else {
+ SearchResultListView* search_results_view =
+ new SearchResultListView(app_list_main_view, view_delegate);
+ AddChildView(search_results_view);
+ view_model_->Add(search_results_view, kIndexSearchResults);
+ GetSearchResultListView(view_model_.get())->SetResults(model->results());
}
- GetSearchResultListView(view_model_.get())->SetResults(model->results());
}
ContentsView::~ContentsView() {
@@ -114,19 +118,22 @@ void ContentsView::SetShowState(ShowState show_state) {
}
void ContentsView::ShowStateChanged() {
- SearchResultListView* results_view =
- GetSearchResultListView(view_model_.get());
- // TODO(xiyuan): Highlight default match instead of the first.
- if (show_state_ == SHOW_SEARCH_RESULTS && results_view->visible())
- results_view->SetSelectedIndex(0);
- results_view->UpdateAutoLaunchState();
-
+ if (app_list::switches::IsExperimentalAppListEnabled()) {
+ if (show_state_ == SHOW_START_PAGE)
+ GetStartPageView(view_model_.get())->Reset();
+ else if (show_state_ == SHOW_SEARCH_RESULTS)
tapted 2014/06/04 06:12:43 Do you need to trigger a start_page-view->results_
calamity 2014/06/12 05:16:56 Done.
+ GetStartPageView(view_model_.get())->ShowSearchResults();
+ } else {
+ SearchResultListView* results_view =
+ GetSearchResultListView(view_model_.get());
+ // TODO(xiyuan): Highlight default match instead of the first.
+ if (show_state_ == SHOW_SEARCH_RESULTS && results_view->visible())
+ results_view->SetSelectedIndex(0);
+ results_view->UpdateAutoLaunchState();
+ }
// Notify parent AppListMainView of show state change.
app_list_main_view_->OnContentsViewShowStateChanged();
- if (show_state_ == SHOW_START_PAGE)
- GetStartPageView(view_model_.get())->Reset();
-
AnimateToIdealBounds();
}
@@ -141,9 +148,7 @@ void ContentsView::CalculateIdealBounds() {
case SHOW_APPS:
incoming_view_index = kIndexAppsContainer;
break;
- case SHOW_SEARCH_RESULTS:
- incoming_view_index = kIndexSearchResults;
- break;
+ case SHOW_SEARCH_RESULTS: // Falls through.
tapted 2014/06/04 06:12:43 nit: might be slightly less weird to leave this th
calamity 2014/06/12 05:16:56 This is gone.
case SHOW_START_PAGE:
incoming_view_index = kIndexStartPage;
break;
@@ -194,10 +199,6 @@ void ContentsView::AnimateToIdealBounds() {
}
}
-void ContentsView::ShowSearchResults(bool show) {
- SetShowState(show ? SHOW_SEARCH_RESULTS : SHOW_APPS);
-}
-
void ContentsView::ShowFolderContent(AppListFolderItem* item) {
apps_container_view_->ShowActiveFolder(item);
}
@@ -210,6 +211,8 @@ void ContentsView::Prerender() {
gfx::Size ContentsView::GetPreferredSize() const {
const gfx::Size container_size = GetAppsContainerView(view_model_.get())->
apps_grid_view()->GetPreferredSize();
+ if (app_list::switches::IsExperimentalAppListEnabled())
+ return container_size;
const gfx::Size results_size =
GetSearchResultListView(view_model_.get())->GetPreferredSize();
tapted 2014/06/04 06:12:43 nit: move this blank line up after the return
calamity 2014/06/12 05:16:56 Also gone.
@@ -228,7 +231,10 @@ bool ContentsView::OnKeyPressed(const ui::KeyEvent& event) {
case SHOW_APPS:
return GetAppsContainerView(view_model_.get())->OnKeyPressed(event);
case SHOW_SEARCH_RESULTS:
- return GetSearchResultListView(view_model_.get())->OnKeyPressed(event);
+ if (app_list::switches::IsExperimentalAppListEnabled())
+ return GetStartPageView(view_model_.get())->OnKeyPressed(event);
+ else
tapted 2014/06/04 06:12:43 nit: no else after a return statement
calamity 2014/06/12 05:16:56 Gone.
+ return GetSearchResultListView(view_model_.get())->OnKeyPressed(event);
case SHOW_START_PAGE:
return GetStartPageView(view_model_.get())->OnKeyPressed(event);
default:

Powered by Google App Engine
This is Rietveld 408576698