diff options
author | Bryan <bryanmawhinney@google.com> | 2021-06-16 15:57:38 +0000 |
---|---|---|
committer | Bryan Mawhinney <bryanmawhinney@google.com> | 2021-06-23 09:24:09 +0000 |
commit | f66eab85a00d38210680b77d8ef85c66b5868566 (patch) | |
tree | 543d660d034de340664a036ef0c304b0aa677432 /libs/hwui/renderthread/DrawFrameTask.cpp | |
parent | b886e41ad38fc74b0061a013cc072467990700c8 (diff) |
Changes to how we notify widget restore participants of new ids
As part of widget restore, we need to notify participants (hosts &
providers) of the mapping between ancestral and new widget ids.
Prior to this change, this was done at the end of system restore
and after each restore-at-install of unbundled apps.
There were two issues with this:
1) We would try to notify not-yet-installed participants at the end of
system restore and then *not* try again when they were installed.
2) We relied on PACKAGE_ADDED broadcasts to know which participants were
installed, but these are delivered asynchronously and not guaranteed
to be processed before the restoreFinished call.
After this change, we:
1) Only notify participants that are actually installed
2) Use receipt of the PACKAGE_ADDED / CHANGED broadcast to trigger
notification of any restore participants that are added or changed
*after* system restore completes.
2 is safe because by the time PackageManager sends the package
added / changed broadcasts, the app data restore has been completed,
and the app has been killed if needed.
Bug: 162057170
Test: Manual restore of Keep widget via cloud and d2d
Change-Id: I51dec33d09b62faba6d7c7daacd718a3c0682f7d
Diffstat (limited to 'libs/hwui/renderthread/DrawFrameTask.cpp')
0 files changed, 0 insertions, 0 deletions