After changes following swipe interactions are available for the bubble
bar:
1. stashed handle
- swipe up to show bubble bar, after swipe reaches unstash threshold, we
show the bubble bar
- swipe down to stash bubble bar in the same gesture (without lifting
finger), do this when swipe moves back below unstash threshold
- expand bubble bar on finger lifted when currently above unstash
threshold
2. collapsed bubble bar (used in home or overview)
- swipe up and release over unstash threshold to expand bubble bar
- bubble bar can't be swiped down to stash it
3. expanded bubble bar
- no swipe interactions available
Bug: 371229061
Flag: com.android.wm.shell.enable_bubble_bar
Test: BubbleBarSwipeControllerTest
Test: manually test:
- stashed bubble bar:
- swipe up and back down => bubble bar shown and stashed
- swipe up slightly and release => bubble bar not shown
- swipe up and release => bubble bar shown, expands on release
- collapsed bubble bar:
- swipe down => no action
- swipe up slightly => no action
- swipe up and release => bar expands on release
Change-Id: I42aa59dc288446603e06a3d02419be38cf17fa1f
This class has even better sandboxing and is a TestRule, making it easy to tear down singletons.
Flag: TEST_ONLY
Fix: 369504330
Test: go/testedequals
Change-Id: I86fbfecc275da536ab745d61bef8b9bebb28379c
Extracts the flyout message from the bundle and stores it in
BubbleBarBubble.
Flag: com.android.wm.shell.enable_bubble_bar
Bug: 277815200
Test: builds successfully -- code is not wired up yet
Change-Id: I5e810290991b4ee638f43add4d6a6514edb167af
Long term we'd like to use bubbles for any app, so this change
uses more general names instead of the chat-specific naming
Flag: com.android.wm.shell.enable_bubble_bar
Bug: 277815200
Test: built and tested on a device
Change-Id: Idec2aa7d9a8df5df0df49231e8871298084f8aa1
Update bubble bar visibility when it is stashed.
Ensures that if alpha is updated, it won't show up.
Bug: 345687278
Test: TransientBubbleStashController
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I603a67a824a5cee0fb35de7c3f2dc98d9d2323ed
Update TaskbarUnitTestRule @InjectController annotation to support
injecting bubble controllers.
Bubble controllers are optional and only initialized if the feature flag
is enabled.
Add a test to check that bubble controllers are only initialized when
the flag is on.
Bug: 371017282
Test: TaskbarUnitTestRuleTest
Flag: TEST_ONLY
Change-Id: Ibea2dbe0db854d530ef93ac53204a361572fa5b2
Flag: com.android.wm.shell.enable_bubble_bar
Test: atest NexusLauncherTests:PersistentBubbleStashControllerTest
Test: atest NexusLauncherTests:TransientBubbleStashControllerTest
Test: manual - swipe up to overview from home & from in an app, ensure
bubble bar is unstashed
- switch between home / overview / in app in transient
and persistent taskbar to make sure things work
Bug: 368364143
Change-Id: I34c22b000d1fcc75489ea6da497f14def9649a20
Animate the elevation of the flyout along with the expansion animation.
Also start revealing the triangle as soon as we're past the bubble bar.
Flag: com.android.wm.shell.enable_bubble_bar
Bug: 277815200
Test: atest BubbleBarFlyoutViewScreenshotTest
Test: atest BubbleBarFlyoutControllerTest
Change-Id: Ie7e27240ae3ab86f8e7c3f39aa1c80885cfdc98e
Include unit test to check that view properties are set to expected
values at the end of an unstash animation.
Add tests to check that alpha for bubbles and background changes
separately during unstash and stash animations.
Bug: 345488489
Test: TransientBubbleStashControllerTest
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Ifd10d4524128d42d23fe67c0eff2c4ae16d3b27b
This change translates the content of the flyout according
to the progress of the animation. Adding an outline provider
allows clipping the content to the bounds of the animating
background.
Also animate the color of the background.
Demo:
on left - http://recall/-/bJtug1HhvXkkeA4MQvIaiP/cH2EK0FiD92dykhLkLeyh1
on right - http://recall/-/bJtug1HhvXkkeA4MQvIaiP/btpcter79rAlcavd4xxHu7
Flag: com.android.wm.shell.enable_bubble_bar
Bug: 277815200
Test: atest BubbleBarFlyoutViewScreenshotTest
Test: atest BubbleBarFlyoutControllerTest
Change-Id: Id142af2041410c0570759a360146d5e084411cc1
Update the bubble bar flyout drawing behavior to allow to animate
from a collapsed position into an expanded position.
This change only handles the rounded rect and the triangle. The
text is still left unchanged.
When wired up this looks like this:
left: http://recall/-/bJtug1HhvXkkeA4MQvIaiP/gIsckRmFKj8CceafiJnPTa
right: http://recall/-/bJtug1HhvXkkeA4MQvIaiP/dpn51yXFCCkT6ViUegf351
Flag: com.android.wm.shell.enable_bubble_bar
Bug: 277815200
Test: atest BubbleBarFlyoutViewScreenshotTest
Test: atest BubbleBarFlyoutControllerTest
Change-Id: I85ae3bf908c04e5473655c9e536495f56d80f466
Allow swiping down on collapsed bubble bar to stash it.
Bug: 325673340
Test: atest NexusLauncherTests:com.android.launcher3.taskbar.bubbles.BubbleBarSwipeControllerTest
Test: swipe up to show bubble bar and swipe down to stash it
Test: tap on stashed handle
Test: enable 3 button nav and tap on bubble bar
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I0367d36bdc1aef34dc71843052b691a95e293375
* changes:
Add tests for TaskbarAllAppsViewController.
Add tests for TaskbarAutohideSuspendController.
Add tests for TaskbarScrimViewController.
Add tests for TaskbarStashController.
Follow the taskbar motion for unstashing via gesture.
When swiping up in the handle area, move the handle slightly up with the
finger movement.
Once reaching a certain threshold, unstash the bubble bar.
If user swipes up past a certain other threshold, and lifts the finger,
expand the bubble bar. Otherwise leave bubble bar in collapsed state.
Only stashed handle or collapsed bar can be swiped up on.
Bug: 325673340
Test: atest NexusLauncherTests:com.android.launcher3.taskbar.bubbles.BubbleBarSwipeControllerTest
Test: swipe up on stashed handle
Test: tap on stashed handle
Test: enable 3 button nav and tap on bubble bar
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I6bb3c201cd03f05e2be55ebb0c972c577373ea79
Initial version of the flyout view for displaying bubble bar
notification.
Flag: com.android.wm.shell.enable_bubble_bar
Bug: 277815200
Test: atest BubbleBarFlyoutViewScreenshotTest
Test: atest BubbleBarFlyoutControllerTest
Change-Id: I5d0643fe5d2691ad2349b45eaaad6cd2660d9df0
Update education stats when
- go overview and all apps by swiping up at homepage (AbstractStateChangeTouchController)
- go home from all apps by swiping down the all apps panel (AbstractStateChangeTouchController)
- go home from all apps or overview by swiping up from the bottom nav bar (NavBarToHomeTouchController)
- in 3 button navgiation mode (TaskbarNavButtonController)
NavBarToHomeTouchController does not inherit from AbstractStateChangeTouchController so logic are added separately.
Bug: 363480554
Test: TaskbarNavButtonControllerTest
Flag: com.android.systemui.keyboard_touchpad_contextual_education
Change-Id: I0662704a9093b9f5a4d2f086a8297429fbc49881
For the stash and unstash animation we use separate timings for the
Bubble views and background. In other animations we animate the entire
bubble bar alpha as one.
To achieve this during unstash animation we set the bubble views and
background alpha to 0. And then set the bar alpha to 1.
Since alpha animation has a delay during unstash, we need to set the
initial values as the start of the entire animation and not just the
alpha part. Otherwise there are flickers in the animation.
We also need to set initial values for the alpha animator that the
AnimatedFloat creates. AnimatedFloat uses the current values as the
start value. If we update it later, the animator was already created and
it won't have an effect. To fix this, we set the start and end values
for the alpha animators created by AnimatedFloat.
Bug: 345488489
Flag: com.android.wm.shell.enable_bubble_bar
Test: slow down animations and unstash bubble bar, check that bubbles
alpha slowly animates in
Change-Id: I3cfdb715e1703bd2195c809fd77751a216558176
Fixes bubbles stash translation not getting cleared up after stash
animation finishes.
Bubbles are clipped using an outline animator during the stash
animation. They need separate translation applied to keep them within
the bounds of the bubble bar that is also shrinking and moving.
Set the translation for the bubbles in the stash controller so we can
reset the translation after the animation has finished.
Bug: 365829293
Flag: com.android.wm.shell.enable_bubble_bar
Test: TransientBubbleStashControllerTest
Test: have bubbles in bubble bar, trigger a new auto expanding bubble,
check translation for bubbles
Change-Id: Ic194afdb4d650fcd525355d8bae08dd651d1ea05
Moved DesktopVisibilityController to TIS for 3P launcher support.
Flag: EXEMPT bug fix
Fixes: 338063030
Fixes: 357859025
Test: Launched overview and resumed desktop task from desktop mode on 1P and 3P launchers
Change-Id: I64e99a32ed13bcb6e4a81a18c29df2643373dc35
Use separate timings for bubble icons and bubble bar background when
stashing and unstashing.
Follows alpha timings applied to taskbar background and icons.
Bug: 345488489
Test: TransientBubbleStashControllerTest
Test: stash and unstash bubble bar in app by swiping up from taskbar
Test: expand and collapse bubble bar in app by swiping up on bar
Test: expand and collapse bubble bar on home screen by tapping on it
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I485f6346539cb6c8ea6dd4d15f25a6421021fec1
Use a similar animation for bubble bar icons as we use for taskbar. When
stashing or unstashing, use a reveal animator to show the icons.
Previously we were scaling the icons to the desired size.
New reveal animator matches what is used for taskbar.
Bug: 345488489
Test: TransientBubbleStashControllerTest
Test: stash and unstash bubble bar in app by swiping up from taskbar
Test: expand and collapse bubble bar in app by swiping up on bar
Test: expand and collapse bubble bar on home screen by tapping on it
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I24b0c64673d6becfa2ed68993bb95fe78e105670
Only scale bubble bar background during stash and unstash animation.
Follows the logic used for taskbar. We scale only the background and
clip the icons separately.
Bug: 345488489
Test: PersistentBubbleStashControllerTest
Test: TransientBubbleStashControllerTest
Test: BubbleBarViewAnimatorTest
Test: stash and unstash bubble bar in app by swiping up from taskbar
Test: expand and collapse bubble bar in app by swiping up on bar
Test: expand and collapse bubble bar on home screen by tapping on it
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Ifc7922c444f2179fc49643424815e5e7dde519cc