summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2021-04-20 11:33:59 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2021-04-20 11:33:59 +0000
commit6ba89099f805a8111a76e51d0730b453b7323c34 (patch)
treecd7c74e3dbd28a233317f1816938a9e1d325cbaa
parent8c2273ef8f55b2e07762163b883d76d20daee48e (diff)
parentfb2df7004152fa7c17e5a994ac82b4c51e57227f (diff)
Merge "Ensure that the root view is an AppWidgetHostView in setRemoteAdapter" into sc-dev
-rw-r--r--core/java/android/widget/RemoteViews.java16
1 files changed, 12 insertions, 4 deletions
diff --git a/core/java/android/widget/RemoteViews.java b/core/java/android/widget/RemoteViews.java
index b13cfc02e986..dc5663abd717 100644
--- a/core/java/android/widget/RemoteViews.java
+++ b/core/java/android/widget/RemoteViews.java
@@ -943,6 +943,13 @@ public class RemoteViews implements Parcelable, Filter {
View target = root.findViewById(viewId);
if (target == null) return;
+ // Ensure that we are applying to an AppWidget root
+ if (!(rootParent instanceof AppWidgetHostView)) {
+ Log.e(LOG_TAG, "setRemoteAdapter can only be used for "
+ + "AppWidgets (root id: " + viewId + ")");
+ return;
+ }
+
if (!(target instanceof AdapterView)) {
Log.e(LOG_TAG, "Cannot call setRemoteAdapter on a view which is not "
+ "an AdapterView (id: " + viewId + ")");
@@ -1008,14 +1015,15 @@ public class RemoteViews implements Parcelable, Filter {
// Ensure that we are applying to an AppWidget root
if (!(rootParent instanceof AppWidgetHostView)) {
- Log.e(LOG_TAG, "SetRemoteViewsAdapterIntent action can only be used for " +
- "AppWidgets (root id: " + viewId + ")");
+ Log.e(LOG_TAG, "setRemoteAdapter can only be used for "
+ + "AppWidgets (root id: " + viewId + ")");
return;
}
+
// Ensure that we are calling setRemoteAdapter on an AdapterView that supports it
if (!(target instanceof AbsListView) && !(target instanceof AdapterViewAnimator)) {
- Log.e(LOG_TAG, "Cannot setRemoteViewsAdapter on a view which is not " +
- "an AbsListView or AdapterViewAnimator (id: " + viewId + ")");
+ Log.e(LOG_TAG, "Cannot setRemoteAdapter on a view which is not "
+ + "an AbsListView or AdapterViewAnimator (id: " + viewId + ")");
return;
}