Commit Graph

133 Commits

Author SHA1 Message Date
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
Luca Zuccarini d75eacf30d 3/3 Move some Shell utils to the Shared package.
Bug: 322791067
Flag: EXEMPT move only
Test: NA
Change-Id: Iabc42e4c1d9c13667e9d91be5789cf295f3332e1
2024-09-02 09:23:34 +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
Tony Wickham 79f3cefae2 Animate away Recent Apps section when going to home
Also fix calculation for divider position during this transition
when there are recent apps. Added tests as well.

Flag: com.android.launcher3.enable_recents_in_taskbar
Flag: com.android.window.flags.enable_desktop_windowing_taskbar_running_apps
Test: TaskbarViewControllerTest
Bug: 343522351

Change-Id: Ifffd620c1d4c156b37561584d6e3278b39804439
2024-08-21 22:48:06 +00:00
mpodolian 6ba789a98f Added taskbar in/out animation when the bubble bar is expanded/collapsed
Added taskbar icon animation when the bubble bar expansion changes.

If there is enough space to accommodate both bars with spacing in
between, the taskbar remains. If there is not enough space, the taskbar
is animated out and then animated in when the bubble bar is collapsed.

Bug: 346391377
Flag: com.android.wm.shell.enable_bubble_bar
Test: Manual. Set taskbar to persistent mode via 3-button navigation or
through the taskbar itself. Have enough bubbles to cover the taskbar
when the bubble bar is extended. Expand the bubble bar and observe the
taskbar icons animating out. Remove a few bubbles so there is enough
space to accommodate both bars. Expand the bubble bar and observe that
both bars are visible.

Change-Id: I0b03a010c1e49ab39a17934f6629d5496fd66978
2024-08-09 11:10:28 -07:00
Ats Jenk 4e4b8a8402 Include bubble bar location in taskbar announcement
When bubble bar has bubbles, it will be expanded together with taskbar.
Include information about bubble bar appearing together with the taskbar
announcement. During expand include the location of the bubble bar,
whether it is on the left or right.

Bug: 344675357
Flag: com.android.wm.shell.enable_bubble_bar
Test: manual, enable talkback and check that taskbar expand announcement
  includes information about bubble bar, check that when bar is on left,
  announcement includes left and bar is right, announcement says right
Change-Id: I116ed531fe7032940478451508b37f4fd0bc98ff
2024-07-24 13:50:08 -07:00
Tony Wickham c5995c8f6d Load and draw Recent/Running tasks that aren't in Hotseat
- Re-support GroupTask as a tag on TaskbarView BubbleTextViews
- Can tap to launch (startActivityFromRecents) or drag and drop
- Move divider when enable_recents_in_taskbar is true

Behavior:
- While in Desktop mode, all open tasks show up in TaskbarView,
  either in the Hotseat section or the Running apps section
  past the divider. Each one also has a running line indicator.
- While in Fullscreen mode, up to 2 Recent apps that are not
  part of Hotseat will be added to the right of the divider.

Flag: com.android.launcher3.enable_recents_in_taskbar
Test: TaskbarRecentAppsControllerTest
Bug: 315354060
Change-Id: I2e2870cca434b51f276a701860edb32069109159
2024-06-19 00:27:30 +00:00
Jagrut Desai 0214b921aa Revert "[omni] Handle touch slop for LPAA."
This reverts commit 49dc99abb0.

Reason for revert: Failing Nexus Launcher Tests

Change-Id: I145dadaef4ff1959b7e617d7b832150579145725
2024-05-24 21:06:07 +00:00
Holly Sun 49dc99abb0 [omni] Handle touch slop for LPAA.
Only handle touch slop when the taskbar is pinned (not isTransientTaskbar).

Bug: 335018496
Test: manual
Flag: legacy CUSTOM_LPAA_THRESHOLDS disabled
Change-Id: I4dc6dba473455b02208ef254c271a767bd7c8d42
2024-05-14 16:16:02 -07:00
Holly Sun 8b38295fb2 [omni] Dynamically configure timeout for LPAA.
Video: https://drive.google.com/file/d/1N7qOIolcSYM9n3z40FO9O6S_IdLJav9l/view?usp=sharing

