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; ...@@ -6,7 +6,6 @@ package org.chromium.chrome.browser.download;
import android.Manifest.permission; import android.Manifest.permission;
import android.app.DownloadManager; import android.app.DownloadManager;
import android.content.Context;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
import android.net.Uri; import android.net.Uri;
import android.os.Environment; import android.os.Environment;
...@@ -50,17 +49,13 @@ public class ChromeDownloadDelegate implements UserData { ...@@ -50,17 +49,13 @@ public class ChromeDownloadDelegate implements UserData {
"text/plain", "application/octet-stream", "binary/octet-stream", "octet/stream", "text/plain", "application/octet-stream", "binary/octet-stream", "octet/stream",
"application/download", "application/force-download", "application/unknown")); "application/download", "application/force-download", "application/unknown"));
// The application context.
private final Context mContext;
private Tab mTab; private Tab mTab;
public static ChromeDownloadDelegate from(Tab tab) { public static ChromeDownloadDelegate from(Tab tab) {
UserDataHost host = tab.getUserDataHost(); UserDataHost host = tab.getUserDataHost();
ChromeDownloadDelegate controller = host.getUserData(USER_DATA_KEY); ChromeDownloadDelegate controller = host.getUserData(USER_DATA_KEY);
return controller == null return controller == null ? host.setUserData(USER_DATA_KEY, new ChromeDownloadDelegate(tab))
? host.setUserData(USER_DATA_KEY, : controller;
new ChromeDownloadDelegate(tab.getThemedApplicationContext(), tab))
: controller;
} }
/** /**
...@@ -68,8 +63,7 @@ public class ChromeDownloadDelegate implements UserData { ...@@ -68,8 +63,7 @@ public class ChromeDownloadDelegate implements UserData {
* @param tab The corresponding tab instance. * @param tab The corresponding tab instance.
*/ */
@VisibleForTesting @VisibleForTesting
ChromeDownloadDelegate(Context context, Tab tab) { ChromeDownloadDelegate(Tab tab) {
mContext = context;
mTab = tab; mTab = tab;
} }
...@@ -280,8 +274,4 @@ public class ChromeDownloadDelegate implements UserData { ...@@ -280,8 +274,4 @@ public class ChromeDownloadDelegate implements UserData {
} }
return true; return true;
} }
protected Context getContext() {
return mContext;
}
} }
...@@ -255,7 +255,7 @@ public class Tab { ...@@ -255,7 +255,7 @@ public class Tab {
return mUserDataHost; return mUserDataHost;
} }
public Context getThemedApplicationContext() { Context getThemedApplicationContext() {
return mThemedApplicationContext; return mThemedApplicationContext;
} }
......
...@@ -77,7 +77,7 @@ public class ReparentingTask implements UserData { ...@@ -77,7 +77,7 @@ public class ReparentingTask implements UserData {
Runnable finalizeCallback) { Runnable finalizeCallback) {
if (intent == null) intent = new Intent(); if (intent == null) intent = new Intent();
if (intent.getComponent() == null) { if (intent.getComponent() == null) {
intent.setClass(mTab.getThemedApplicationContext(), ChromeLauncherActivity.class); intent.setClass(mTab.getApplicationContext(), ChromeLauncherActivity.class);
} }
intent.setAction(Intent.ACTION_VIEW); intent.setAction(Intent.ACTION_VIEW);
if (TextUtils.isEmpty(intent.getDataString())) intent.setData(Uri.parse(mTab.getUrl())); if (TextUtils.isEmpty(intent.getDataString())) intent.setData(Uri.parse(mTab.getUrl()));
......
...@@ -4,8 +4,6 @@ ...@@ -4,8 +4,6 @@
package org.chromium.chrome.browser.download; package org.chromium.chrome.browser.download;
import android.content.Context;
import android.support.test.InstrumentationRegistry;
import android.support.test.filters.SmallTest; import android.support.test.filters.SmallTest;
import org.junit.Assert; import org.junit.Assert;
...@@ -45,8 +43,8 @@ public class ChromeDownloadDelegateTest { ...@@ -45,8 +43,8 @@ public class ChromeDownloadDelegateTest {
* Mock class for test. * Mock class for test.
*/ */
static class MockChromeDownloadDelegate extends ChromeDownloadDelegate { static class MockChromeDownloadDelegate extends ChromeDownloadDelegate {
public MockChromeDownloadDelegate(Context context, Tab tab) { public MockChromeDownloadDelegate(Tab tab) {
super(context, tab); super(tab);
} }
@Override @Override
...@@ -66,9 +64,7 @@ public class ChromeDownloadDelegateTest { ...@@ -66,9 +64,7 @@ public class ChromeDownloadDelegateTest {
final Tab tab = mActivityTestRule.getActivity().getActivityTab(); final Tab tab = mActivityTestRule.getActivity().getActivityTab();
mActivityTestRule.loadUrl("about:blank"); mActivityTestRule.loadUrl("about:blank");
ChromeDownloadDelegate delegate = TestThreadUtils.runOnUiThreadBlockingNoException( ChromeDownloadDelegate delegate = TestThreadUtils.runOnUiThreadBlockingNoException(
(Callable<ChromeDownloadDelegate>) () (Callable<ChromeDownloadDelegate>) () -> new MockChromeDownloadDelegate(tab));
-> new MockChromeDownloadDelegate(
InstrumentationRegistry.getTargetContext(), tab));
Assert.assertFalse(delegate.shouldInterceptContextMenuDownload("file://test/test.html")); Assert.assertFalse(delegate.shouldInterceptContextMenuDownload("file://test/test.html"));
Assert.assertFalse(delegate.shouldInterceptContextMenuDownload("http://test/test.html")); Assert.assertFalse(delegate.shouldInterceptContextMenuDownload("http://test/test.html"));
Assert.assertFalse(delegate.shouldInterceptContextMenuDownload("ftp://test/test.dm")); 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