summaryrefslogtreecommitdiff
path: root/core/java/android/widget/RemoteViews.java
Commit message (Collapse)AuthorAgeFilesLines
* Handle exceptions from querying appinfo in RemoteViews#addAppWidget.Sunny Goyal2025-10-071-6/+10
| | | | | | | | | | | | Host process may not have access to the ApplicationInfo directly in some cases Bug: 395168279 Test: Manual Flag: EXEMPT bugfix (cherry picked from commit 37bf5823504f2a256f128123393cd149721b87fc) (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:74decaab6437094783853b531a5c6538cce8f58f) Merged-In: Ic26d63acea5f227b56d44bc2e417f7b189f0d2f2 Change-Id: Ic26d63acea5f227b56d44bc2e417f7b189f0d2f2
* RemoteViews - Always load new ApplicationInfo from PackageManager.Zak Cohen2025-07-081-3/+11
| | | | | | | | | | | | | | | | | Always load ApplicationInfo object needed for RemoteViews Contexts directly from PackageManager. The key used is the package name. Previously this object was read from the RemoteViews bundle, which was provided by the Widget providing app, and this object could not be relied on to have accurate data fields. Bug: 376028556 Flag: EXEMPT Security Fix Test: atest CtsWidgetTestCases:RemoteViewsActivityTest#testApplicationInfo (cherry picked from commit 352fb4821076f0209ab2092d53444503dcec8992) (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:5b29f9ae6e6ecfd004f5ab8ccd3ec8d09722d774) Merged-In: Ie263b51fd2c2bdbf9d622533bb3f77d9f3f7181e Change-Id: Ie263b51fd2c2bdbf9d622533bb3f77d9f3f7181e
* Check more URIs in notificationsIoana Alexandru2024-11-181-0/+23
| | | | | | | | | | | | Bug: 281044385 Test: presubmit + tested in current release (cherry picked from commit f47b41a138ebd60f7b518fb6a9d8aa8230488422, includes changes from commit 57bf60dd7b6a0a0e9785231f8ec25a458fedde64 and commit 47fa2f79584b0a4e9ca7e9c6b237c4e5cf699032) (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:986e36ce03b119253e5b7c7fd39bdd0324e0dc8a) Merged-In: I1ce6bebd9452466d005505dc5b99a0fdc0e05e80 Change-Id: I1ce6bebd9452466d005505dc5b99a0fdc0e05e80
* Visit URIs in themed remoteviews icons.Ioana Alexandru2023-06-141-1/+9
| | | | | | | | Bug: 281018094 Test: atest RemoteViewsTest NotificationVisitUrisTest (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:634a69b7700017eac534f3f58cdcc2572f3cc659) Merged-In: I2014bf21cf90267f7f1b3f370bf00ab7001b064e Change-Id: I2014bf21cf90267f7f1b3f370bf00ab7001b064e
* Check URIs in sized remote views.Ioana Alexandru2023-06-141-0/+5
| | | | | | | | | Bug: 277741109 Test: atest RemoteViewsTest (cherry picked from commit ae0d45137b0f8ea49a085bbce4d39f901685c4a5) (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:902f020bc81e5b584d5cb0276568b888a728fc4a) Merged-In: Iceb33606da3a49b9638ab21aeae17a168c1b411a Change-Id: Iceb33606da3a49b9638ab21aeae17a168c1b411a
* Implement visitUris for RemoteViews ViewGroupActionAdd.Ioana Alexandru2023-06-141-0/+5
| | | | | | | | | | | | This is to prevent a vulnerability where notifications can show resources belonging to other users, since the URI in the nested views was not being checked. Bug: 277740082 Test: atest RemoteViewsTest NotificationVisitUrisTest (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:850fd984e5f346645b5a941ed7307387c7e4c4de) Merged-In: I5c71f0bad0a6f6361eb5ceffe8d1e47e936d78f8 Change-Id: I5c71f0bad0a6f6361eb5ceffe8d1e47e936d78f8
* Visit URIs in landscape/portrait custom remote views.Ioana Alexandru2023-05-271-0/+6
| | | | | | | | Bug: 277740848 Test: atest RemoteViewsTest NotificationManagerServiceTest & tested with POC from bug (cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b4692946c10d11c1e935869e11dc709a9cdcba69) Merged-In: I7d3d35df0ec38945019f71755bed8797b7af4517 Change-Id: I7d3d35df0ec38945019f71755bed8797b7af4517
* Merge "RemoteViews: fix BitmapCache after immutable Bitmap switch" into ↵TreeHugger Robot2022-08-101-3/+8
|\ | | | | | | tm-qpr-dev
| * RemoteViews: fix BitmapCache after immutable Bitmap switchTim Murray2022-07-271-3/+8
| | | | | | | | | | | | | | Test: widgets appear correctly Bug: 237256275 Change-Id: I864ac1ba8ac771c326dc215ae4e712ceb0b6057b
* | Wrapping various apply parameters into a separate classSunny Goyal2022-08-051-178/+193
|/ | | | | | | | | | | > This would allow us to easily extect the options > Also passing the executor for async inflation. This will allow containing adapters to also be async if the parent View is using async inflation Bug: 202766048 Test: Presubmit Change-Id: I60a9b5db5f9b5f8d6e56521ee00de4be30decce6
* RemoteViews: make bitmaps immutableTim Murray2022-04-181-4/+13
| | | | | | | | | | | | | | | | Because mutability is propagated across Parcel and Binder, any mutable Bitmaps passed to RemoteViews will end up mutable on the other side even though those Bitmaps can't be modified from the RemoteViews recipient. Make all Bitmaps passed to RemoteViews immutable in order to ensure that they can be sent without additional copies instead of the one ashmem object. Test: TH, RemoteViews work for widgets Bug: 227920378 Change-Id: I477e7132f9ff78333c1eda56b9d0fc6ac520abd0
* RemoteViews: don't crash on null display in getLaunchOptionsJulia Tuttle2022-03-041-1/+7
| | | | | | | | | | While we investigate the root cause of this bug, turn the crash into a warning. Bug: 218409359 Test: none; we don't have repro steps for the bug yet Change-Id: I6d699ea839726adc634a200a0057e316d59ecaa9 (cherry picked from commit 827d967199e89609c837c5a81f76a5067ed6d3f5)
* Propagate apply flags to nested RemoteViewsWillie Koomson2022-01-271-0/+23
| | | | | | | | | | | | | | | | | | This change propagates FLAG_WIDGET_IS_COLLECTION_CHILD and FLAG_USE_LIGHT_BACKGROUND_LAYOUT to nested RemoteViews (either added by addView, or set as portrait/landscape/sized RemoteViews) if that flag is also present on the parent RemoteView. For FLAG_WIDGET_IS_COLLECTION_CHILD, this prevents a PendingIntent from being set on a RemoteView that is a child of a collection item RemoteView. For FLAG_USE_LIGHT_BACKGROUND_LAYOUT, this ensures that nested RemoteViews use their light background layout if this is set on the parent. Bug: 214288099 Test: RemoteViewsTest Change-Id: I8da92d0d338631a99ee718a136bf9674827437bb
* Make setRemoteAdapter() work for nested RemoteViewsWillie Koomson2022-01-271-5/+21
| | | | | | | | | | | | This change adds applyNestedView() and reapplyNestedView() to RemoteViews. This makes it possible to pass the top-level "rootParent" view (usually AppWidgetHostView for widgets) to nested RemoteViews that are added by addView(). This allows setRemoteAdapter actions to work properly when they are used in nested RemoteViews. Bug: 214288099 Test: RemoteViewsTest Change-Id: I4fa3fe98d89bffdc0a5be46dabed12b9c217219e
* Merge "Deprecate RemoteViews showNext/showPrevious"Pierre Barbier de Reuille2022-01-251-0/+14
|\
| * Deprecate RemoteViews showNext/showPreviousStevie Kideckel2021-11-241-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | Only idempotent actions should be used as RemoteViews can be reapplied frequently. Also, these actions don't work with partiallyUpdateAppWidget, which causes developer confusion and pain. Developers should use setDisplayedChild instead and maintain their own record of the current index. Test: annotation only, validated that things still built ok Fix: 197745933 Change-Id: I67a2615567a38dae90d693c89001adcaafba2a8e
* | Revert "Revert "Migrate unsafe parcel APIs in framework-minus-apex""Bernardo Rufino2022-01-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 331be9a6431d6489f8d1e1b80cb510d0ee073c50. Reintroducing ag/16366278 since it seems unrelated to b/214053959 (more details on b/214053959#comment55). Original commit message: Migrate unsafe parcel APIs in framework-minus-apex Migrate the following unsafe parcel APIs in framework-minus-apex: * Parcel.readSerializable() * Parcel.readArrayList() * Parcel.readList() * Parcel.readParcelable() * Parcel.readParcelableList() * Parcel.readSparseArray() This CL was generated by applying lint fixes that infer the expected type from the caller code and provide that as the type parameter (ag/16365240). A few observations: * In some classes we couldn't migrate because the class also belonged to another build module whose min SDK wasn't current (as is the case for framework-minus-apex), hence I suppressed the lint check (since I'll eventually submit the lint check to the tree). * In some cases, I needed to do the cast in https://stackoverflow.com/a/1080525/5765705 to make the compiler happy since there isn't another way of providing a class of type Class<MyClassWithGenerics<T>>. * In the readSerializable() case, the new API also requires the class loader, that was inferred to by InferredClass.class.getClassLoader(). * Note that automatic formatting and import rely on running hooked up to the IDE, which wasn't the case here. Bug: 195622897 Change-Id: I272432e6e082a973f7a50492ec35d79c2b577c93 Test: TH passes
* | Merge "Revert "Migrate unsafe parcel APIs in framework-minus-apex""Ashwini Oruganti2022-01-121-1/+1
|\ \
| * | Revert "Migrate unsafe parcel APIs in framework-minus-apex"Bernardo Rufino2022-01-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 90bb3709dc75f7e44914222114752de5bce133d4. Reason for revert: b/214053959 Change-Id: Ic271bab1d3eaf677a5989dda9deb944ee2ad6850
* | | Merge "Set launch display id to an action performed on RemoteViews."Iris Yang2022-01-111-0/+1
|\ \ \
| * | | Set launch display id to an action performed on RemoteViews.Iris Yang2021-12-151-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When user click notification's action (i.e. answer call), the activity wouldn't display as the user is interacting with. Add ActivityOptions#setLaunchDisplayId to the display that the given view is currently on. So the activity will be launched to the display as the user is interacting with. Bug: 191222363 Test: Manually tested using Exo. Open calling application(e.g.WhatsApp) on Exo virtual display, and answer the call from the notification of phone. https://drive.google.com/file/d/1OhS1yn5nCcUe1Aiti3_MLL7k5BLFf7_W/view?resourcekey=0-CCR2Mihn-cfCSIqQZMg-ow Change-Id: I215519965074b2ddc66eb0a53320673295d4fb17
* | | | Merge "Fix crash in RemoteViews w/ Bundle due to Parcel.allowSquashing" into ↵Jeff DeCew2022-01-051-1/+19
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | sc-v2-dev am: 88cccabf2b am: c6136c2959 Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16553366 Change-Id: I66f9e0b45a2121675387c7d5ccbdf5a4b13ce916
| * | | Fix crash in RemoteViews w/ Bundle due to Parcel.allowSquashingJeff DeCew2021-12-301-1/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a failing CTS test, NotificationTemplateTest. Fixes: 207741735 Bug: 212731590 Test: atest NotificationTemplateTest Change-Id: Ide0241121d0824a2ba8c721c968e39f3c627f79d
* | | | Migrate unsafe parcel APIs in framework-minus-apexBernardo Rufino2021-12-151-1/+1
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Migrate the following unsafe parcel APIs in framework-minus-apex: * Parcel.readSerializable() * Parcel.readArrayList() * Parcel.readList() * Parcel.readParcelable() * Parcel.readParcelableList() * Parcel.readSparseArray() This CL was generated by applying lint fixes that infer the expected type from the caller code and provide that as the type parameter (ag/16365240). A few observations: * In some classes we couldn't migrate because the class also belonged to another build module whose min SDK wasn't current (as is the case for framework-minus-apex), hence I suppressed the lint check (since I'll eventually submit the lint check to the tree). * In some cases, I needed to do the cast in https://stackoverflow.com/a/1080525/5765705 to make the compiler happy since there isn't another way of providing a class of type Class<MyClassWithGenerics<T>>. * In the readSerializable() case, the new API also requires the class loader, that was inferred to by InferredClass.class.getClassLoader(). * Note that automatic formatting and import rely on running hooked up to the IDE, which wasn't the case here. Bug: 195622897 Test: TH passes Change-Id: I11a27b9bdab7959ee86e90aa1e1cbebd7aaf883c
* | / Copy caches when initializing RemoteViewsStevie Kideckel2021-12-081-4/+7
| |/ |/| | | | | | | | | | | | | | | | | If the BitmapCache is not copied when cloning RemoteViews, then Bitmaps will be dropped. Fix: 208865678 Test: cts, verified locally Change-Id: I7547ab3a60ac3ee16b9cfb8d592988d0e410172d
* | Merge "Optimize parcelization protocol in RemoteViews and ↵Stevie Kideckel2021-11-171-119/+283
|\ \ | | | | | | | | | RemoteCollectionItems" into sc-v2-dev
| * | Optimize parcelization protocol in RemoteViews and RemoteCollectionItemsStevie Kideckel2021-11-091-119/+283
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By using "squashing", each ApplicationInfo is only written to the parcel once. Subsequent writes write only a single int as a reference. This makes the earlier system with ELIDE_DUPLICATES unnecessary. Squashing relies on testing for equality, and ApplicationInfo does not implement equals, therefore I've added a shared cache based on package name and uid so that we can force all RemoteViews of the same package to use the same ApplicationInfo object. There is also a mechanism to update the ApplicationInfo to a new one (needed for dynamic colors). This saves space for addView calls as well as RemoteCollectionItems usage. After this change, each incremental item in a collection adds 48 bytes as a base (before this was multiple kilobytes). This approach also supports collections with RemoteViews from multiple packages. Each ApplicationInfo in the entire hierarchy is written at most once. Bug: 202831917 Test: locally, atest RemoteViewsTest, atest RemoteViewsFixedCollectionAdapterTest Change-Id: Ie1b1dc8760247aa771451149243efd63d36da368
* | | Check if the view can be recycled if viewId is setPierre Barbier de Reuille2021-11-101-17/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the recycling was only checked for multiple layout, as it was assumed the AppWidgetHostView would make the basic check. However, adapters views (e.g. ListView, ...) do not make any recycling check, instead relying on caching using the Layout id. The caching cannot be changed as it is common to other parts of Android. Note, however, that some apps are already using this lack of test to create the view themselves and use reapply to apply the RemoteViews. So we limit the test to uses involving changing the viewId. This CL ensures the view can be recycled when reapplied, always. Bug: 181985606 Test: atest android.widget.cts.RemoteViewsRecyclingTest Change-Id: Ib4f908c66a666faa4e6c27e2be38246eb7748f61
* | | Revert "Always check if the view can be recycled."Daniel Chapin2021-11-081-6/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert "Add test checking view recycling is always tested" Revert submission 16149646-betterRecycling Reason for revert: Droidfood Blocking Bug: 205503898 Reverted Changes: Ib01c511e4:Always check if the view can be recycled. If11dcd323:Add test checking view recycling is always tested Change-Id: Id08d5ea3602d9d3ca03e148e57a9f97435534e2c
* | | Always check if the view can be recycled.Pierre Barbier de Reuille2021-11-011-10/+6
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, the recycling was only checked for multiple layout, as it was assumed the AppWidgetHostView would make the basic check. However, adapters views (e.g. ListView, ...) do not make any recycling check, instead relying on caching using the Layout id. The caching cannot be changed as it is common to other parts of Android. This CL ensures the view can be recycled when reapplied, always. Bug: 181985606 Test: atest android.widget.cts.RemoteViewsRecyclingTest Change-Id: Ib01c511e4a793cce1519157aea06e194a2d8f855
* | Check if a view can be recycled in async case.Pierre Barbier de Reuille2021-10-281-1/+1
| | | | | | | | | | | | | | | | | | | | When implementing the code, it seems this was forgotten :( If the view id of the root of the RemoteViews is changed, currently, the top-level view will be re-used, which is an error. Bug: 181985606 Test: atest android.widget.cts.RemoteViewsRecyclingTest Change-Id: I5a8addb08f597ec574e3ed49d1318771e4c7c767
* | Check if APK paths are valid right before creating the context.Pierre Barbier de Reuille2021-10-251-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | The check has to be done in RemoteViews and in AppWidgetHostView right before creating the context used to inflate the app widget. Further, the APK is cached potentially in two places: in the APK with code and the APK without codes, so both places are updated if present. Test: manual, see bug for details Fix: 202369942 Change-Id: I5718f67711a3332a942d3c037eef7f30379549a4
* | Make RemoteViewsContextWrapper take the user id of the application info.Pierre Barbier de Reuille2021-09-021-0/+10
|/ | | | | | | | | | This is important to ensure sub-contexts know the user id used to create the current context, or when using a work profile, a new context will be created each time. Fix: 197761162 Test: Manually with hand-made app widget Change-Id: Ifb4a6dad152acbd2b2853ba8bf5cf1e131d55394
* Revert "Revert "Apply overlay updates to widget provider info""Ryan Mitchell2021-08-091-0/+19
| | | | | | | | Bug: 15332156 Bug: 195649929 This reverts commit 471720cccf848d896639322644314e16264f8af8. Change-Id: Ifa89ae43613add1137ddeca4cb40543a3a01d6a7
* Revert "Apply overlay updates to widget provider info"Patrick Baumann2021-08-041-19/+0
| | | | | | | | | | This reverts commit 0bf76b6296e7095ab98ea175452e5697e9afcc66. Bug: 193866093 Fixes: 195267626 Reason for revert: b/195267626 Change-Id: I598a99f761e66d8bedbb0745d488ccc35fff9201
* Apply overlay updates to widget provider infoRyan Mitchell2021-07-291-0/+19
| | | | | | | | | | | | | | | | | | | | When Runtime Resource Overlays (RROs) are applied to an application, the ApplicationInfo of the app in package manager is updated to have overlay paths. Widgets create the context used to inflate their remote views using a snapshot of the ApplicationInfo of the widget provider. This snapshot is taken when the widget RemoteView is initially created and sent to system server. This change updates the snapshot of the widget provider ApplicationInfo with the new overlay paths and notifies apps hosting widgets to re-inflate their remote views in order to have RROs apply to widgets correctly. Bug: 193866093 Test: Repeatedly change wallpaper & style color to a "basic" color and go back to launcher to observe overlay correct color is applied Change-Id: I0b9b8c0d32d83a52e9ea5bc8ba1635cf99e4b921
* Revert^3 "Deprecate Context#createApplicationContext"Ryan Mitchell2021-06-301-3/+2
| | | | | | | | | | This reverts commit cb5a80ea57b51fcde117dea253c546dbba9f27f1. Reason for revert: Was not the cause of the test failure Fixes: 186622527 Test: atest FrameworksCoreTests:ContextTest Change-Id: I705854f080200f0465d94a7754e710f05a3ec92c
* Revert^2 "Deprecate Context#createApplicationContext"Paul Hobbs2021-06-291-2/+3
| | | | | | | | Bug: 192242649 5a41b45a85286200f029b6ac06d004cb32c88dd0 Change-Id: Idcebd68e0079e7e87de04ae25069b3a9ff72093c
* Revert "Deprecate Context#createApplicationContext"Ryan Mitchell2021-06-221-3/+2
| | | | | | | | This reverts commit c54ebba25be71d77a4c0d92dba2f0b32c03a9792. Bug: 188059515 Test: atest FrameworksCoreTests:ContextTest Change-Id: I986563142dac135281889e811e6e5219d728d5d1
* Ensure that the RemoteResponse is not empty before acting on itStevie Kideckel2021-06-101-1/+3
| | | | | | | | Potential NPE was added in ag/14881530 Fix: 190353630 Test: locally with sample app with and without items Change-Id: I946b6b6719600cb638db1b15d74a8c3af6587f32
* Fix handling for onItemClick of fixed collection itemsStevie Kideckel2021-06-071-23/+25
| | | | | | | | | | | | | | | | The onItemClick handling code assumed that the item would be nested at least one layer deep due to the RemoteViewsAdapter adding a wrapper view group. Rather than add another case to that logic, I've refactored this to traverse the view's children looking for a view with the tag. As the tag is internal, there should only ever be one child with it and we'll always want that one to handle the click. Fix: 190353630 Test: locally Test: atest RemoteViewsFixedCollectionAdapterTest Change-Id: I22057f148d33482ad84fff592b9f7f554fa2bfad
* Deprecate Context#createApplicationContextRyan Mitchell2021-05-181-2/+3
| | | | | | | | | | | | | | | | | | | If an application caches an ApplicationInfo and uses it to call Context#createApplicationContext, the app will not get the most recent version of the overlays for that application. To make things worse, the LoadedApk stored in ActivityThread#mResourcePackages is updated using the old ApplicationInfo causing further uses of the cached LoadedApk to return outdated information. Deprecate Context#createApplicationContext, convert all internal uses to Context#createPackageContext(String packageName, ...) and log whenever any one calls Context#createApplicationContext with an outdated ApplicationInfo to detect debug issues in using old infos. Bug: 188059515 Test: change wallpaper and observe widgets get reloaded with most recent overlays Change-Id: I2aeefa8c0e66264859109975a54c4f73f76ad710
* Save/restore view states when reapplying RemoteViews for color changesStevie Kideckel2021-05-041-0/+89
| | | | | | | | | | | This ensures that adapters have their caches filles and other benefits such as lists maintaining their scroll positions Bug: 183503469 Test: validated with local app that service is not called on drag for colors changing and that flicker is removed Change-Id: I043d1d7a547b012f7a12eb555b35854a9bb7109b
* Fix some potential nullability issues in RemoteViewsStevie Kideckel2021-04-271-9/+34
| | | | | | | | Test: Ran locally on device, all sample widgets still worked Test: atest RemoteViewsTest Bug: 185316709 Change-Id: I60c235ea196dd106325e79962e545c582a975168
* Merge "Allow passing 0 to RemoteViews.setDimen() or setAttr()" into sc-devJeff DeCew2021-04-201-50/+100
|\
| * Allow passing 0 to RemoteViews.setDimen() or setAttr()Jeff DeCew2021-04-161-50/+100
| | | | | | | | | | | | Bug: 185488522 Test: atest RemoteViewsTest Change-Id: I535e44a431701e68edcfaf527e326fd0e769b16a
* | Merge "Ensure that the root view is an AppWidgetHostView in ↵TreeHugger Robot2021-04-201-4/+12
|\ \ | |/ |/| | | setRemoteAdapter" into sc-dev
| * Ensure that the root view is an AppWidgetHostView in setRemoteAdapterStevie Kideckel2021-04-161-4/+12
| | | | | | | | | | | | | | Bug: 185367016 Test: atest RemoteViewsFixedCollectionAdapterTest Change-Id: I77d866157e97c4507243dbc2cd5411384f885458
* | Add attribute setters for RemoteViewsPierre Barbier de Reuille2021-04-131-38/+322
|/ | | | | | | | This implements go/remoteviews-attribute-setters Bug: 184931139 Test: atest CtsWidgetTestCases:RemoteViewsTest Change-Id: I135ab857d3a3a52bbb02ee3226e2bf723d8c916a
* Replace RemoteViews#setViewId with a constructorPierre Barbier de Reuille2021-04-071-27/+9
| | | | | | | | | | | | | This is a request of the API Council. There was a hidden and, AFAICT, un-used constructor with the same signature, which I have removed. Before replacing the constructor I checked the whole OS builds and run with the constructor simply removed. Fix: 182824754 Test: atest CtsWidgetTestCases:RemoteViewsRecyclingTest Test: atest CtsWidgetTestCases:RemoteViewsTest Change-Id: I0f12d2fa520cf4f0d54a7e3859337cc9a395ae66