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

Unified Diff: ui/android/java/src/org/chromium/ui/base/ActivityWindowAndroid.java

Issue 1528733002: Pull the Activity context from WindowAndroid if possible (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Changed AwContents logic and moved the static call to WindowAndroid Created 5 years 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: ui/android/java/src/org/chromium/ui/base/ActivityWindowAndroid.java
diff --git a/ui/android/java/src/org/chromium/ui/base/ActivityWindowAndroid.java b/ui/android/java/src/org/chromium/ui/base/ActivityWindowAndroid.java
index 615b0ab7eee34dd224477a541a376f51ff3d8632..399381583bbfd96655ef25c45b56f985e565041d 100644
--- a/ui/android/java/src/org/chromium/ui/base/ActivityWindowAndroid.java
+++ b/ui/android/java/src/org/chromium/ui/base/ActivityWindowAndroid.java
@@ -7,6 +7,7 @@ package org.chromium.ui.base;
import android.app.Activity;
import android.app.PendingIntent;
import android.content.ActivityNotFoundException;
+import android.content.Context;
import android.content.Intent;
import android.content.IntentSender.SendIntentException;
import android.content.SharedPreferences;
@@ -52,8 +53,8 @@ public class ActivityWindowAndroid
* indicate their activity state listening preference.
* @param activity The activity associated with the WindowAndroid.
*/
- public ActivityWindowAndroid(Activity activity) {
- this(activity, true);
+ public ActivityWindowAndroid(Context context) {
+ this(context, true);
}
/**
@@ -61,8 +62,12 @@ public class ActivityWindowAndroid
* @param activity The activity associated with the WindowAndroid.
* @param listenToActivityState Whether to listen to activity state changes.
*/
- public ActivityWindowAndroid(Activity activity, boolean listenToActivityState) {
- super(activity);
+ public ActivityWindowAndroid(Context context, boolean listenToActivityState) {
+ super(context);
+ Activity activity = activityFromContext(context);
+ if (activity == null) {
+ throw new IllegalArgumentException("Context is not and does not wrap an Activity");
+ }
mHandler = new Handler();
mOutstandingPermissionRequests = new SparseArray<PermissionCallback>();
if (listenToActivityState) {
@@ -207,7 +212,7 @@ public class ActivityWindowAndroid
@Override
public WeakReference<Activity> getActivity() {
- return new WeakReference<Activity>((Activity) getContext().get());
+ return new WeakReference<Activity>(activityFromContext(getContext().get()));
}
@Override

Powered by Google App Engine
This is Rietveld 408576698