Commit 439ada38 authored by Jinsuk Kim's avatar Jinsuk Kim Committed by Commit Bot

Android: Package-private Tab.getThemedApplicationContext

This CL turns the method to private-package after refactoring
the remaining callsites outside the tab package.

- ChromeDownloadDelegate: the context got left unused after going
    changes. Just removed it from the parameter.
- ReparentingTask: Passed to a new Intent, which was for getting
    its package name. So doesn't have to be ThemedApplicationContext.
    The underlying application context works as good.

Bug: 995903
Change-Id: Ic21d8f98aba3e8d6a557c0cbdedb6916f86f87e3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1866494
Commit-Queue: Jinsuk Kim <jinsukkim@chromium.org>
Reviewed-by: default avatarDavid Trainor <dtrainor@chromium.org>
Cr-Commit-Position: refs/heads/master@{#709355}
parent 8175fca0
......@@ -6,7 +6,6 @@ package org.chromium.chrome.browser.download;
import android.Manifest.permission;
import android.app.DownloadManager;
import android.content.Context;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Environment;
......@@ -50,17 +49,13 @@ public class ChromeDownloadDelegate implements UserData {
"text/plain", "application/octet-stream", "binary/octet-stream", "octet/stream",
"application/download", "application/force-download", "application/unknown"));
// The application context.
private final Context mContext;
private Tab mTab;
public static ChromeDownloadDelegate from(Tab tab) {
UserDataHost host = tab.getUserDataHost();
ChromeDownloadDelegate controller = host.getUserData(USER_DATA_KEY);
return controller == null
? host.setUserData(USER_DATA_KEY,
new ChromeDownloadDelegate(tab.getThemedApplicationContext(), tab))
: controller;
return controller == null ? host.setUserData(USER_DATA_KEY, new ChromeDownloadDelegate(tab))
: controller;
}
/**
......@@ -68,8 +63,7 @@ public class ChromeDownloadDelegate implements UserData {
* @param tab The corresponding tab instance.
*/
@VisibleForTesting
ChromeDownloadDelegate(Context context, Tab tab) {
mContext = context;
ChromeDownloadDelegate(Tab tab) {
mTab = tab;
}
......@@ -280,8 +274,4 @@ public class ChromeDownloadDelegate implements UserData {
}
return true;
}
protected Context getContext() {
return mContext;
}
}
......@@ -255,7 +255,7 @@ public class Tab {
return mUserDataHost;
}
public Context getThemedApplicationContext() {
Context getThemedApplicationContext() {
return mThemedApplicationContext;
}
......
......@@ -77,7 +77,7 @@ public class ReparentingTask implements UserData {
Runnable finalizeCallback) {
if (intent == null) intent = new Intent();
if (intent.getComponent() == null) {
intent.setClass(mTab.getThemedApplicationContext(), ChromeLauncherActivity.class);
intent.setClass(mTab.getApplicationContext(), ChromeLauncherActivity.class);
}
intent.setAction(Intent.ACTION_VIEW);
if (TextUtils.isEmpty(intent.getDataString())) intent.setData(Uri.parse(mTab.getUrl()));
......
......@@ -4,8 +4,6 @@
package org.chromium.chrome.browser.download;
import android.content.Context;
import android.support.test.InstrumentationRegistry;
import android.support.test.filters.SmallTest;
import org.junit.Assert;
......@@ -45,8 +43,8 @@ public class ChromeDownloadDelegateTest {
* Mock class for test.
*/
static class MockChromeDownloadDelegate extends ChromeDownloadDelegate {
public MockChromeDownloadDelegate(Context context, Tab tab) {
super(context, tab);
public MockChromeDownloadDelegate(Tab tab) {
super(tab);
}
@Override
......@@ -66,9 +64,7 @@ public class ChromeDownloadDelegateTest {
final Tab tab = mActivityTestRule.getActivity().getActivityTab();
mActivityTestRule.loadUrl("about:blank");
ChromeDownloadDelegate delegate = TestThreadUtils.runOnUiThreadBlockingNoException(
(Callable<ChromeDownloadDelegate>) ()
-> new MockChromeDownloadDelegate(
InstrumentationRegistry.getTargetContext(), tab));
(Callable<ChromeDownloadDelegate>) () -> new MockChromeDownloadDelegate(tab));
Assert.assertFalse(delegate.shouldInterceptContextMenuDownload("file://test/test.html"));
Assert.assertFalse(delegate.shouldInterceptContextMenuDownload("http://test/test.html"));
Assert.assertFalse(delegate.shouldInterceptContextMenuDownload("ftp://test/test.dm"));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment