Index: chrome/browser/search/suggestions/suggestions_source.cc |
diff --git a/chrome/browser/search/suggestions/suggestions_source.cc b/chrome/browser/search/suggestions/suggestions_source.cc |
index cb0e17e3f798953121fa0a182c1efc7573b26710..9f34270ff56c67b26be800120964fa6d9b281981 100644 |
--- a/chrome/browser/search/suggestions/suggestions_source.cc |
+++ b/chrome/browser/search/suggestions/suggestions_source.cc |
@@ -11,13 +11,18 @@ |
#include "base/bind.h" |
#include "base/memory/ref_counted_memory.h" |
#include "base/strings/string16.h" |
+#include "base/strings/string_number_conversions.h" |
#include "base/strings/string_piece.h" |
#include "base/strings/string_util.h" |
+#include "base/strings/stringprintf.h" |
+#include "base/strings/utf_string_conversions.h" |
+#include "base/time/time.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/search/suggestions/suggestions_service_factory.h" |
#include "chrome/common/url_constants.h" |
#include "components/suggestions/suggestions_service.h" |
#include "net/base/escape.h" |
+#include "ui/base/l10n/time_format.h" |
#include "ui/gfx/codec/png_codec.h" |
#include "ui/gfx/image/image_skia.h" |
#include "url/gurl.h" |
@@ -42,9 +47,20 @@ void RenderOutputHtml(const SuggestionsProfile& profile, |
out.push_back(kHtmlBody); |
out.push_back("<h1>Suggestions</h1>\n<ul>"); |
+ int64 now = (base::Time::NowFromSystemTime() - base::Time::UnixEpoch()) |
+ .ToInternalValue(); |
+ |
+ int cutoff = -1; // forces two-value output for TimeFormat |
manzagop (departed)
2014/08/04 19:02:59
Capitalize 'forces'.
gayane -on leave until 09-2017
2014/08/04 19:26:44
skipped because the variable is removed. If you wa
|
size_t size = profile.suggestions_size(); |
for (size_t i = 0; i < size; ++i) { |
const ChromeSuggestion& suggestion = profile.suggestions(i); |
+ |
+ int64 diff = (suggestion.expiry_ts() - now); |
Mathieu
2014/08/04 18:29:21
inline this expression in FromMicroseconds, below
gayane -on leave until 09-2017
2014/08/04 19:26:44
Done.
|
+ base::TimeDelta td =base::TimeDelta::FromMicroseconds(diff); |
Mathieu
2014/08/04 18:29:21
space after =
gayane -on leave until 09-2017
2014/08/04 19:26:44
Done.
|
+ base::string16 formatted = ui::TimeFormat::Detailed( |
+ ui::TimeFormat::Format::FORMAT_DURATION, |
Mathieu
2014/08/04 18:29:21
indent all parameters line by 4 from the previous
gayane -on leave until 09-2017
2014/08/04 19:26:44
Done.
|
+ ui::TimeFormat::Length::LENGTH_LONG, |
+ cutoff, td); |
Mathieu
2014/08/04 18:29:21
directly pass -1, here
gayane -on leave until 09-2017
2014/08/04 19:26:44
Done.
|
std::string line; |
line += "<li><a href=\""; |
line += net::EscapeForHTML(suggestion.url()); |
@@ -57,7 +73,9 @@ void RenderOutputHtml(const SuggestionsProfile& profile, |
line += it->second; |
line += "'>"; |
} |
- line += "</a></li>\n"; |
+ line += "</a> Expires in "; |
+ line += base::UTF16ToUTF8(formatted); |
+ line += "</li>\n"; |
out.push_back(line); |
} |
out.push_back("</ul>"); |