Reset target, update pointer
[Part 1]
Add bubbles, expand stack, select bubble.
-> mMagnetizedBubbleDraggingOut = selected bubble
Now add more bubbles
-> ExpandedAnimationController#updateBubblePositions returns early at the selected bubble
-> Bubbles to the right of the selected bubble don't animate to their places.
Fixed by setting mMagnetizedBubbleDraggingOut to null in onGestureFinished
-> BubbleTouchHandler calls this for every gesture
-> Subsequent order animations apply to every bubble.
[Part 2]
Pointer updates once right after adding bubble and does not reflect
final updated order. Fixed by moving updatePointerPosition from
BubbleStackView#addBubble to #updatePointerPosition. (We don't need to
update the pointer if adding a bubble does not change the order.)
Fixes: 152696626
Test: manual: add bubbles, expand stack, select bubble, add more bubbles
-> pointer stays with selected bubble (overflow flag on and off)
Test: atest SystemUITests
Change-Id: If5f34cf660a8d4b9ce50ad749ebdce5b87660407
2 files changed