Index: ui/app_list/views/start_page_view.cc |
diff --git a/ui/app_list/views/start_page_view.cc b/ui/app_list/views/start_page_view.cc |
index 0bac15b7b2ab6f8edd0963a7683af447347acb52..8df6a7a3d0ba7ed94ab74f39f54d75190fb7a4c6 100644 |
--- a/ui/app_list/views/start_page_view.cc |
+++ b/ui/app_list/views/start_page_view.cc |
@@ -190,7 +190,7 @@ int StartPageView::StartPageTilesContainer::Update() { |
delete search_result_tile_views_[i]; |
search_result_tile_views_.clear(); |
RemoveChildView(all_apps_button_); |
- CreateAppsGrid(std::min(kNumStartPageTiles, display_results.size())); |
+ CreateAppsGrid(display_results.size()); |
} |
// Update the tile item results. |
@@ -211,10 +211,10 @@ int StartPageView::StartPageTilesContainer::Update() { |
void StartPageView::StartPageTilesContainer::UpdateSelectedIndex( |
int old_selected, |
int new_selected) { |
- if (old_selected >= 0) |
+ if (old_selected >= 0 && old_selected < num_results()) |
GetTileItemView(old_selected)->SetSelected(false); |
- if (new_selected >= 0) |
+ if (new_selected >= 0 && new_selected < num_results()) |
GetTileItemView(new_selected)->SetSelected(true); |
} |
@@ -360,8 +360,8 @@ void StartPageView::OnShown() { |
custom_page_view->SetVisible( |
app_list_main_view_->ShouldShowCustomLauncherPage()); |
} |
- tiles_container_->Update(); |
tiles_container_->ClearSelectedIndex(); |
+ tiles_container_->set_num_results(tiles_container_->Update()); |
custom_launcher_page_background_->SetSelected(false); |
} |