Commit Graph

459 Commits

Author SHA1 Message Date
Brian Isganitis f7ca8d60be Merge changes I6e7c349d,If6c74b3b,Ib276e9dc,Ida0f7cc0 into main
* changes:
  Override DisplayController on main thread.
  Add annotations for manipulating secure settings.
  Don't use UiThreadTest for Taskbar Unit tests.
  Suspend Launcher taskbar while removed for tests.
2024-07-04 02:26:46 +00:00
Pat Manning fc1d2daa63 Prevent taskbar icon tooltip from showing on hotseat transition.
Fix: 350512938
Test: TaskbarHoverToolTipControllerTest
Flag: EXEMPT bugfix
Change-Id: Ifc1647834358366b2d98555138edd4ad6286c16e
2024-07-03 13:15:36 +01:00
Brian Isganitis 160ed1d31a Add annotations for manipulating secure settings.
By default, tests will run with user setup complete and kids mode
disabled.

Test: TaskbarUnitTestRuleTest
Flag: TEST_ONLY
Bug: 230027385
Change-Id: If6c74b3b2c07aa0eac5b6bda933b565351d65188
2024-07-02 21:46:05 -04:00
Tracy Zhou 027600a259 Pipe nav bar transitions logic into task bar
Bug: 349155860
Test: manual
Flag: com.android.wm.shell.enable_taskbar_on_phones
Change-Id: Idaf7ecc7b964a2c406ddf4329b64971b08f5d7de
2024-06-25 22:01:34 -07:00
Tony Wickham 4e1befb394 Handle running task launch properly in desktop mode
- Move logic from KeyboardQuickSwitchViewController to handle
  bringing desktop tasks to front, and still support recent
  tasks for non-desktop mode.

Flag: com.android.launcher3.enable_recents_in_taskbar
Test: manually launch tasks from the Recents section in both
Desktop mode and full screen mode (running vs recent)
Bug: 315354060

Change-Id: I0520351b4d0095a3538c6165acd82a7b4c45a5e2
2024-06-19 00:25:45 +00:00
Saumya Prakash f3e12f2b31 Merge "Change Pinned taskbar corners to be fixed." into main 2024-06-13 20:17:37 +00:00
Brian Isganitis e59b640ffc Merge "Initial TaskbarUnitTestRule with example overlay controller tests." into main 2024-06-12 19:26:17 +00:00
Jon Miranda 1e0ec5ebeb Merge "Delay taskbar background fade in animation - Taskbar background will fade in based on 1. Velocity threshold 2. End target gesture destination" into main 2024-06-12 16:02:20 +00:00
Brian Isganitis 9eaae4b6a4 Initial TaskbarUnitTestRule with example overlay controller tests.
Flag: TEST_ONLY
Bug: 230027385
Test: TaskbarOverlayControllerTest
Change-Id: I858906ece7e67677962ec8b4432bfcca5ec30283
2024-06-11 23:48:13 -04:00
Jon Miranda 4a4b7a8059 Delay taskbar background fade in animation
- Taskbar background will fade in based on
  1. Velocity threshold
  2. End target gesture destination

Bug: 298089923
Bug: 345768019
Test: swipe up fast to go home, note no taskbar bg
      swipe up slow to reveal taskhome, note taskbar bg shows immediately
Flag: com.android.launcher3.enable_scaling_reveal_home_animation DISABLED

Change-Id: I2c16352e1c0c52a8afc49900a39b80383bacde62
2024-06-11 15:39:55 -07:00
Saumya Prakash f9c602d1d9 Change Pinned taskbar corners to be fixed.
Based on new UX guidelines, the corners for the pinned taskbar should be 16 dp.

Fix: 337872323
Test: Put device in 3 button mode and pinned taskbar and observe
sharper, fixed corners. Transient taskbar remains unchanged.
Flag: EXEMPT bugfix

Change-Id: I2130e91dcdc0afb007fde93438f3fa603bc15af8
2024-06-11 22:18:09 +00:00
Tony Wickham a2b510dc23 Move Desktop running apps support into TaskbarRecentAppsController
- Merged DesktopTaskbarRunningAppsController up into
  TaskbarRecentAppsController, which is now initialized directly
- The old TaskbarRecentAppsController was effectively a no-op
  that was always overridden, so merging the one subclass up makes
  things simpler (especially for the follow up CLs which will add
  support for switching between Running and Recent tasks using
  the same underlying data).

