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

Side by Side Diff: ui/app_list/search/mixer.h

Issue 1139493004: Minor refactor to support experiments in AppListMixer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@applist-tokenized-exponential
Patch Set: Fix compile. Created 5 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef UI_APP_LIST_SEARCH_MIXER_H_ 5 #ifndef UI_APP_LIST_SEARCH_MIXER_H_
6 #define UI_APP_LIST_SEARCH_MIXER_H_ 6 #define UI_APP_LIST_SEARCH_MIXER_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 68
69 class Group; 69 class Group;
70 typedef ScopedVector<Group> Groups; 70 typedef ScopedVector<Group> Groups;
71 71
72 // Publishes the given |new_results| to |ui_results|, deleting any existing 72 // Publishes the given |new_results| to |ui_results|, deleting any existing
73 // results that are not in |new_results|. Results that already exist in 73 // results that are not in |new_results|. Results that already exist in
74 // |ui_results| are reused to avoid flickering caused by icon reload. 74 // |ui_results| are reused to avoid flickering caused by icon reload.
75 static void Publish(const SortedResults& results, 75 static void Publish(const SortedResults& results,
76 AppListModel::SearchResults* ui_results); 76 AppListModel::SearchResults* ui_results);
77 77
78 // Removes duplicates from |results|. 78 // Removes entries from |results| with duplicate IDs. When two or more results
79 // have the same ID, the earliest one in the |results| list is kept.
80 // NOTE: This is not necessarily the one with the highest *score*, as
81 // |results| may not have been sorted yet.
79 static void RemoveDuplicates(SortedResults* results); 82 static void RemoveDuplicates(SortedResults* results);
80 83
81 void FetchResults(bool is_voice_query, const KnownResults& known_results); 84 void FetchResults(bool is_voice_query, const KnownResults& known_results);
82 85
83 AppListModel::SearchResults* ui_results_; // Not owned. 86 AppListModel::SearchResults* ui_results_; // Not owned.
84 Groups groups_; 87 Groups groups_;
85 88
86 // The ID of the omnibox group. The group with this ID will be treated 89 // The ID of the omnibox group. The group with this ID will be treated
87 // specially by the Mixer. 90 // specially by the Mixer.
88 // TODO(mgiuca): Omnibox group should not be treated specially. 91 // TODO(mgiuca): Omnibox group should not be treated specially.
89 size_t omnibox_group_ = 0; 92 size_t omnibox_group_ = 0;
90 // Whether |omnibox_group_| has been set. 93 // Whether |omnibox_group_| has been set.
91 bool has_omnibox_group_ = false; 94 bool has_omnibox_group_ = false;
92 95
93 DISALLOW_COPY_AND_ASSIGN(Mixer); 96 DISALLOW_COPY_AND_ASSIGN(Mixer);
94 }; 97 };
95 98
96 } // namespace app_list 99 } // namespace app_list
97 100
98 #endif // UI_APP_LIST_SEARCH_MIXER_H_ 101 #endif // UI_APP_LIST_SEARCH_MIXER_H_
OLDNEW
« no previous file with comments | « chrome/browser/ui/app_list/search/search_controller_factory.cc ('k') | ui/app_list/search/mixer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698