Bug: 335018496
Test: manual
Flag: legacy CUSTOM_LPAA_THRESHOLDS disabled
Change-Id: I5b0f7cc7815ecd85c51254ad34f2be521c44795c
2024-05-14 12:42:28 -07:00
Anushree Ganjam c9eda41c31 Hardcode the className instead of class.getSimpleName().
class.getSimpleName() causes issues with obfuscation.

Bug: 332171918
Test: Manual
Flag: NA
Change-Id: I5119a7ba0e4e27d8745c94df67881934fed282a4
2024-05-08 12:31:24 -07:00
Gustav Sennton 0eaf9ebdaa Remove references to FEATURE_PC and related Desktop classes in Launcher
Also clean up TaskbarRecentAppsController APIs

Flag: NA
Test: DesktopTaskbarRunningAppsControllerTest
Bug: 330551930
Change-Id: Ibd9c3d6aa1d5423b51a48ed0a972196752d5199a
2024-04-30 13:15:28 +00:00
Jagrut Desai e6f349b3dd Adjusting Taskbar Icons for larger display size
Bug: 323948193
Test: Manual
Flag: NONE

Change-Id: I0bdfcaebf3de050ac850fe42c061c82ffebdb7c2
2024-04-04 14:01:57 -07:00
Jeremy Sim da4ba9336e Merge "Reparent folders and app pairs" into main 2024-03-30 03:06:44 +00:00
Jeremy Sim 742630c2f8 Reparent folders and app pairs
Previously, app pairs and folders shared a common data model, FolderInfo. Now we need to separate them, so a new type, CollectionInfo, will serve as the parent of both types.

Bug: 315731527
Fixes: 326664798
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TRUNKFOOD
Test: Manual, unit tests to follow
Change-Id: Ia8c429cf6e6a376f2554ae1866549ef0bcab2a22
2024-03-29 15:39:28 -07:00
Jagrut Desai bc657f64c3 Merge "Remove Taskbar Pinning menu when in three button navigation mode" into main 2024-03-27 16:46:53 +00:00
Jagrut Desai c6f09490f7 Remove Taskbar Pinning menu when in three button navigation mode
Test: Manual
Bug: 331167630
Flag: ACONFIG com.android.launcher3.enable_taskbar_pinning NEXTFOOD
Change-Id: I257d1d3c0b3b37ef639578d0ccc6ec8d23d3d266
2024-03-26 13:42:09 -07:00
Jeremy Sim b37faec287 Refactor how app pair icons draw
This changes (and cleans up) the way app pair icons are composed. Previously, the background and 2 icons were drawn individually and separately onto the canvas. Now, they are composed into a combined drawable first. This also allows the full icon drawable to be requested by external functions (which will be needed for display app pairs in folder previews).

Bug: 315731527
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TRUNKFOOD
Test: Visually confirmed that app pairs loooks the same in all scenarios: rotation, disabled, themed, taskbar, pinned taskbar. Screenshot test to follow.
Change-Id: I7242e0c525ef578a54a06fb9137fcfc42c6f0e86
2024-03-25 16:43:40 -07:00
Saumya Prakash ba04c0c1dc Remove the tint from taskbar themed icons for dark mode.
We remove the added tint to taskbar themed icons to match how they look
in the hotseat on launcher home screen specifically for dark mode.

Fix: 323952706
Test: Turn on themed icons and dark mode. Compare app icons in taskbar
and in hotseat
Flag: N/A

Change-Id: I4dfe352ca17ef5537e48fcc3cff66ba4fd4f603a
2024-02-28 23:07:07 +00:00
Andy Wickham 0ae51bcdb9 Extract TaskbarViewCallbacks to a separate class + factory.
Also log long presses on the taskbar all apps button.