Flag: com.android.launcher3.enable_recents_in_taskbar
Test: TaskbarRecentAppsControllerTest
Bug: 315354060
Change-Id: I8411fb832e5dd3d76201d2694dec0b11bd70bbf9
2024-06-11 00:18:23 +00:00
Brian Isganitis e1eaefd537 Initial prototype of tiny taskbar.
Introducing isTinyTaskbar and using in a few places to show Taskbar on
phones.

Disabling for three button mode since the buttons will take up most of
the space. Could also prototype adding meta key as a 4th button in
this case if we feel like it.

Flag: com.android.wm.shell.enable_tiny_taskbar
Test: Manual
Bug: 341784466
Change-Id: Iba07382d9bd5d14fc29ef080a390db561f6fd454
2024-05-23 16:40:58 -04:00
Fengjiang Li 6335460613 [Launcher Jank] Move binder call of RotationChangeProvider to BG thread
Fix: 333771185
Test: record prefetto trace
Flag: NONE not gated
Change-Id: I68a574cbcfed84876fe57fa5be03ca189e569f7e
2024-05-16 15:17:12 -07:00
Chris Göllner 0cd995e4ef Convert SysUiState flags from int to long
We already reached the limit of 32 flags for an int. To be able to have
more, changing from int to long.

This is needed, as new flags have to be added.

Flag: NONE
Test: Manually running SysUI and Launcher
Test: Unit tests in CL
Bug: 335625543
Change-Id: Iec1d40218264c7c64c50fd09764aa07c0caa7787
2024-05-13 14:47:33 +01:00
Ats Jenk 8ed5d288d2 Merge "Get display size from DisplayController instance" into main 2024-05-09 22:58:38 +00:00
Ats Jenk 5a4836b64f Get display size from DisplayController instance
DeviceProfile is not updated after rotation. Which led to drag to
reposition using landscape display size in portrait.

Bug: 330585402
Test: have device in landscape, drag bubbles and the bar itself
  left/right, observe that the drop target is shown when passing half
  the screen
  rotate device to portrait, start dragging again, observe that drop
  target is shown on the other side when passing half the screen
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Change-Id: I5c0e2e4ab47a669b6e178b45ab132989029f5913
2024-05-08 15:59:54 -07:00
Tracy Zhou 9d602e684c Fix back button sometimes not showing up in the initial setup screen
A few things to note
- We use gesture nav layoutter because it's the mode in which we show back button rendered by IME. There might be other historical reasons but it is what it is.
- The back button isn't necessarily laid out correctly with this layoutter (currently we don't adjust anything in layoutButtons.

Fixes: 338876161
Test: Repeatedly get in setup mode, and make sure the back button is visible
Change-Id: I402273c2868f3f46a12b00918dab3f36fbe82204
2024-05-07 18:15:51 -07:00
Tracy Zhou b297d4fb83 Update SUW swipe home logic for taskbar stashing
- Reverted the previous change. It doesn't fix the issue when launching setup mode with command line. The fact that it looked as if it's fixed from factory reset might be a fluke
- Found out that we unstash the task bar to home from setup somewhere in TaskbarStashController. This is related to stashed alpha only.

Fixes: 337738795
Test: Finish setup, swipe home in folded, and observe home handle is visible.
Change-Id: I04daf41ae9a1c3b7e6e4962dd4a8c62b708e0a54
2024-05-06 13:05:41 -07:00
Ats Jenk b67d07912c Merge "Drag bubble in bubble bar to other side" into main 2024-05-03 16:41:55 +00:00
Fengjiang Li c2ef74306b Merge "[Launcher Jank] Pass single threaded Executor to RotationButtonController so that binder calls are ordered." into main 2024-05-02 20:08:50 +00:00
Jagrut Desai 0fd34b783c Merge "Taskbar in Desktop Windowing Mode" into main 2024-05-01 22:49:48 +00:00
Ats Jenk 363a841a04 Drag bubble in bubble bar to other side
Adds support to pin bubble bar to other side of the screen by dragging
from one bubble. The entire bubble bar will move to the other side.
Implements the BaseBubbleBarPinController to handle dragging an
individual BubbleView.
Updates how translation and alpha get applied during BubbleBarView
location animation when a bubble is being dragged.
Dragged bubble is part of the BubbleBarView and when it is being
dragged, and we animate the bubble bar to the other side, we need to
ensure that the animation does not affect the dragged bubble.
Updating the translation and alpha for the BubbleBarView ViewGroup will
affect the dragged bubble as well. Updating how translation and alpha
gets applied to BubbleBarView so that it gets applied to individual
child views and then we can skip applying it to the dragged view.

Bug: 330585402
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Test: drag bubble from expanded bubble bar to left and right

