Commit 2ff4948f authored by Jinsuk Kim's avatar Jinsuk Kim Committed by Commit Bot

Android: Delete Tab.getApplicationContext()

The public API returns the underlying application context of
|mThemedApplicationContext| which you can also get with
|ContextUtils.getApplicationContext| directly. This CL deletes the
API and has the call sites use ContextUtils instead.

Bug: 925242, 995903
Change-Id: Ie323a815225f67a3876a9a1559eaee8b3dd01687
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1884402Reviewed-by: default avatarTheresa  <twellington@chromium.org>
Commit-Queue: Jinsuk Kim <jinsukkim@chromium.org>
Cr-Commit-Position: refs/heads/master@{#710610}
parent c6a7fc3c
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
package org.chromium.chrome.browser.tab; package org.chromium.chrome.browser.tab;
import org.chromium.base.ContextUtils;
import org.chromium.base.UserData; import org.chromium.base.UserData;
import org.chromium.base.VisibleForTesting; import org.chromium.base.VisibleForTesting;
import org.chromium.base.annotations.NativeMethods; import org.chromium.base.annotations.NativeMethods;
...@@ -330,8 +331,8 @@ public class InterceptNavigationDelegateImpl implements InterceptNavigationDeleg ...@@ -330,8 +331,8 @@ public class InterceptNavigationDelegateImpl implements InterceptNavigationDeleg
int resId = mExternalNavHandler.canExternalAppHandleUrl(url) int resId = mExternalNavHandler.canExternalAppHandleUrl(url)
? R.string.blocked_navigation_warning ? R.string.blocked_navigation_warning
: R.string.unreachable_navigation_warning; : R.string.unreachable_navigation_warning;
mTab.getWebContents().addMessageToDevToolsConsole( mTab.getWebContents().addMessageToDevToolsConsole(ConsoleMessageLevel.WARNING,
ConsoleMessageLevel.WARNING, mTab.getApplicationContext().getString(resId, url)); ContextUtils.getApplicationContext().getString(resId, url));
} }
@VisibleForTesting @VisibleForTesting
......
...@@ -507,13 +507,6 @@ public class Tab { ...@@ -507,13 +507,6 @@ public class Tab {
return view != null ? view.getHeight() : 0; return view != null ? view.getHeight() : 0;
} }
/**
* @return The application {@link Context} associated with this tab.
*/
public Context getApplicationContext() {
return mThemedApplicationContext.getApplicationContext();
}
/** /**
* @return {@link ChromeActivity} that currently contains this {@link Tab} in its * @return {@link ChromeActivity} that currently contains this {@link Tab} in its
* {@link TabModel}. * {@link TabModel}.
...@@ -1543,8 +1536,9 @@ public class Tab { ...@@ -1543,8 +1536,9 @@ public class Tab {
? new Rect(0, 0, mContentView.getWidth(), mContentView.getHeight()) ? new Rect(0, 0, mContentView.getWidth(), mContentView.getHeight())
: new Rect(); : new Rect();
if (hasWebContents) mWebContents.onHide(); if (hasWebContents) mWebContents.onHide();
Context appContext = ContextUtils.getApplicationContext();
Rect bounds = original.isEmpty() Rect bounds = original.isEmpty()
? ExternalPrerenderHandler.estimateContentSize(getApplicationContext(), false) ? ExternalPrerenderHandler.estimateContentSize(appContext, false)
: null; : null;
if (bounds != null) original.set(bounds); if (bounds != null) original.set(bounds);
......
...@@ -277,11 +277,11 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate { ...@@ -277,11 +277,11 @@ public class TabContextMenuItemDelegate implements ContextMenuItemDelegate {
public void onOpenInNewChromeTabFromCCT(String linkUrl, boolean isIncognito) { public void onOpenInNewChromeTabFromCCT(String linkUrl, boolean isIncognito) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(linkUrl)); Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(linkUrl));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setClass(mTab.getApplicationContext(), ChromeLauncherActivity.class); intent.setClass(ContextUtils.getApplicationContext(), ChromeLauncherActivity.class);
if (isIncognito) { if (isIncognito) {
intent.putExtra(IntentHandler.EXTRA_OPEN_NEW_INCOGNITO_TAB, true); intent.putExtra(IntentHandler.EXTRA_OPEN_NEW_INCOGNITO_TAB, true);
intent.putExtra( intent.putExtra(Browser.EXTRA_APPLICATION_ID,
Browser.EXTRA_APPLICATION_ID, mTab.getApplicationContext().getPackageName()); ContextUtils.getApplicationContext().getPackageName());
IntentHandler.addTrustedIntentExtras(intent); IntentHandler.addTrustedIntentExtras(intent);
IntentHandler.setTabLaunchType(intent, TabLaunchType.FROM_EXTERNAL_APP); IntentHandler.setTabLaunchType(intent, TabLaunchType.FROM_EXTERNAL_APP);
} }
......
...@@ -11,6 +11,7 @@ import android.os.Handler; ...@@ -11,6 +11,7 @@ import android.os.Handler;
import androidx.annotation.CallSuper; import androidx.annotation.CallSuper;
import org.chromium.base.BuildInfo; import org.chromium.base.BuildInfo;
import org.chromium.base.ContextUtils;
import org.chromium.base.ObserverList.RewindableIterator; import org.chromium.base.ObserverList.RewindableIterator;
import org.chromium.base.annotations.CalledByNative; import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.NativeMethods; import org.chromium.base.annotations.NativeMethods;
...@@ -128,7 +129,7 @@ public abstract class TabWebContentsDelegateAndroid extends WebContentsDelegateA ...@@ -128,7 +129,7 @@ public abstract class TabWebContentsDelegateAndroid extends WebContentsDelegateA
public void navigationStateChanged(int flags) { public void navigationStateChanged(int flags) {
if ((flags & InvalidateTypes.TAB) != 0) { if ((flags & InvalidateTypes.TAB) != 0) {
MediaCaptureNotificationService.updateMediaNotificationForTab( MediaCaptureNotificationService.updateMediaNotificationForTab(
mTab.getApplicationContext(), mTab.getId(), mTab.getWebContents(), ContextUtils.getApplicationContext(), mTab.getId(), mTab.getWebContents(),
mTab.getUrl()); mTab.getUrl());
} }
if ((flags & InvalidateTypes.TITLE) != 0) { if ((flags & InvalidateTypes.TITLE) != 0) {
...@@ -148,7 +149,7 @@ public abstract class TabWebContentsDelegateAndroid extends WebContentsDelegateA ...@@ -148,7 +149,7 @@ public abstract class TabWebContentsDelegateAndroid extends WebContentsDelegateA
PolicyAuditor auditor = AppHooks.get().getPolicyAuditor(); PolicyAuditor auditor = AppHooks.get().getPolicyAuditor();
auditor.notifyCertificateFailure( auditor.notifyCertificateFailure(
PolicyAuditorJni.get().getCertificateFailure(mTab.getWebContents()), PolicyAuditorJni.get().getCertificateFailure(mTab.getWebContents()),
mTab.getApplicationContext()); ContextUtils.getApplicationContext());
RewindableIterator<TabObserver> observers = mTab.getTabObservers(); RewindableIterator<TabObserver> observers = mTab.getTabObservers();
while (observers.hasNext()) { while (observers.hasNext()) {
observers.next().onSSLStateUpdated(mTab); observers.next().onSSLStateUpdated(mTab);
......
...@@ -11,6 +11,7 @@ import androidx.annotation.IntDef; ...@@ -11,6 +11,7 @@ import androidx.annotation.IntDef;
import org.chromium.base.ActivityState; import org.chromium.base.ActivityState;
import org.chromium.base.ApplicationState; import org.chromium.base.ApplicationState;
import org.chromium.base.ApplicationStatus; import org.chromium.base.ApplicationStatus;
import org.chromium.base.ContextUtils;
import org.chromium.base.Log; import org.chromium.base.Log;
import org.chromium.base.ObserverList.RewindableIterator; import org.chromium.base.ObserverList.RewindableIterator;
import org.chromium.base.VisibleForTesting; import org.chromium.base.VisibleForTesting;
...@@ -181,8 +182,8 @@ public class TabWebContentsObserver extends TabWebContentsUserData { ...@@ -181,8 +182,8 @@ public class TabWebContentsObserver extends TabWebContentsUserData {
} }
if (isMainFrame) mTab.didFinishPageLoad(validatedUrl); if (isMainFrame) mTab.didFinishPageLoad(validatedUrl);
PolicyAuditor auditor = AppHooks.get().getPolicyAuditor(); PolicyAuditor auditor = AppHooks.get().getPolicyAuditor();
auditor.notifyAuditEvent( auditor.notifyAuditEvent(ContextUtils.getApplicationContext(),
mTab.getApplicationContext(), AuditEvent.OPEN_URL_SUCCESS, validatedUrl, ""); AuditEvent.OPEN_URL_SUCCESS, validatedUrl, "");
} }
@Override @Override
...@@ -204,11 +205,11 @@ public class TabWebContentsObserver extends TabWebContentsUserData { ...@@ -204,11 +205,11 @@ public class TabWebContentsObserver extends TabWebContentsUserData {
assert description != null; assert description != null;
PolicyAuditor auditor = AppHooks.get().getPolicyAuditor(); PolicyAuditor auditor = AppHooks.get().getPolicyAuditor();
auditor.notifyAuditEvent(mTab.getApplicationContext(), AuditEvent.OPEN_URL_FAILURE, auditor.notifyAuditEvent(ContextUtils.getApplicationContext(),
failingUrl, description); AuditEvent.OPEN_URL_FAILURE, failingUrl, description);
if (errorCode == BLOCKED_BY_ADMINISTRATOR) { if (errorCode == BLOCKED_BY_ADMINISTRATOR) {
auditor.notifyAuditEvent( auditor.notifyAuditEvent(ContextUtils.getApplicationContext(),
mTab.getApplicationContext(), AuditEvent.OPEN_URL_BLOCKED, failingUrl, ""); AuditEvent.OPEN_URL_BLOCKED, failingUrl, "");
} }
} }
...@@ -307,7 +308,7 @@ public class TabWebContentsObserver extends TabWebContentsUserData { ...@@ -307,7 +308,7 @@ public class TabWebContentsObserver extends TabWebContentsUserData {
PolicyAuditor auditor = AppHooks.get().getPolicyAuditor(); PolicyAuditor auditor = AppHooks.get().getPolicyAuditor();
auditor.notifyCertificateFailure( auditor.notifyCertificateFailure(
PolicyAuditorJni.get().getCertificateFailure(mTab.getWebContents()), PolicyAuditorJni.get().getCertificateFailure(mTab.getWebContents()),
mTab.getApplicationContext()); ContextUtils.getApplicationContext());
} }
@Override @Override
...@@ -343,7 +344,7 @@ public class TabWebContentsObserver extends TabWebContentsUserData { ...@@ -343,7 +344,7 @@ public class TabWebContentsObserver extends TabWebContentsUserData {
@Override @Override
public void destroy() { public void destroy() {
MediaCaptureNotificationService.updateMediaNotificationForTab( MediaCaptureNotificationService.updateMediaNotificationForTab(
mTab.getApplicationContext(), mTab.getId(), null, mTab.getUrl()); ContextUtils.getApplicationContext(), mTab.getId(), null, mTab.getUrl());
super.destroy(); super.destroy();
} }
} }
......
...@@ -19,6 +19,7 @@ import androidx.annotation.Nullable; ...@@ -19,6 +19,7 @@ import androidx.annotation.Nullable;
import org.chromium.base.ActivityState; import org.chromium.base.ActivityState;
import org.chromium.base.ApplicationStatus; import org.chromium.base.ApplicationStatus;
import org.chromium.base.ContextUtils;
import org.chromium.base.Log; import org.chromium.base.Log;
import org.chromium.base.metrics.RecordUserAction; import org.chromium.base.metrics.RecordUserAction;
import org.chromium.chrome.R; import org.chromium.chrome.R;
...@@ -163,8 +164,8 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat ...@@ -163,8 +164,8 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat
} }
} else if (disposition == WindowOpenDisposition.NEW_POPUP) { } else if (disposition == WindowOpenDisposition.NEW_POPUP) {
PolicyAuditor auditor = AppHooks.get().getPolicyAuditor(); PolicyAuditor auditor = AppHooks.get().getPolicyAuditor();
auditor.notifyAuditEvent( auditor.notifyAuditEvent(ContextUtils.getApplicationContext(),
mTab.getApplicationContext(), AuditEvent.OPEN_POPUP_URL_SUCCESS, url, ""); AuditEvent.OPEN_POPUP_URL_SUCCESS, url, "");
} }
} }
...@@ -219,7 +220,7 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat ...@@ -219,7 +220,7 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat
Intent newIntent = ChromeIntentUtil.createBringTabToFrontIntent(mTab.getId()); Intent newIntent = ChromeIntentUtil.createBringTabToFrontIntent(mTab.getId());
if (newIntent != null) { if (newIntent != null) {
newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); newIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
mTab.getApplicationContext().startActivity(newIntent); ContextUtils.getApplicationContext().startActivity(newIntent);
} }
} }
...@@ -281,8 +282,9 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat ...@@ -281,8 +282,9 @@ public class ActivityTabWebContentsDelegateAndroid extends TabWebContentsDelegat
case KeyEvent.KEYCODE_MEDIA_CLOSE: case KeyEvent.KEYCODE_MEDIA_CLOSE:
case KeyEvent.KEYCODE_MEDIA_EJECT: case KeyEvent.KEYCODE_MEDIA_EJECT:
case KeyEvent.KEYCODE_MEDIA_AUDIO_TRACK: case KeyEvent.KEYCODE_MEDIA_AUDIO_TRACK:
AudioManager am = (AudioManager) mTab.getApplicationContext().getSystemService( AudioManager am =
Context.AUDIO_SERVICE); (AudioManager) ContextUtils.getApplicationContext().getSystemService(
Context.AUDIO_SERVICE);
am.dispatchMediaKeyEvent(e); am.dispatchMediaKeyEvent(e);
break; break;
default: default:
......
...@@ -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.getApplicationContext(), ChromeLauncherActivity.class); intent.setClass(ContextUtils.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()));
......
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