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

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

Issue 2061063002: Add UMA for studying download cancellation reasons (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@2743
Patch Set: Created 4 years, 6 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
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 ab9b1fd7c28f3494ebedce06e5697fdd533d14fe..0036edc7d356a9d6469256d38d9b0d853c98df89 100644
--- a/chrome/browser/android/download/download_manager_service.cc
+++ b/chrome/browser/android/download/download_manager_service.cc
@@ -20,6 +20,7 @@
using base::android::JavaParamRef;
using base::android::ConvertJavaStringToUTF8;
using base::android::ConvertUTF8ToJavaString;
+using content::DownloadControllerAndroid;
// static
bool DownloadManagerService::RegisterDownloadManagerService(JNIEnv* env) {
@@ -43,7 +44,7 @@ DownloadManagerService::DownloadManagerService(
jobject obj)
: java_ref_(env, obj),
is_history_query_complete_(false) {
- content::DownloadControllerAndroid::Get()->SetDefaultDownloadFileName(
+ DownloadControllerAndroid::Get()->SetDefaultDownloadFileName(
l10n_util::GetStringUTF8(IDS_DEFAULT_DOWNLOAD_FILENAME));
}
@@ -75,8 +76,14 @@ void DownloadManagerService::CancelDownload(
JNIEnv* env,
jobject obj,
const JavaParamRef<jstring>& jdownload_guid,
- bool is_off_the_record) {
+ bool is_off_the_record,
+ bool is_notification_dismissed) {
std::string download_guid = ConvertJavaStringToUTF8(env, jdownload_guid);
+
+ DownloadControllerAndroid::RecordDownloadCancelReason(
+ is_notification_dismissed ?
+ DownloadControllerAndroid::CANCEL_REASON_NOTIFICATION_DISMISSED :
+ DownloadControllerAndroid::CANCEL_REASON_ACTION_BUTTON);
// Incognito download can only be cancelled in the same browser session, no
// need to wait for download history.
if (is_off_the_record) {
@@ -191,6 +198,8 @@ void DownloadManagerService::OnResumptionFailed(
base::MessageLoop::current()->PostTask(
FROM_HERE, base::Bind(&DownloadManagerService::OnResumptionFailedInternal,
base::Unretained(this), download_guid));
+ DownloadControllerAndroid::RecordDownloadCancelReason(
+ DownloadControllerAndroid::CANCEL_REASON_NOT_CANCELED);
}
void DownloadManagerService::OnResumptionFailedInternal(

Powered by Google App Engine
This is Rietveld 408576698