Change-Id: I1fe2ba9fd466ff97d3b3af763bdcce30c3f98606
2024-05-01 14:53:14 -07:00
Jagrut Desai 2e8ca87c21 Taskbar in Desktop Windowing Mode
Test: presubmit
Bug: 330146462
Flag: NONE
Change-Id: Ib33f90704c3010df6a52e2a1c420960b11dbd0d4
2024-05-01 09:29:24 -07:00
Fengjiang Li 08af8696ff [Launcher Jank] Pass single threaded Executor to RotationButtonController so that binder calls are ordered.
Bug: 338036218
Test: presubmit
Flag: NONE
Change-Id: Ic398bf4be53c6b2cc5f4fa11aea5c3b451d5ddf8
2024-04-30 22:41:01 +00:00
Gustav Sennton f74d8b7264 Re-fetch DesktopVisibilityController when needed instead of just once
When creating DesktopTaskbarRunningAppsController the Quickstep Launcher
might not be available, meaning we pass a null
DesktopVisibilityController to DesktopTaskbarRunningAppsController.
With this CL we refetch DesktopVisibilityController whenever needed.

Bug: 338035946
Test: manual, and DesktopTaskbarRunningAppsControllerTest
Flag: ACONFIG com.android.window.flags.Flags.enableDesktopWindowingTaskbarRunningApps DEVELOPMENT
Change-Id: I8b806e2d0addbf8fb5ab6a3d419a4691c445f223
2024-04-30 16:07:13 +00: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
Saumya Prakash 17cd6ca62a Only run search edu when enabled, also make code more generic.
We only need to run the Search edu if it is enabled on devices. The code
itself is also made more generic in terms of method and variable names.

Fix: 330401405
Test: Enable and disable the search function and check whether the edu tooltip shows
up for each specific use case.
Flag: ACONFIG com.android.launcher3.enable_taskbar_pinning NEXTFOOD

Change-Id: I1cea3ee56922c0b47ae7e8379aad4b36570daa17
2024-04-23 22:02:15 +00:00
Gustav Sennton 0b33b172fb Show running apps in Taskbar when in Desktop Mode
In Desktop Mode: show currently running (Desktop) apps in Taskbar

Bug: 332504528
Test: DesktopTaskbarRunningAppsControllerTest
Flag: ACONFIG com.android.window.flags.Flags.enableDesktopWindowingTaskbarRunningApps DEVELOPMENT

Change-Id: I10dec022f4b16562e81d7cbd5f9ce835474e9d20
2024-04-23 10:43:27 +00:00
Brian Isganitis 3f4e5812ce Merge "Prevent meta shortcut from cancelling split select state." into main 2024-04-10 07:34:47 +00:00
Brian Isganitis 84fbec0b16 Prevent meta shortcut from cancelling split select state.
There are two things that need to be changed for this to work:

1. Make the isInOverview condition check for any Overview UI (including
   the split select state, modal, etc.)
2. Toggle Home All Apps directly, because firing the intent will cause
   Launcher to pause and resume before the intent is handled. We
misinterpret the pause as a request to cancel split screen. Since
TaskbarManager has a reference to Launcher, we might as well call the
method directly.

Test: Manual
Fix: 319076403
Flag: N/A
Change-Id: Ib8899188f593a168a054a16717df4a95be098557
2024-04-09 16:10:56 -07:00
Sunny Goyal 11117d9b2a Using resource override instead of code-swap for ApiWrapper
Bug: 330920490
Flag: None
Test: Presubmit
Change-Id: Iac19f32e64d2c76ed5b4f8592943ee4ae7af51b5
2024-04-09 11:14:44 -07:00
Treehugger Robot 6539e29882 Merge "Launch AppPair live tile when not visible" into main 2024-04-05 02:08:17 +00:00
Vinit Nayak 637274ebc9 Launch AppPair live tile when not visible
* End the recents animation and then relaunch as if
from scratch
* We explicitly ignore the anim for end of recents animation
since that will cause the taskbar to quickly show and stash
again, and we know in this case that we'll quickly be launching
right back into an app

Test: Tested w/ live tile + non live,
fullscreen + app pairs
Bug: 316485863

Change-Id: I6ae8cccc01401935bf96fba8a154216e6b1ad701
2024-04-04 15:58:17 -07:00
Ats Jenk 599ed3ba06 Merge "Create drop target for bubble bar" into main 2024-04-01 17:14:55 +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
Ats Jenk f221b8a7de Create drop target for bubble bar
When dragging bubble bar in launcher, show drop target when drag passes
middle of the screen.

