Chromium Code Reviews| Index: ui/app_list/views/search_result_list_view.cc |
| diff --git a/ui/app_list/views/search_result_list_view.cc b/ui/app_list/views/search_result_list_view.cc |
| index 6f2b17622c04f417f91d36ee88e221c531fa0b6e..4fb2daaa6f541f514648c9ed1ace03ed6a55f0af 100644 |
| --- a/ui/app_list/views/search_result_list_view.cc |
| +++ b/ui/app_list/views/search_result_list_view.cc |
| @@ -12,6 +12,7 @@ |
| #include "third_party/skia/include/core/SkColor.h" |
| #include "ui/app_list/app_list_switches.h" |
| #include "ui/app_list/app_list_view_delegate.h" |
| +#include "ui/app_list/search_result.h" |
| #include "ui/app_list/views/search_result_list_view_delegate.h" |
| #include "ui/app_list/views/search_result_view.h" |
| #include "ui/events/event.h" |
| @@ -163,18 +164,22 @@ SearchResultView* SearchResultListView::GetResultViewAt(int index) { |
| } |
| void SearchResultListView::Update() { |
| - last_visible_index_ = 0; |
| + std::vector<SearchResult*> display_results = |
| + AppListModel::GetSearchResultsForDisplayType( |
| + results_, |
| + SearchResult::DISPLAY_LIST, |
| + results_container_->child_count()); |
| + last_visible_index_ = display_results.size() - 1; |
| + |
| for (size_t i = 0; i < static_cast<size_t>(results_container_->child_count()); |
| ++i) { |
| SearchResultView* result_view = GetResultViewAt(i); |
| - if (i < results_->item_count()) { |
| - result_view->SetResult(results_->GetItemAt(i)); |
| - result_view->SetVisible(true); |
| - last_visible_index_ = i; |
| - } else { |
| - result_view->SetResult(NULL); |
| - result_view->SetVisible(false); |
| - } |
| + SearchResult* item = NULL; |
| + if (i < display_results.size()) |
|
Matt Giuca
2014/08/06 08:54:53
I think I prefer the old formulation of:
if (i <
calamity
2014/08/12 05:03:37
Done.
|
| + item = display_results[i]; |
| + |
| + result_view->SetResult(item); |
| + result_view->SetVisible(item != NULL); |
| } |
| if (selected_index_ > last_visible_index_) |
| SetSelectedIndex(last_visible_index_); |