summaryrefslogtreecommitdiff
path: root/libs/androidfw/FileStream.cpp
diff options
context:
space:
mode:
author Riddle Hsu <riddlehsu@google.com> 2023-06-14 01:43:05 +0800
committer Riddle Hsu <riddlehsu@google.com> 2023-06-14 18:48:58 +0800
commitd1d8402a74b8080732620418e3894fac0ac6335a (patch)
treed41897f8dd6581e2aece0a34e3d4315d60288528 /libs/androidfw/FileStream.cpp
parentf80ef9353004370127736a674f5cf1b76cf4fd55 (diff)
Consider multiple show-when-locked activities for wallpaper
2 problems: - ActivityRecord#mShowWhenLocked was not involved, i.e. if the app uses Activity#setShowWhenLocked rather than FLAG_SHOW_WHEN_LOCKED, the condition needsShowWhenLockedWallpaper is never satisfied. - The useTopWallpaperAsTarget was always true if there exists one non fullscreen show-when-locked activity even if the wallpaper can be occluded by the opaque show-when-locked activity behind. The first one is fixed by checking WindowState#canShowWhenLocked. The second one is fixed by updating mNeedsShowWhenLockedWallpaper when going through all windows from top to bottom. Note that with shell transition, if the wallpaper becomes visible unexpectedly, it will be collected into transition. And because the wallpaper surface will be put on transition root surface that may have higher z-order, which will cause the wallpaper to be flickering when switching show-when-locked activities with scene transition (covert to translucent). Fix: 286172268 Test: WallpaperControllerTests#testShowWhenLockedWallpaperTarge Change-Id: Ic029c9c42472f7061020e4ca47e325be1ee53787
Diffstat (limited to 'libs/androidfw/FileStream.cpp')
0 files changed, 0 insertions, 0 deletions