Bug: 330585397
Flag: ACONFIG com.android.wm.shell.enable_bubble_bar DEVELOPMENT
Test: manual
Change-Id: I52c3e9ac0b7c36e2207640baf75dc44300b522ef
2024-03-28 14:21:33 -07:00
Gina Ko 5b845d2831 Reapply "Support toggling Taskbar All Apps with 3P Launcher." am: 036a83cd99
The revert was not supposed to be auto-merged.

This reverts commit 5a3bf93d82, reversing
changes made to 84f8002586.

Bug: 331384026
Change-Id: Ieb11a8544db90259aae856c4af805c37ce9e68cc
2024-03-26 15:03:31 -07:00
Liana Kazanova 5a3bf93d82 Revert "Support toggling Taskbar All Apps with 3P Launcher." am: 036a83cd99
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/26720630

Change-Id: I235f6d6263be6e39a583ac7b1a0783bfc77533c9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-26 20:57:12 +00:00
Liana Kazanova 036a83cd99 Revert "Support toggling Taskbar All Apps with 3P Launcher."
This reverts commit 176f186a6d.

Reason for revert: DroidMonitor: Potential culprit for http://b/331438065 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.

Change-Id: Ie375277ad2f65199749f0211ab50037d4b37e664
Merged-In: Ie375277ad2f65199749f0211ab50037d4b37e664
2024-03-26 20:34:09 +00:00
Brian Isganitis 176f186a6d Support toggling Taskbar All Apps with 3P Launcher.
Taskbar All Apps exists regardless of the default launcher. Thus, we can
toggle it on large screen devices. This CL ties registering the system
action to default launcher and taskbar's enablement.

Test: adb shell input keyevent 117
Test: AllAppsActionManagerTest
Flag: LEGACY ENABLE_ALL_APPS_SEARCH_IN_TASKBAR ENABLED
Fix: 317259709
Change-Id: I26f0ed9e921beac762f3f9e6aaceb1002ad4801a
(cherry picked from commit c113b277e6)
2024-03-26 01:16:39 +00:00
Tracy Zhou e3720885c1 Merge "Revert "Hide task bar when folding before the new config renders the correct task bar"" into main 2024-03-25 17:39:07 +00:00
Tracy Zhou 4dbac6caa9 Revert "Hide task bar when folding before the new config renders the correct task bar"
This reverts commit dfb334f1e1.

Reason for revert: A bunch of WM fixes are in (b/291562764)

Change-Id: I9d08dab976cda112f802ee91256c09ef2026a01f
2024-03-23 19:35:50 +00:00
Vinit Nayak 5afb093a58 Merge "Add CUJ Jank interactions for App Pair saving and launching" into main 2024-03-20 20:31:01 +00:00
Vinit Nayak 422a634a24 Add CUJ Jank interactions for App Pair saving and launching
* Added finishCallback consumer to LauncherAccessibilityDelegate
to inform when adding an item to workspace was completed.
* The logic seemed to be dependent on the parameter
"focusForAccessibility", but all callers of that are currently
passing in true

Bug: 328646540
Test: https://paste.googleplex.com/6232597136408576
Newly added CUJs showing up when playing w/ device

Change-Id: Ia4944f8d23634bb92296938ea2d07a6babf6f77c
2024-03-18 16:27:47 -07:00
Vinit Nayak c2a6055768 Merge "Launch overview instance of app for taskbar in Overview" into main 2024-03-18 23:21:23 +00:00
Vinit Nayak b761e9834e Launch overview instance of app for taskbar in Overview
* This only works for fullscreen tasks, app pairs aren't
properly launching yet
* We re-layer the leash to be above launcher since live tiles
are originally below
* The new task comes in from TaskAnimationManager#onTaskAppeared

Bug: 316485863
Test: Tested w/ tapping fullscreen apps in overview when
their thumbnail is scrolled off screen. Animation occurs for
both live tile and thumbnail

Change-Id: I5a3c079244a1517becb845ce25ff9f4e671383b1
2024-03-18 14:41:57 -07:00
Liana Kazanova 7d5531757b Merge "Revert "Add CUJ Jank interactions for App Pair saving and launching"" into main 2024-03-18 18:39:20 +00:00
Liana Kazanova d8d4fb4375 Revert "Add CUJ Jank interactions for App Pair saving and launching"
Revert submission 26567492-appPairsCUJ

Reason for revert: http://b/330185095

Reverted changes: /q/submissionid:26567492-appPairsCUJ

Change-Id: I73d29fe3618a55622e0daa22c9960e3c5783c275
2024-03-18 18:35:02 +00:00
Vinit Nayak 025b06a1a3 Merge "Add CUJ Jank interactions for App Pair saving and launching" into main 2024-03-18 18:06:21 +00:00