Commit Graph

515 Commits

Author SHA1 Message Date
Ats Jenk d819f32e46 Animate bubble bar alpha when notif shade opens
Similar to taskbar, animate the alpha for bubble bar when notification
shade is expanded.

Bug: 345687278
Test: have bubbles on home screen, swipe down notification shade,
  bubbles are hidden with an animation
Test: have bubbles in app, stashed, swipe down notification shade,
  no change
Test: have bubbles in app, unstashed, swipe down notification shade,
  bubbles hidden with an animation
Test: receive bubble notification while shade is open, check that
  bubble bar is not shown

Test: compare bubble bar shadow and stroke before and after change
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I74af6a7230f81628540f9b935cbe7dc801bd7a01
2024-10-03 15:33:38 -07:00
Ats Jenk bf09e036b3 Merge "Have bubble bar unstash gesture track finger" into main 2024-09-24 22:33:02 +00:00
Sunny Goyal e1b7ca566e Merge "Moving various application into related methods to a separate class" into main 2024-09-24 22:05:52 +00:00
Ats Jenk 26d74b9ec0 Have bubble bar unstash gesture track finger
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
2024-09-24 09:56:49 -07:00
Sunny Goyal 28d6bbd6b4 Moving various application into related methods to a separate class
> This avoids duplicate RPCs when trying to get multiple properties
  from AppInfo
> This would be used in a followup cl when AppInfo is added to caching
  logic in IconCache

Bug: 366237794
Test: atest ApplicationInfoWrapperTest
Flag: EXEMPT refactor
Change-Id: I55b964d4f8cfa1ff1770e310ac278719495e285d
2024-09-23 22:09:24 -07:00
Jon Miranda 9c09196dfd Revert "Add support for taskbar background to wrap around hotseat"
This reverts commit 5dc07d786f.

Reason for revert: b/360116669

Bug: 345768019
Change-Id: Id70ceed141e2106f746d4a0e68a09675ba45dd28
Fixes: 360116669
Test: open taskbar, open all apps w/ ime, use ime back button
Flag: com.android.launcher3.enable_scaling_reveal_home_animation
2024-09-23 22:38:35 +00:00
Jon Miranda 7645ef2ebd Simple implementation of Taskbar Overflow.
- Adds placeholder view to represent the Overflow affordance.
- Overflow button will always appear as long as there are any
  recent apps.*
- Click / long click on the button will open KeyboardQuickSwitch
- Relevant code is Guarded by Flags.taskbarOverflow.

*Note that this is not up to spec. This change is only meant to
setup the codebase to support Taskbar Overflow.

Bug: 368119679
Test: open app, enter desktop windowing, click overflow button
Flag: com.android.launcher3.taskbar_overflow
Change-Id: I47f96797408fda09e8326ba8fb7981c91de80e36
2024-09-21 00:28:20 +00:00
Jon Miranda ab0372e767 Clear overlay when swiping up to unstash taskbar.
Once taskbar is unstashed, the user cannot return back to the overlay. We can
clear it here to set the expected state once the user goes home.

Fixes: 359096594
Test: open -1, launch app, go home
Flag: EXEMPT bugfix
Change-Id: I8059c2c45f10d15701ff2961480aef002d273a06
2024-09-18 20:42:38 +00:00
Jon Miranda aec1e05be5 Migrate ENABLE_ALL_APPS_BUTTON_IN_HOTSEAT to launcher.aconfig
Flag: com.android.launcher3.enable_all_apps_button_in_hotseat
Test: N/A
Bug: 270393897
Change-Id: Ib62a2f46a440d8f0d3f569c09c4f8754715db4ee
2024-09-16 22:00:39 +00:00
Mykola Podolian 56cda496c6 Merge "Update placement of the nav bar in persistent taskbar for 3 button nav" into main 2024-09-16 21:49:54 +00:00
Jon Miranda 86a4b653b9 Add FLAG_DELAY_TASKBAR_BG_TAG to restrict when taskbar bg anim gets delayed.
We set it only when user swipes up to unstash.