Test: Manual
Flag: NA
Change-Id: Id2bf194f09007bfccff9f83162e4bcfb6562580f
2024-02-13 18:51:48 -08:00
Jagrut Desai f5a27ac0c5 Fixing folder drawLeaveBehind() with Taskbar Pinning enabled
Test: Manual
Bug: 320579559
Flag: NONE
Change-Id: If0c7cb7cf8deb89868cb34c310c91fd0cf028643
2024-01-22 10:08:09 -08:00
Tracy Zhou 95c4c8d268 Fix crash from folding/unfolding
This is fundamentally caused by the phone device profile not having task bar related attributes, which crashes in icon alignment animation. We had resolved it by skipping this animation based on isPhoneMode check. However, we passed in launcherDp instead of taskbarDp (from TaskbarActivityContext) which doesn't always have the most up to date information in race conditions (e.g. repetitively fold/unfold)

Fixes: 311431054
Test: repetively fold/unfold, make sure it doesn't crash
Change-Id: I65f600112da4123d337b3f59a2fe6dd13ac7af74
2023-12-14 18:39:42 -08:00
Jeremy Sim 2987d95ba4 App Pairs: Implement Taskbar functionality
[App Pairs 8/?]

This CL adds taskbar functionality for app pairs:
- Ability to drag an app pair icon to Taskbar
- App pair launch from Home Taskbar
- App pair launch from Overview Taskbar
- App pair launch from in-app Taskbar

KNOWN ISSUES:
- Bug (b/315190686): if user is inside a running split pair and attempts to launch the same pair from an app pair icon on taskbar, Overview tiles get temporarily messed up (recoverable by leaving Overview)
- User can attempt to split with an app pair icon on the Taskbar. This should result in a "can't split with this" bounce animation on the SplitInstructionsView (to be implemented). Currently does nothing.

Bug: 274835596
Flag: ACONFIG com.android.wm.shell.enable_app_pairs DEVELOPMENT
Test: Manual
Change-Id: I5256547af236fc2deeb192d60bfe1f2b7ddc5647
2023-12-08 15:07:45 -08:00
Tony Wickham 18551f29fe Remove ENABLE_TRANSIENT_TASKBAR and long-press stash support
Flag: NA
Test: manual, TaplTestsTaskbar, TaplTestsPersistent, TaplTestsTransient
Fixes: 270395798
Change-Id: I4ecf5ddcd1206e846538175c684043c5e065fd5d
2023-12-06 22:13:10 +00:00
Pat Manning 2a350af739 Merge "Show taskbar pinning dialog on right-click." into main 2023-11-30 10:57:41 +00:00
Pat Manning 4c5ea5fd02 Show taskbar pinning dialog on right-click.
Fix: 308768942
Test: Manual.
Flag: ACONFIG com.android.launcher3.enable_taskbar_pinning DISABLED
Change-Id: I37e49452fada944186c8300562061bf9650a0d0a
2023-11-21 14:51:15 +00:00
Pat Manning 06ecd24ee3 Allow right-click of taskbar icons to launch long-click menu.
Fix: 290459491
Test: TaplTestsTaskbar#testOpenMenuViaRightClick
Flag: NONE.
Change-Id: Ide85f62e5b08d5261f15871e85d3250cc66d0919
2023-11-21 14:45:31 +00:00
Jagrut Desai 2c7556d4c7 Merge "Fix RTL issue with all apps meta icon" into main 2023-11-13 20:13:34 +00:00
Jagrut Desai 1ab8da20f5 Fix RTL issue with all apps meta icon
Test: Presubmit, Manual
Bug: 309453796
Flag: NONE
Change-Id: I5d8bda2c48a0815d7005a0727f67f871f75d4f0f
2023-11-10 09:44:51 -08:00
Jagrut Desai 90dd098c85 Migrate ENABLE_TASKBAR_PINNING to aconfig flag
Test: Manual, Presubmit
Bug: 265437087
Flag: ACONFIG com.android.launcher3.enable_taskbar_pinning DISABLED

Change-Id: I4800230c04feceefa2398e189c493c8c4a7b2fe5
2023-11-09 23:20:03 +00:00
Jagrut Desai 631b284836 Taskbar pinning animation with no recreate
Test: Manual, Visual
Bug: 265436799
Flag: LEGACY ENABLE_TASKBAR_PINNING DISABLED

