summaryrefslogtreecommitdiff
path: root/libs/input/SpriteController.cpp
diff options
context:
space:
mode:
author Riddle Hsu <riddlehsu@google.com> 2022-07-27 23:21:13 +0800
committer Riddle Hsu <riddlehsu@google.com> 2022-07-29 19:51:45 +0800
commit570308d9eb452b6eff0400187f5621a466ae59a6 (patch)
tree0579b34206a97abcf1b364131a720a178270d8d2 /libs/input/SpriteController.cpp
parent619befaa313f2d4ef769c6da3a7c7a67191d4410 (diff)
Reduce lock contention of setting running shell remote transition
When the transition is ready on shell side, the core may be still running surface placement. Then it may easily meet lock contention when setting the animating state for the animation player process. This change moves the animation delegate to TransitionController. It can recognize the delegate process if the remote animation is specified from ActivityOptions. So when shell is calling setRunningRemoteTransitionDelegate, it can just check if the process is handled without entering WM lock. The case of using TransitionFilter may still encounter contention the remote registrations only exist on shell side. Also add a quick check at shell side to skip the IPC if the app thread of remote animation is null. Such as when launching from quick settings that the remote is actual the local process. Bug: 235323163 Test: atest TransitionTests#testRunningRemoteTransition Change-Id: I137fcdff3cb5658aad5f7452c33bbc8d70f42398
Diffstat (limited to 'libs/input/SpriteController.cpp')
0 files changed, 0 insertions, 0 deletions