Fixes: 360778703
Test: swipe up to home, long click on taskbar icon before it settles
Flag: com.android.launcher3.enable_scaling_reveal_home_animation
Change-Id: I24ff466ee6730e3739d85307363567cfa1455cbf
2024-09-13 19:08:46 -07:00
mpodolian 04088ebef7 Update placement of the nav bar in persistent taskbar for 3 button nav
Implemented nav bar placement update to be located opposite to the
bubble bar.
When bubble bar is moved to the other side of the bar, 3 button nav will
swap sides (without animation).
If taskbar has to be repositioned it does that with the animation.

Test: TaskbarViewControllerTest
Bug: 346381754
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Id031706183c60cbd9c67537b01530acb43bae614
2024-09-12 16:42:15 -07:00
Treehugger Robot 206e15b286 Merge "Move DesktopVisibilityController to TouchInteractionService" into main 2024-09-12 02:32:00 +00:00
Schneider Victor-Tulias 2b46c945a7 Move DesktopVisibilityController to TouchInteractionService
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
2024-09-11 09:56:35 -07:00
Jagrut Desai 3405c0425a Merge "Fix Taskbar Container not being aligned center in 3 button nav mode" into main 2024-09-10 16:28:23 +00:00
Jagrut Desai a4f7e4577a Fix Taskbar Container not being aligned center in 3 button nav mode
We were applying padding to taskbar container in 3 button navigation mode which we don't need as icon size are already correct.

Test: Manual, Presubmit
Bug: 364492586
Flag: EXEMPT bugfix
Change-Id: Ib9bf55edf2b7bb67fcbeb044e0ad1e90027b17a6
2024-09-09 17:29:03 -07:00
Tracy Zhou 7b30d2d102 Pipe appTransition signal to taskbar to pause region sampling when it's ongoing
Bug: 361593564
Test: https://android-build.corp.google.com/builds/abtd/run/L78300030006280283
Flag: EXEMPT bugfix
Change-Id: Ib874e2b44c1cc59280da1250fd35f01572c39221
2024-09-08 21:50:18 -07:00
Alex Chau 54fc5e0e52 Improve Task launch logging and function naming
Fix: 360186814
Test: manual
Flag: EXEMPT REFACTOR
Change-Id: I22c5a08382800941f0dd8f64f6129438ac04edaa
2024-09-05 16:58:06 +01:00
Ats Jenk 9ab2b8c785 Update bubble bar stash and unstash animation
Bubble bar should stash and unstash from the handle.
Update the animation to match what is used for the taskbar animation.
Fix the stash handle reveal animation to animate the stash bounds to
bubble bar bounds and back.
This gives the effect of the handle morphing into the bubble bar and
bubble bar morphing back into the handle.

Bug: 345680453
Flag: com.android.wm.shell.enable_bubble_bar
Test: atest TransientBubbleStashControllerTest
Test: have bubbles in bubble bar and be in app, swipe up for taskbar and
  observe the bubble bar handle transforming into the bubble bar
Test: with taskbar and bubbles expanded, check that bubble bar
  transforms into the handle
Change-Id: I8508e9207092774cbdb990e65f7f84e56a924d0c
2024-08-29 22:34:19 -07:00
Jagrut Desai bc98db6820 Merge "Use TaskbarAllAppsButtonContainer and TaskbarDividerContainer in TaskbarView" into main 2024-08-29 21:44:04 +00:00
Jagrut Desai 6060db4970 Use TaskbarAllAppsButtonContainer and TaskbarDividerContainer in TaskbarView
This cl includes
	- Usage of TaskbarAllAppsButtonContainer and TaskbarDividerContainer in TaskbarView. This can be seen as a refactor.
	- Animation refactor related to all apps button container refactor

Test: Presubmit
Bug: 356465292
Flag: com.android.launcher3.enable_taskbar_customization