Change-Id: I84a4d1efdb0bd4a0f856fa1f46b6489ef54a3841
2023-10-26 10:36:48 -07:00
Pat Manning 4c27e8c6f0 Migrate cursor feature flag to trunk stable flag.
Fix: 300054410
Test: TaplTestsTransientTaskbar, TaplTestsQuickstep
Flag: enableCursorHoverStates
Change-Id: I5c320e0fd2bdd2ed39b00b62b1399e163c3384e7
2023-10-20 12:17:36 +01:00
Jagrut Desai 6965fdd12a Always use Transient Taskbar All apps icon for taskbar pinning
Test: Manual, Visual
Bug: 265436799
Flag: ENABLE_TASKBAR_PINNING
Change-Id: I253f3b7f6b0c1d198ba7c9849e99f6cf4b89a006
2023-10-13 12:49:18 -07:00
Mady Mellor b604e71fe8 Merge "Fix bubbles taskbar scrim showing when notification panel is shown" into main 2023-09-21 01:25:07 +00:00
Mady Mellor b898a3c8d3 Fix bubbles taskbar scrim showing when notification panel is shown
TaskbarScrimViewController was previously unaware of visibility
changes that happened to taskbar outside of when the sysui state
flags changed. Additionally, isTaskbarVisibileAndNotStashing is not
a reliable signal as the visibility might be GONE even though taskbar
is about to animate to be visible (i.e. shade is showing and then
you swipe it back up -- taskbar scrim wouldn't appear because when
the sysuiStateFlags changed, taskbar visibility would still be 'gone'
at that point so the taskbar scrim wouldn't animate back when
the shade is swiped up).

To resolve this, I've added a callback to notify the scrim
controller of visibility changes and it'll update if needed.

Bug: 270634233
Test: manual - enable 3 button nav
             - have a bubble
             - go to overview
             - expand bubbles
             => observe that scrim appears over taskbar
             - swipe down shade
             => observe that scrim fades out
             - swipe shade up
             => observe that scrim fades in

Change-Id: Ibaae8efb90b4558d30795298570208a52b31efb4
2023-09-18 11:49:52 -07:00
Pat Manning c49d60b946 Migrate ENABLE_CURSOR_HOVER_STATES to aconfig
- Keeping FeatureFlags.ENABLE_CURSOR_HOVER_STATES for local testing until aconfig is available in FlagFlipper
- Still reference ENABLE_CURSOR_HOVER_STATES in tests as aconfig still can't be mocked

Bug: 300054410
Test: manual
Change-Id: Id385e8ee32ccf8b920b9b7f9cc620af32def589f
2023-09-14 11:08:02 +01:00
Brian Isganitis 0b9c0589b7 Add All Apps search icon variant behind flag.
Bug: 265170176
Test: https://b.corp.google.com/issues/265170176#comment15
Flag: ENABLE_ALL_APPS_SEARCH_IN_TASKBAR
Change-Id: I0f5fa4fbbab687d92435d299656b9c27d93525b4
2023-09-07 18:29:46 +00:00
Jagrut Desai d34fe6d60c Merge "Correcting Taskbar Icon Layout bounds when Taskbar Divider is present" into udc-qpr-dev 2023-08-18 04:16:36 +00:00
Jagrut Desai e6a895ed6c Correcting Taskbar Icon Layout bounds when Taskbar Divider is present
- Breakout CL part 2
- This is a breakout cl from ag/24272821 to make it more readable and atomic.
- This cl consist of change to correct the icon layout bound calculation when taksbar divider line is present in taskbar view.

Test: Manual, Visual
Bug: 265170176
Flag: ENABLE_TASKBAR_PINNING
Change-Id: I259faf2cc0aa302b83337d104c4820885b925a6a
2023-08-16 13:50:08 -07:00
Jagrut Desai 579188aee0 Refactor taskbar divider view to IconButtonView
- Breakout CL part 1
- This is a breakout cl from ag/24272821 to make it more readable and atomic.
- This cl consist refactoring of Taskbar Divider Line to be using IconButtonView.

