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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java

Issue 2269293002: [Download Home] Various fixes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@DOWNLOADS_activity_tests
Patch Set: Fullscreen activity Created 4 years, 4 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/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java
index 673b75ddd3e3fa9a8e69edd11ec248652df1a11f..24fdbe65a8ac3cd646b19a6d85c1b3404cebb3dd 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadManagerService.java
@@ -4,6 +4,7 @@
package org.chromium.chrome.browser.download;
+import android.app.Activity;
import android.app.DownloadManager;
import android.content.ActivityNotFoundException;
import android.content.BroadcastReceiver;
@@ -21,6 +22,8 @@ import android.text.TextUtils;
import android.util.LongSparseArray;
import android.util.Pair;
+import org.chromium.base.ActivityState;
+import org.chromium.base.ApplicationStatus;
import org.chromium.base.ContextUtils;
import org.chromium.base.Log;
import org.chromium.base.ObserverList;
@@ -30,6 +33,8 @@ import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.SuppressFBWarnings;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.R;
+import org.chromium.chrome.browser.ChromeActivity;
+import org.chromium.chrome.browser.ChromeFeatureList;
import org.chromium.chrome.browser.download.ui.BackendProvider;
import org.chromium.chrome.browser.download.ui.DownloadHistoryAdapter;
import org.chromium.chrome.browser.externalnav.ExternalNavigationDelegateImpl;
@@ -1069,6 +1074,21 @@ public class DownloadManagerService extends BroadcastReceiver implements
* @param context Application context
*/
protected static void openDownloadsPage(Context context) {
+ if (!ChromeFeatureList.isEnabled(ChromeFeatureList.SYSTEM_DOWNLOAD_MANAGER)) {
+ // Try to open Download Home.
+ Activity lastActivity = ApplicationStatus.getLastTrackedFocusedActivity();
+ if (lastActivity instanceof ChromeActivity) {
+ int state = ApplicationStatus.getStateForActivity(lastActivity);
+ if (state >= ActivityState.CREATED && state <= ActivityState.RESUMED) {
+ ChromeActivity chromeActivity = (ChromeActivity) lastActivity;
+ DownloadUtils.showDownloadManager(
+ lastActivity, chromeActivity.getActivityTab());
+ return;
+ }
+ }
+ }
+
+ // Open the Android Download Manager.
Intent pageView = new Intent(DownloadManager.ACTION_VIEW_DOWNLOADS);
pageView.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
try {

Powered by Google App Engine
This is Rietveld 408576698