Change-Id: I5b7c4f56aacac18fc6872f77b15e2e9ae896799e
2024-08-29 11:11:35 -07:00
Jagrut Desai 62fb48d247 Merge "Extend DesktopVisibilityController Funcationality to handle taskbar corner radius in desktop windowing mode" into main 2024-08-28 23:36:08 +00:00
Jagrut Desai e62cb76491 Extend DesktopVisibilityController Funcationality to handle taskbar corner radius in desktop windowing mode
This cl includes
	- adding support for listenting into when desktop window mode task is resizing and we need to adjust taskbar corner radius.

Test: Presubmit
Bug: 348335379
Flag: com.android.window.flags.enable_desktop_windowing_mode
Change-Id: Ic6ea3dc1353df7fa4b8079106f20fade0f740683
2024-08-26 11:39:40 -07:00
Tracy Zhou e5be9281c5 Only call notifyUpdateLayoutParams when the params is changed
Bug: 361405157
Test: manual
Flag: com.android.wm.shell.enable_taskbar_on_phones
Change-Id: Ieddcfbc8a8deea9415fe9815926e5fa5552b4be3
2024-08-24 03:10:42 +00:00
Mady Mellor 788a6ebb74 Make an input consumer for bubble bar
Instead of unstashing bubble bar in TaskbarUnstashInputConsumer
handle it in its own input consumer instead. This is a nicer
separation of concerns and simplifies the logic in both places.

Additionally, this fixes issues where swiping up the bubble bar
handle might initiate / be handled by gesture nav (or all apps) when
really any events originating on bubble UI should be managed by
bubbles instead.

Adds some mostly mock'd tests to check that the static method used
to indicate if bubbles should take the event or not works correctly.

Flag: com.android.wm.shell.enable_bubble_bar
Test: manual - test swipe up on bubble bar handle in an app
             - test swipe up on bubble bar on home - it should
               open & all apps / launcher transition shouldn't happen
             - longpress to drag bubbles around on home and overview,
               try the collapsed bar & individual bubbles in the
               expanded bar
             - test dragging on the bubble bar after it's revealed
               in an app
Test: atest BubbleBarInputConsumerTest
Bug: 345488529
Change-Id: I964d213d71de15e4350cff5202dfb9343de1af14
2024-08-19 15:26:37 -07:00
Pat Manning b488c88fa3 Show and hide taskbar tooltips immediately.
Fix: 356352494
Test: TaskbarHoverToolTipControllerTest
Flag: EXEMPT bugfix
Change-Id: Ie7dc1f341cf059bb38f61fa185152cb2555e36b1
2024-08-15 17:59:59 +01:00
Tracy Zhou ab63a991cd Do not animate unfolded bar when folded on certain SysUI flag update
Inspired by b/276864833

Test: https://android-build.corp.google.com/builds/abtd/run/L42600030005659107
Bug: 355973871
Flag: com.android.wm.shell.enable_taskbar_on_phones
Change-Id: I1c06062a17f147c3252048373eedfa53db356572
2024-08-07 22:11:02 -07:00
Tracy Zhou 7a247fb2ac Merge "[Taskbar Performance] Avoid calling notifyUpdateLayoutParams in code logic specifically for unfolded taskbar when folded" into main 2024-08-06 19:14:26 +00:00
Tracy Zhou 2cfc2e1b1c [Taskbar Performance] Avoid calling notifyUpdateLayoutParams in code logic specifically for unfolded taskbar when folded
Bug: 355968858
Test: https://android-build.corp.google.com/abtd/run/L59700030005634589/?referrer=email
Flag: com.android.wm.shell.enable_taskbar_on_phones
Change-Id: I27ee8aefa7dbb42028de4c2de617c0deac4452e8
2024-08-04 09:47:59 -07:00
Mady Mellor 5e8c0d60cc Move bubble icon / content loading into its own controller class
I think this simplifies the BubbleBarController class and makes it
a bit easier to deal with the optional overflow (done in other CLs).

Flag: com.android.wm.shell.enable_bubble_bar
Test: manual - add some bubble to bubble bar, check that the overflow
               is there & can be opened
