summaryrefslogtreecommitdiff
path: root/quickstep/src/com/android/launcher3/taskbar/TaskbarControllers.java
AgeCommit message (Collapse)Author
2021-11-29Merge "Handle configuration changes in floating rotation button" into sc-v2-devTreeHugger Robot
2021-11-26Handle configuration changes in floating rotation buttonNick Chameyev
Update resources in floating rotation button when configurations such as screen density, screen size, current locale have changed. Bug: 200103245 Test: change display size, locale, fold/unfold -> check that floating rotation button resources are updated Change-Id: Ia69f4f8b393a686012e286a1e39822650c562d52
2021-11-24Add TaskbarControllers#runAfterInit()Tony Wickham
And use it in TaskbarModelCallbacks#commitItemsToUI(), which in rare cases can run during init() before other controllers (namely TaskbarStashController) have been initialized. Test: call commitItemsToUI() in TaskbarModelCallbacks#init(), ensure no crash Fixes: 204847702 Change-Id: Ib9df3ea91d41c76ad1d3392e43b444b8b4a91374 Merged-In: Ib9df3ea91d41c76ad1d3392e43b444b8b4a91374
2021-11-05Add popup menu and click handling to taskbar.Schneider Victor-tulias
- Added popup menu support to taskbar icons - Added item click handling for taskbar icon popup menu items Bug: 198438631 Test: long pressed taskbar icons, pressed popup menu items, dragged taskbar icons to start multi-window mode Change-Id: Ibc59c1eada50a877a863c075fbfd3e4accaae008
2021-11-01Move floating rotation button handling to LauncherNick Chameyev
Moves handling of floating rotation button when navigation bar is not created to the launcher. This button was not showing when taskbar is visible as it was initialized in navigation bar (which is not created for large screens). Bug: 200103245 Test: rotate phone when autorotate disabled on inner screen Test: showing rotate suggestion when gesture nav enabled/disabled Change-Id: I13dd555bcd811f1524be7ab9ad51b2b012b3b749
2021-10-28Recreate taskbar when dark mode changesTony Wickham
Also dispatch sysui flags to all controllers upon recreate, not just NavbarButtonsViewController. Additionally, tell the controllers to skip the animation due to the flag changes if it's fromInit. Test: Enable themed icons, switch dark theme in quick settings, ensure taskbar updates Fixes: 204403933 Change-Id: Ic43a50cf0456175f9beba5c29360440f051cbd2d
2021-10-28Update taskbar drag and drop treatmentTony Wickham
- Disable the FastBitmapDrawable icon instead of setting it to invisible - Suspend auto hide during drag and drop (moved to new TaskbarAutoHideSuspendController) Test: Drag and drop from taskbar and ensure the original icon stays in place but desaturated Test: Open immersive app, drag and drop from taskbar and ensure taskbar doesn't hide before drop Fixes: 200816442 Change-Id: I4b895efd043be75e7e7034bd75e751ffdd2cfdd7
2021-10-19Delaying taskbar loading until user setup completedSunny Goyal
> Also keeping it stashed while all-set activity is visible > Creating a shared state (simiar to saved instance state) for taskbar > Keeping taskbar stashed while all-set activity is visible Bug: 194786060 Bug: 201782272 Test: Manual Change-Id: Iab5e082243a206772266aece62d3028f5acb6400
2021-10-08Add a scrim to taskbar for bubbles expanded stateMady Mellor
When bubbles are expanded a scrim is shown on top of everything. Taskbar is layered above bubbles but we still need the scrim to show on top of it. This CL adds the ability to show a scrim on taskbar. The scrim is a view in the taskbar drag layer and is placed between the taskbar and the nav buttons so that it can block touches / scrim the taskbar but still allow the nav buttons to be visible and touchable. Add interpolators for alpha matching what bubbles is using. Test: manual 1 - expand bubbles while taskbar is visible => observe scrim - open manage menu => observe darker scrim 2 - check that taps on scrim collapse manage menu or stack 3 - check there isn't a scrim while taskbar is stashed and bubbles / manage menu are open 4 - check that three button nav works while bubbles are expanded Bug: 197139718 Change-Id: I94c4ecd07f81b2bad55c38525d60f493d3c1f9d8
2021-10-06Move back to end of screen on keyguardVinit Nayak
* Animate it back into position after user unlocks * Re-create taskbar on layout direction change so PropertyHolders are recreated to take into account new values Fixes: 199852418 Test: Tested w/ password + pin for gesture + 3 button Change-Id: Ie7f16f737a8fc12328c05d7628d0e3ae09fc08ca
2021-09-03Add taskbar icons unfold animationNick Chameyev
Adds 'move from center' animation for taskbar icons when unfolding foldable devices. Moves unfold transition progress provider from quickstep launcher activity to TouchInteractionService to widen the scope when this provider is available to cover both launcher activity and taskbar. Launcher activity and taskbar get their own instances of unfold transition progress provider using ScopedUnfoldTransitionProgressProvider wrapper. This wrapper allows to get transition progress provider that emits events only when clients are ready to handle them. Bug: 193794563 Test: manual Change-Id: I27581bd4e145a74f526bf60f2a545e56ded322f9
2021-08-26Add "wave" animation when entering taskbar eduTony Wickham
Each icon scales and translates up, then back down. If the icon is predicted, it also plays a "slot machine" animation through random icons from AllAppsList. Test: Visual Bug: 180605356 Change-Id: Ia41cb0e340347eea6b580d23c8a2386837e9c399
2021-08-18Merge "Tint task bar based on sampling of colors in the area" into sc-v2-devTracy Zhou
2021-08-17Tint task bar based on sampling of colors in the areaTracy Zhou
TODO: Add transition animation Bug: 193938970 Test: manual Change-Id: I0ffb94e0f11d47685a268ee8d057b6997f3a2ff6
2021-08-17Adds initial Taskbar Edu implementation.Andy Wickham
Currently it just pops up with one placeholder image for splitscreen. The Next button doesn't do anything. Screenshots: Light: https://screenshot.googleplex.com/B27CwBcwobHTghN.png Dark: https://screenshot.googleplex.com/48EuJZv8evd5RGW.png Known issues: - Back gesture is picked up behind by the app behind the taskbar. - When the flag is enabled, the Edu shows up each time you open an app, rather than only the first time. Bug: 180605356 Test: Manual Change-Id: Ifba9aa59abf1501b5f8ddebb3fcc13df85f6efaa
2021-07-15Binding Taskbar directly from Launcher modelSunny Goyal
This allows taskbar to be loaded even in case of 3P Launchers and removes dependency on LauncherActivity lifecycle Bug: 187353581 Bug: 188788621 Test: Manual Change-Id: I5a0988e0697b41677d4c58f0213aef14ec0c0972
2021-06-18Initial commit of taskbar stashingTony Wickham
- Added StashedHandleViewController to provide properties such as ViewOutlineProvider to animate the handle that's shown in place of taskbar while it's stashed - Added TaskbarStashController to coordinate the stashed state, including orchestrating the animation across taskbar controllers - Added TaskbarStashInput consumer to detect long press in the nav region when taskbar is stashed Behavior: - Long pressing taskbar background animates to the stashed state by morphing the TaskbarView into the stashed handle view and offsetting the background offscreen - We persist the stashed state across app launches and reboot; to unstash, long press the stashed handle - We also visually unstash when going back home Test: long press tasbkar background when in an app to stash it, long press the resulting stashed handle to unstash; while stashed, swipe up to home to also unstash until launching another app Bug: 189503603 Change-Id: I698eff785388dff1ef717c76879719d6af236c2d
2021-06-16Enable 3 button nav for taskbarVinit Nayak
Bug: 180046394 Test: Switched between gesture and button nav on phone and tablet. Change-Id: Iac2357a3256f8b6b36ca49d3680594a91e824a5f
2021-06-15Initial commit of TaskBar on keyguardVinit Nayak
Bug: 180046394 Test: Tested with pin + keyboard + pattern Change-Id: I951d9508b1325c157a9c0d92fa8e77fe8df9c460
2021-06-09Reorganize taskbar controllersTony Wickham
Organize existing properties as follows: - TaskbarViewController contains properties affecting TaskbarView (though child icons are still supplied by TaskbarHotseatController) - TaskbarDragLayerController contains properties related to TaskbarDragLayer itself - Renamed NavbarButtonUiController to NavbarButtonsViewController, following the pattern of TaskbarViewController and TaskbarDragLayerController - TaskbarControllers contains the different controllers to make it easier to construct, initialize, destroy, and pass them around - Removed TaskbarIconController as its responsibilities were moved to more specific controllers Test: compiles and runs, manually tested Bug: 187353581 Change-Id: Idccd95d47117101bf9617e5532a5b87635d2b8f6