Fix bug with rotating in the middle of split select staging animation
This patch fixes a bug where a user could cause a crash by rotating the device in the middle of the split staging animation. The bug arose because: 1) Normally, when you rotate the device, reapplyState() is called to refresh the UI. This reloads the state, cancels any animations that happen to be running at the time, and generally works fine in most cases. 2) When animations are canceled within Overview, we also call RecentsView#reset() to clean up loose ends and prevent bugs. 3) Unlike other states, the split select state is unique because it is a transient state that holds the user's choices temporarily. If that information was cleared -- by reset() -- before it loads, it will crash. Fixed by creating a new function in SplitScreenSelectState, onStateReapplied(), that is called when a reload is occurring. It makes sure that animations do not get canceled by calling end() to accelerate them to completion before the reloading occurs. Fixes: 249819567 Test: Manual Change-Id: I70c4651bcb5df81edd25f6e58e21520ebb391d01
Loading
Please register or sign in to comment