Bug: 334175587
Change-Id: Ie17fa0279a981a019d5d50b9f71dc87f49d98dee
2024-08-02 10:30:00 -07:00
Treehugger Robot ca4cc641ce Merge "Fix filtering of DesktopTaskViews" into main 2024-08-01 12:29:09 +00:00
Orhan Uysal 9c0392e08d Fix filtering of DesktopTaskViews
When finding last active tasks we didn't account for the fact that there
could be more than 2 tasks in a GroupTask. This cl fixes that so it
finds the correct last active tasks in desktop cases.

Also make sure that if a  DesktopTaskView is found, we don't launch it
through TaskView#LaunchTasks to create a transition that we can handle
in WM Shell.

Fix: 327447672
Fix: 354171747
Flag: EXEMPT Bugfix
Test: atest SplitSelectStateControllerTest
Change-Id: I71cc630a79f23e5eaad10b3c2284496422ce6994
2024-08-01 10:12:03 +00:00
Mykola Podolian fcde085beb Merge "Integrated new BubbleStashControllers into the existing code." into main 2024-07-31 16:43:17 +00:00
mpodolian 484ff0fe9c Integrated new BubbleStashControllers into the existing code.
Integrated the PersistentTaskbarStashController and the
TransientTaskbarStashController into the launcher code. Made changes to
the TaskbarInsetsController to set appropriate touchable zones. Updated
the TaskbarUIController to not start the overview transition on clicks
for the collapsed bubble bar.

Bug: 346391377
Fixes: 350065038
Fixes: 355664783
Flag: com.android.wm.shell.enable_bubble_bar_in_persistent_task_bar
Test: com.android.launcher3.taskbar package tests

persistent taskbar and transient taskbar manual testing:
- on launcher home screen expand bubble bar, switch between bubbles,
remove bubble via bubble menu, add bubble, remove bubble with the drug
gesture, add bubble, collapse bubble bar
- repeat previous test on launcher overview screen and inside any
application
- after last test drag expanded bubble view to the opposite side of the
screen

Change-Id: I50f2c510854c4895fdfc9bd453a261c2103286fd
2024-07-30 18:36:05 -07:00
Jagrut Desai f35cb42732 Merge "Initialize TaskbarFeatureEvaluator and SpecsEvaluator onlyu if customization is on" into main 2024-07-30 22:19:10 +00:00
Jon Miranda e8b47c540f Merge "Add support for taskbar background to wrap around hotseat" into main 2024-07-30 15:59:48 +00:00
Jagrut Desai 5e8b535af6 Initialize TaskbarFeatureEvaluator and SpecsEvaluator onlyu if customization is on
Test: presubmit
Bug: 353841430
Flag: com.android.launcher3.enable_taskbar_customization
Change-Id: I5699e99eee0817327ca66598bfccb622801762ab
2024-07-29 15:14:55 -07:00
Jon Miranda 5dc07d786f Add support for taskbar background to wrap around hotseat
Currently only enabled for app launch animation

Future work is planned:
- Overview to home
- App dismiss
- When QSB is drawn inline

Bug: 345768019
Test: Launch an app, taskbar background and stashed handle will
      first wrap around hotseat before transforming into the
      stashed handle.
      Verified by locally forcing taskbar background and
      stashed handle to always draw.
Flag: com.android.launcher3.enable_scaling_reveal_home_animation
Change-Id: I9ab1870f87247b6a1b53a352ac3eb0183b7a1a1d
2024-07-26 08:10:50 -07:00
Liran Binyamin 2a47a4a68d Fix squished hotseat due to bubbles
Hotseat supports adjusting its layout to make room for bubbles when
needed. There are 2 events that trigger this:
  1. When Hotseat's layout is reset, it checks for whether bubbles
     are showing.
  2. When Bubble Bar visibility changes it notifies hotseat so that
     it can update itself.

Folding the device is recreated triggers both hotseat layout reset
and recreation of taskbar, but the order in which these happen is not
guaranteed. Sometimes hotseat checks for the status of bubble bar
which may be visible if taskbar hasn't been recreated yet.

