summaryrefslogtreecommitdiffstats
path: root/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
diff options
context:
space:
mode:
authorZhao Wei Liew <zhaoweiliew@gmail.com>2016-10-01 19:36:07 +0800
committerTim Schumacher <timschumi@gmx.de>2019-09-07 20:39:14 +0200
commitab4398884f43cc7592c5c5771c7462972c860c95 (patch)
treea95e40cfdfb984c22668f3f76e4124184ad97d83 /ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
parent19e05457f14c58190ed41aadf12673a309a96de2 (diff)
downloadandroid_packages_providers_DownloadProvider-ab4398884f43cc7592c5c5771c7462972c860c95.tar.gz
android_packages_providers_DownloadProvider-ab4398884f43cc7592c5c5771c7462972c860c95.tar.bz2
android_packages_providers_DownloadProvider-ab4398884f43cc7592c5c5771c7462972c860c95.zip
DownloadProvider: Add support for manual pause/resume
Implement the following features: - Manually pause/resume individual downloads in DownloadManager - Manually pause/resume all downloads in notification Based on commit ecd609e7017b8a69688bbae25c17d878ea305f19. Change-Id: I433cdee2de8b3add0248bbb0a9d02f8da4e5bb38
Diffstat (limited to 'ui/src/com/android/providers/downloads/ui/TrampolineActivity.java')
-rw-r--r--ui/src/com/android/providers/downloads/ui/TrampolineActivity.java16
1 files changed, 15 insertions, 1 deletions
diff --git a/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java b/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
index b3c08131..bc4a3c7d 100644
--- a/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
+++ b/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
@@ -106,14 +106,28 @@ public class TrampolineActivity extends Activity {
Log.d(Constants.TAG, "Found " + id + " with status " + status + ", reason " + reason);
switch (status) {
case DownloadManager.STATUS_PENDING:
- case DownloadManager.STATUS_RUNNING:
sendRunningDownloadClickedBroadcast(id);
finish();
break;
+ case DownloadManager.STATUS_RUNNING:
+ // Pause and resume download manually
+ dm.pauseDownload(id);
+ finish();
+ break;
+
case DownloadManager.STATUS_PAUSED:
if (reason == DownloadManager.PAUSED_QUEUED_FOR_WIFI) {
PausedDialogFragment.show(getFragmentManager(), id, size);
+ } else if (reason == DownloadManager.PAUSED_MANUAL) {
+ // Pause and resume download manually
+ dm.resumeDownload(id);
+ Intent intent = new Intent(Constants.ACTION_RESUME);
+ intent.setClassName("com.android.providers.downloads",
+ "com.android.providers.downloads.DownloadReceiver");
+ intent.putExtra(DownloadManager.EXTRA_DOWNLOAD_ID, id);
+ sendBroadcast(intent);
+ finish();
} else {
sendRunningDownloadClickedBroadcast(id);
finish();