Do not run StateHandler code while holding the lock
Deadlock:
Main thread:
InternalStateHandler.run() =>
LauncherFrameDrawn =>
Switch MotionEventQueue to Main thread =>
Try to acquire MotionEventQueue lock while holding InternalStateHandler lock
Remote UI thread
Recents Animation cancel on MotionEventQueue =>
Cancel SwipeHandler =>
Clear previously registered InternalStateHandler =>
Try to acquire InternalStateHandler lock while holding MotionEventQueue lock
Bug: 80536505
Change-Id: I75e522edea2a76f8bc90e8abc2a174583cc709c4
1 file changed