summaryrefslogtreecommitdiffstats
path: root/ui
diff options
context:
space:
mode:
authorZhao Wei Liew <zhaoweiliew@gmail.com>2016-10-01 19:36:07 +0800
committerMichael Bestas <mikeioannina@gmail.com>2016-12-30 22:22:07 +0200
commitb7d97dbaacfef3600db0c34a84570625979c4aa1 (patch)
tree42034a0eb32f58e0a0da843cf44428fd9d1fab80 /ui
parent963a851d0b9bb13714caf875279e7d5473725843 (diff)
downloadandroid_packages_providers_DownloadProvider-b7d97dbaacfef3600db0c34a84570625979c4aa1.tar.gz
android_packages_providers_DownloadProvider-b7d97dbaacfef3600db0c34a84570625979c4aa1.tar.bz2
android_packages_providers_DownloadProvider-b7d97dbaacfef3600db0c34a84570625979c4aa1.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')
-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 5d4e7a45..98504489 100644
--- a/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
+++ b/ui/src/com/android/providers/downloads/ui/TrampolineActivity.java
@@ -81,14 +81,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();