Test: Manual, Visual
Bug: 265170176
Flag: ENABLE_TASKBAR_PINNING
Change-Id: I6719dd568986dce7cf9cdf0f287c3f079fd35ba6
2023-08-16 13:11:14 -07:00
Pat Manning da69661add Show tooltips on cursor hover of taskbar icons.
Fix: 250092437
Test: TaskbarHoverToolTipControllerTest
Flag: ENABLE_CURSOR_HOVER_STATES
Change-Id: Ia0463518d13b313b354328078685930215fb7636
2023-07-14 13:42:30 +01:00
Jagrut Desai 2d5bb34b6b Merge "Set AccessibilityPaneTitle for taskbar view" into udc-dev 2023-06-09 22:26:39 +00:00
Jagrut Desai 78ddf47150 Set AccessibilityPaneTitle for taskbar view
we need to set pane title for taskbar view so accessibility service knows to focus/unfocus on it upon it appearing and disappearing

Test: Manual
Bug: 284081291
Flag: Not needed
Change-Id: I5404c97bdc3e1d3308942cd907e7f7701a04bee3
2023-06-08 17:08:40 -07:00
Jon Miranda 95f4472ba9 Update taskbar paddings/sizes to match spec.
Bug: 282798528
Test: manual with screenshots
Change-Id: I00c646d9cd11a9015e14f8311ba2ff233d8321ac
2023-06-07 11:19:50 -07:00
Jagrut Desai 1c9c6d0ea9 Design review updates for Taskbar Pinning
Changes:

- icon allignment animation for taskbar diviver view
- taskbar divider background color according to spec.

Test: Manual
Bug: 265170176
Flag: ENABLE_TASKBAR_PINNING
Change-Id: Ief45e48f4fc9f9b4cc30124c4c93cd3c5a880a33
2023-05-01 14:57:54 -07:00
Jagrut Desai c6d625b8db Exposing functionality to pin Taskbar from TaskbarDividerPopupView.
This CL allows user to long press on Taskbar divider view to bring up divider popup view. It also included functionality of allowing user to turn on always show taskbar from the divider popup view.

Test: Manual
Bug: 265436055
Bug: 265434718
Bug: 265434902
Bug: 265434705
Flag: ENABLE_TASKBAR_PINNING

Change-Id: Ied54d718483a9b06b053d68988e5c294a786002a
2023-04-20 22:04:21 -07:00
Vinit Nayak f00760ac23 Prevent taskbar on phone from crashing
* Update code behind flag to work with transient taskbar
* We explicitly set the mDestroyed flag to false in
TaskbarActivityContext because it gets set to true when
the flag is on, but nothing resets it unless it gets
recreated normally.

Bug: 274517647
Flag: persist.wm.debug.hide_navbar_window
Test: Enable flag and verify no crash
Change-Id: I9a149ffb47a10efedfc9dff8399d12d4c1a31553
2023-04-13 14:33:17 -07:00
Jon Miranda 04f051045c Allow grids to specify if we should start align taskbar in 3 button
nav.

Bug: 259712417
Test: check layout on tablet
      check layout on multi_display devices

Change-Id: I282f51e5d76a30e9ad9d8c52d03d4853e965d65a
2023-04-05 10:29:51 -07:00
Jon Miranda 156ff34f35 Align taskbar so that it does not overlap with nav buttons.
Fixes: 275510698
Bug: 259712417
Test: View device where taskbar should be start aligned
      Update Display size to make everything bigger
      Observe that taskbar icons never overlap nav buttons
Flag: ENABLE_TRANSIENT_TASKBAR true

Change-Id: I246374518f21c4b92d3e02e5582c929a471d9305
2023-03-29 21:04:03 +00:00
Jon Miranda 9c478b6c29 Add taskbarIconSize to GridOption/DisplayOptions
- Renamed variables to make it more clear what they represent
- DeviceProfile will be source of truth for taskbar
  sizes

Bug: 265144213
Test: phone, multi-display, tablet
Change-Id: Id9c19d15a65894fd7645e0f876a4b6527b713c34
Flag: ENABLE_TRANSIENT_TASKBAR=true
2023-03-24 12:29:11 -07:00