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

Unified Diff: chrome/browser/android/download/download_manager_service.cc

Issue 2647343005: [Download Home] Fix for 0 seconds remaining (Closed)
Patch Set: qinmin@ comments Created 3 years, 11 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 | « chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/android/download/download_manager_service.cc
diff --git a/chrome/browser/android/download/download_manager_service.cc b/chrome/browser/android/download/download_manager_service.cc
index dac7b572bab372c8e53d1fd76aa808b922840857..d274f2b683fe0b1490625dbc53d70667b43bc35f 100644
--- a/chrome/browser/android/download/download_manager_service.cc
+++ b/chrome/browser/android/download/download_manager_service.cc
@@ -29,6 +29,9 @@ using base::android::ScopedJavaLocalRef;
namespace {
+// The remaining time for a download item if it cannot be calculated.
+long kUnknownRemainingTime = -1;
+
bool ShouldShowDownloadItem(content::DownloadItem* item) {
return !item->IsTemporary();
}
@@ -95,27 +98,22 @@ ScopedJavaLocalRef<jobject> DownloadManagerService::CreateJavaDownloadInfo(
bool has_user_gesture = item->HasUserGesture() || user_initiated;
base::TimeDelta time_delta;
- item->TimeRemaining(&time_delta);
+ bool time_remaining_known = item->TimeRemaining(&time_delta);
std::string original_url = item->GetOriginalUrl().SchemeIs(url::kDataScheme)
? std::string() : item->GetOriginalUrl().spec();
return Java_DownloadInfo_createDownloadInfo(
- env,
- ConvertUTF8ToJavaString(env, item->GetGuid()),
- ConvertUTF8ToJavaString(env,
- item->GetFileNameToReportUser().value()),
+ env, ConvertUTF8ToJavaString(env, item->GetGuid()),
+ ConvertUTF8ToJavaString(env, item->GetFileNameToReportUser().value()),
ConvertUTF8ToJavaString(env, item->GetTargetFilePath().value()),
ConvertUTF8ToJavaString(env, item->GetTabUrl().spec()),
ConvertUTF8ToJavaString(env, item->GetMimeType()),
- item->GetReceivedBytes(),
- item->GetBrowserContext()->IsOffTheRecord(),
- item->GetState(),
- item->PercentComplete(),
- item->IsPaused(),
- has_user_gesture,
- item->CanResume(),
+ item->GetReceivedBytes(), item->GetBrowserContext()->IsOffTheRecord(),
+ item->GetState(), item->PercentComplete(), item->IsPaused(),
+ has_user_gesture, item->CanResume(),
ConvertUTF8ToJavaString(env, original_url),
ConvertUTF8ToJavaString(env, item->GetReferrerUrl().spec()),
- time_delta.InMilliseconds());
+ time_remaining_known ? time_delta.InMilliseconds()
+ : kUnknownRemainingTime);
}
static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& jobj) {
« no previous file with comments | « chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698