summaryrefslogtreecommitdiffstats
path: root/ui/src
diff options
context:
space:
mode:
authorZhao Wei Liew <zhaoweiliew@gmail.com>2016-10-01 19:36:07 +0800
committerLuca Stefani <luca.stefani.ge1@gmail.com>2018-08-30 15:28:58 +0200
commitc24efa3b43552d60ee1c6c75060da9d2ed218be1 (patch)
tree4dfbf8971c698afd9ccaee2af47febabb9852648 /ui/src
parente26043624c3199ccb8f2c566d0eb7e76bee77f3f (diff)
downloadandroid_packages_providers_DownloadProvider-c24efa3b43552d60ee1c6c75060da9d2ed218be1.tar.gz
android_packages_providers_DownloadProvider-c24efa3b43552d60ee1c6c75060da9d2ed218be1.tar.bz2
android_packages_providers_DownloadProvider-c24efa3b43552d60ee1c6c75060da9d2ed218be1.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')
-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 41d7187a..01f3fcc8 100644
--- a/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
+++ b/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
@@ -94,14 +94,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();