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

Unified Diff: content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java

Issue 1541473002: Revert of Pull the Activity context from WindowAndroid if possible (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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: content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
diff --git a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
index 7147b93cd8a7c16359adb74bbc041835f21d149a..b7bbcf4a397e658a310bdee6820141c556d4b7cd 100644
--- a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
+++ b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
@@ -12,6 +12,7 @@
import android.content.ClipboardManager;
import android.content.ContentResolver;
import android.content.Context;
+import android.content.ContextWrapper;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.res.Configuration;
@@ -430,6 +431,22 @@
*/
public interface SmartClipDataListener {
public void onSmartClipDataExtracted(String text, String html, Rect clipRect);
+ }
+
+ /**
+ * Cast from Context to Activity taking ContextWrapper into account.
+ */
+ public static Activity activityFromContext(Context context) {
+ // Only retrieve the base context if the supplied context is a ContextWrapper but not
+ // an Activity, given that Activity is already a subclass of ContextWrapper.
+ if (context instanceof Activity) {
+ return ((Activity) context);
+ } else if (context instanceof ContextWrapper) {
+ context = ((ContextWrapper) context).getBaseContext();
+ return activityFromContext(context);
+ } else {
+ return null;
+ }
}
private final Context mContext;

Powered by Google App Engine
This is Rietveld 408576698