diff options
| author | 2021-04-20 11:33:59 +0000 | |
|---|---|---|
| committer | 2021-04-20 11:33:59 +0000 | |
| commit | 6ba89099f805a8111a76e51d0730b453b7323c34 (patch) | |
| tree | cd7c74e3dbd28a233317f1816938a9e1d325cbaa | |
| parent | 8c2273ef8f55b2e07762163b883d76d20daee48e (diff) | |
| parent | fb2df7004152fa7c17e5a994ac82b4c51e57227f (diff) | |
Merge "Ensure that the root view is an AppWidgetHostView in setRemoteAdapter" into sc-dev
| -rw-r--r-- | core/java/android/widget/RemoteViews.java | 16 |
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; } |