Ivan Tkachenko 90a769d1d3 Bubble bar dismiss interaction
A single bubble and the bubble stack dismiss functionality is implemented using `BubbleDragController`. It attaches a touch listener to the corresponding views and handles gesture interactions.
* When the view is long clicked the dragging to dismiss interaction starts. It scales up the dragged view and presents the dismiss view in the bottom of the window.
* When the bubble or the bubble stack is dragged close to the dismiss target area, it gets pulled towards it and sticks to it. The `MagnetizedObject` and `MagneticTarget` classes are used for it.
* When the dragged view is released outside of the dismiss area, it moves back to the initial position with animation.
* When the dragged bubble is released inside of the dismiss area, it will dismiss the bubble with animation and remove it from the stack.
* When the dragged bubble bar stack is released inside the dismiss area, all the bubbles will get dismissed and the bubble bar will dissapear.

Bug: 271466616
Test: manual, TBD
Flag: WM_BUBBLE_BAR
Change-Id: I83393898be61ec522db92688ac2e111ef7d72fe6
2023-07-28 18:17:09 +00:00
2023-05-18 06:10:04 +00:00
2023-07-28 18:17:09 +00:00
2023-02-07 21:43:43 +00:00
2019-11-25 20:24:07 +09:00
2021-09-21 15:25:22 -07:00
2023-03-09 14:05:29 -08:00
2023-07-20 13:51:17 +01:00
2020-01-17 11:24:43 -08:00
S
Description
No description provided
658 MiB
Languages
Java 57.2%
Kotlin 42.4%
AIDL 0.3%