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

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

Issue 2269293002: [Download Home] Various fixes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@DOWNLOADS_activity_tests
Patch Set: 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/DownloadUtils.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
index 898adb5bc116ea4205d2aa6def3d77a88c467153..740763797c9f9d5e6a41e556d77229b57e625972 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/download/DownloadUtils.java
@@ -13,6 +13,8 @@ import org.chromium.chrome.R;
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.UrlConstants;
import org.chromium.chrome.browser.tab.Tab;
+import org.chromium.chrome.browser.tabmodel.TabModel.TabLaunchType;
+import org.chromium.chrome.browser.tabmodel.document.TabDelegate;
import org.chromium.chrome.browser.util.IntentUtils;
import org.chromium.content_public.browser.LoadUrlParams;
import org.chromium.ui.base.DeviceFormFactor;
@@ -31,12 +33,18 @@ public class DownloadUtils {
*/
public static void showDownloadManager(Activity activity, Tab tab) {
if (DeviceFormFactor.isTablet(activity)) {
- tab.loadUrl(new LoadUrlParams(UrlConstants.DOWNLOADS_URL));
+ LoadUrlParams params = new LoadUrlParams(UrlConstants.DOWNLOADS_URL);
+ if (tab == null || !tab.isInitialized()) {
+ TabDelegate delegate = new TabDelegate(false);
+ delegate.createNewTab(params, TabLaunchType.FROM_CHROME_UI, null);
+ } else {
+ tab.loadUrl(params);
+ }
} else {
Intent intent = new Intent();
intent.setClass(activity, DownloadActivity.class);
intent.putExtra(IntentHandler.EXTRA_PARENT_COMPONENT, activity.getComponentName());
- intent.putExtra(EXTRA_IS_OFF_THE_RECORD, tab.isIncognito());
+ if (tab != null) intent.putExtra(EXTRA_IS_OFF_THE_RECORD, tab.isIncognito());
activity.startActivity(intent);
}
}

Powered by Google App Engine
This is Rietveld 408576698