This change makes sure that hotseat updates itself after taskbar is
recreated and the ui controller is set, so that it cleans up any
adjustments it may have if bubbles are not visible.

This change also updates the way QSB adjusts itself for bubbles.
Previously it always animated from the same start value to a target
value. Now the animation starts from its current width to the target,
so that if the current width is already equal to the target width,
there is no visible change.

Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 349430356
Test: manual
       - unfold the device
       - create bubbles
       - observe hotseat adjusts itself for the bubble bar
       - fold the device
       - observe bubble bar is gone and hotseat shows correctly
Test: manual
       - start a youtube video in full screen
       - swipe from the edge of the screen to show the gesture nav
       - swipe on the gesture nav to go home
       - observe that the QSB does not animate
Change-Id: Ia0267ec518d6af9c3c3b68f17bb20ea67a49e5fd
2024-07-24 12:49:17 -04:00
Treehugger Robot f3e8844b8c Merge "Revert "Fix squished hotseat due to bubbles"" into main 2024-07-23 23:16:48 +00:00
Liran Binyamin f9650bd236 Revert "Fix squished hotseat due to bubbles"
This reverts commit a7821390e2.

Reason for revert: b/354648445

Fixes: 354648445

Change-Id: I069d6d72a59ec273e8b7776512ef9015bdb862c0
2024-07-23 19:56:52 +00:00
Alina Zaidi 3835f93237 [Dev options][DW flag] Update all usage of enable_desktop_windowing_mode flag to use DesktopModeFlags
Test: Current tests pass
Bug: 348193756
Flag: com.android.window.flags.show_desktop_windowing_dev_option
Change-Id: I96107f7c2964ee8261ad0a161163491d6f7d4d39
2024-07-22 20:33:02 +00:00
Jagrut Desai c9174e17a2 Merge "Add support for different container and space calculation logic." into main 2024-07-16 20:16:10 +00:00
Jagrut Desai 84151055b7 Add support for different container and space calculation logic.
This CL includes
	- Taskbar container enum class and interface for container to calculate their space needed.
        - Inits and getter of util classes in taksbar activity context.
        - Taskbar Icons specs not have default margins and minimum touch target specs
	- Updates to the test
        - Logic for calculating the space needed for taskbar container

Test: Presubmit
Bug: 341146605
Flag: com.android.launcher3.enable_taskbar_customization
Change-Id: I89e9d521476902a9027f6fd0cebdc2690b2e5f31
2024-07-16 10:48:51 -07:00
Brian Isganitis fd1cc12054 Merge changes I2b87ab88,I939d8202,Ibedd8cae into main
* changes:
  Introduce rule for changing taskbar pinning preferences.
  Reinject controllers when Taskbar recreates itself.
  Inline showTaskbarFromBroadcast.
2024-07-13 19:01:33 +00:00
Brian Isganitis 1a03740ebd Inline showTaskbarFromBroadcast.
Feels like it should be the activities' responsibility to coordinate the EDU with stashing. All of these methods are also public to TaskbarActivityContext.

Test: Compiles
Bug: 346394503
Flag: EXEMPT refactor
Change-Id: Ibedd8caec59da3b3a14c15d0c948bf1069ca3c6c
2024-07-12 16:00:50 -04:00
Schneider Victor-tulias f67d384f86 Merge "Revert^2 "Add CUJ instrumentation for KQS"" into main 2024-07-12 14:59:45 +00:00
Liran Binyamin e29e31922f Merge "Fix squished hotseat due to bubbles" into main 2024-07-10 16:10:41 +00:00
Schneider Victor-tulias a929c7ab75 Revert^2 "Add CUJ instrumentation for KQS"
0947d9f618

Change-Id: Ifc6f2ae8f447939f274fb6167cc74c0cd2e89652
2024-07-10 14:30:58 +00:00
Liana Kazanova 5de87a8908 Merge "Revert "Add CUJ instrumentation for KQS"" into main 2024-07-09 22:10:40 +00:00