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

Unified Diff: chrome/browser/history/history_backend.cc

Issue 10060003: Support for different weight-functions for time-slicing. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Added missing #include Created 8 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
« no previous file with comments | « no previous file | chrome/browser/history/history_backend_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/history/history_backend.cc
diff --git a/chrome/browser/history/history_backend.cc b/chrome/browser/history/history_backend.cc
index 59ad541be33234b62e0229b06aa7f576b89f31a8..90a4549f273139d31a65d9b1a2b9524e22733666 100644
--- a/chrome/browser/history/history_backend.cc
+++ b/chrome/browser/history/history_backend.cc
@@ -1282,7 +1282,7 @@ void HistoryBackend::QueryHistoryBasic(URLDatabase* url_db,
// First get all visits.
VisitVector visits;
visit_db->GetVisibleVisitsInRange(options.begin_time, options.end_time,
- options.max_count, &visits);
+ options.max_count, &visits, true);
DCHECK(options.max_count == 0 ||
static_cast<int>(visits.size()) <= options.max_count);
@@ -1482,8 +1482,6 @@ void HistoryBackend::QueryFilteredURLs(
}
std::map<URLID, double> score_map;
- const double kLn2 = 0.6931471805599453;
- base::Time now = base::Time::Now();
for (size_t i = 0; i < visits.size(); ++i) {
URLID segment_id = visits[i].segment_id;
for (VisitID visit_id = visits[i].visit_id; !segment_id && visit_id;) {
@@ -1504,23 +1502,7 @@ void HistoryBackend::QueryFilteredURLs(
}
if (!segment_id)
continue;
- double score = 0.0;
- switch (filter.sorting_order()) {
- case VisitFilter::ORDER_BY_RECENCY: {
- // Decay score by half each week.
- base::TimeDelta time_passed = now - visits[i].visit_time;
- // Clamp to 0 in case time jumps backwards (e.g. due to DST).
- double decay_exponent = std::max(0.0, kLn2 * static_cast<double>(
- time_passed.InMicroseconds()) / base::Time::kMicrosecondsPerWeek);
- score = 1.0 / exp(decay_exponent);
- } break;
- case VisitFilter::ORDER_BY_VISIT_COUNT:
- score = 1.0; // Every visit counts the same.
- break;
- case VisitFilter::ORDER_BY_DURATION_SPENT:
- NOTREACHED() << "Not implemented!";
- break;
- }
+ double score = filter.GetVisitScore(visits[i]);
std::map<URLID, double>::iterator it = score_map.find(visits[i].segment_id);
if (it == score_map.end())
« no previous file with comments | « no previous file | chrome/browser/history/history_backend_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698