Commit Graph

942 Commits

Author SHA1 Message Date
Vinit Nayak
55270a9f70 Allow single root candidate for app pair launch for pip edge case
* Shell will launch single task if requested split apps have one of them
already in Pip
* Create a separate method to set animation for launching from the
appPair icon on workspace
* Reuse the animation method for launching an AppPair icon from taskbar
by specifying which windowing mode to look for if we're launching the
actual split pair vs just one in fullscreen

Bug: 323089902
Test: Launches fine visually
Change-Id: I415343a48e980afd7f4e511558d350cf15b97ca1
Merged-In: I415343a48e980afd7f4e511558d350cf15b97ca1
2024-05-02 22:49:25 +00:00
Brian Isganitis
c383204356 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
(cherry picked from commit c113b277e6)

Change-Id: Ib4d029617442ebf0f637f7e146aa5d001a065515
Merged-In: I26f0ed9e921beac762f3f9e6aaceb1002ad4801a
2024-04-22 22:16:28 +00:00
fbaron
6fba6cdb85 Make hotseat column span responsive
Flag: NONE
Test: DeviceProfileDumpTest, DeviceProfileAlternativeDumpTest, HomeScreenImageTest
Bug: 325084912
Change-Id: Ifa9e8066662a1ab053f66b8800b739d813d2dab8
(cherry picked from commit e4b0b71faa)
2024-04-17 17:56:58 +00:00
Vinit Nayak
674aa03862 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
Merged-In: Ia4944f8d23634bb92296938ea2d07a6babf6f77c
2024-04-09 00:17:21 +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
Federico Baron
c2b06abd6c Merge "Add screenrecord for testOverviewDeadzones" into main 2024-02-28 06:16:32 +00:00
fbaron
eb65ca1600 Add screenrecord for testOverviewDeadzones
Bug: 326839375
Test: TaplTestsQuickstep#testOverviewDeadzones
Flag: NONE
Change-Id: Ic7e889be042a76aa0979cc32d3d43a562a80f491
2024-02-27 14:55:11 -08:00
Helen Cheuk
96fd73ed84 Merge "Stash taskbar when software keyboard is docked" into main 2024-02-27 10:40:07 +00:00
Vadim Tryshev
0c7fd04a8f Removing verifying internal Launcher state from tests
I’ve never seen a useful failure from these checks, and now I’m seeing a false positive error. That error is fixable by reworking the code, but I think the value of these checks is not worth the effort.

Bug: 322823209
Test: presubmit
Flag: N/A
Change-Id: If675dad254fb82a2a842ef3f9054936f38de1cff
2024-02-26 10:44:57 -08:00
Pat Manning
5aa23d41dd Focus a task by default when using keyboard to go to overview.
Fix: 322898816
Test: TaplTestsQuickstep.java
Flag: None.
Change-Id: I6d4b0ca6593ed2ac7c7d8793954c36e55b5978de
2024-02-23 12:22:06 +00:00
Sebastián Franco
6a55a7b4b8 Merge "Remove the initialize method from setUp since is now on being called on the super method." into main 2024-02-22 18:38:50 +00:00
Sebastian Franco
51231ee5c2 Remove the initialize method from setUp since is now on being called on the super method.
Bug: 324261526
Test: most Tapl test
Flag: NA
Change-Id: Icbf9883613069101a3c8428e8e3b02b1eb01dcd0
2024-02-21 17:24:12 -08:00
helencheuk
00ddb5e3a9 Stash taskbar when software keyboard is docked
Stash taskbar when
1) Software keybaord is docked
2) Input toolbar is placed at the taskbar area (stash so toolbar and taskbar would not overlap)

Testing result:
https://drive.google.com/file/d/1NMDexHl0FgyHFaOUh_GSEEUU2k08STJH/view?usp=sharing

Bug: 317251202
Test: TaplTestsQuickstep#testQuickSwitchToPreviousAppForTablet
Flag: N/A

Change-Id: I90662bc6e68f644e919f5c702059476b02519ed6
2024-02-21 23:03:03 +00:00
Vadim Tryshev
67c85d8fc2 Demote unstable test testQuickSwitchFromApp from presubmit
Bug: 325659406
Test: presubmit
Flag: N/A
Change-Id: I997fb09c93400a706c08235ad6d1a6dd910398fd
2024-02-21 10:49:06 -08:00
Vinit Nayak
2b031727f0 Merge "Log split metrics through individual sessions" into main 2024-02-21 00:20:44 +00:00
Vadim Tryshev
8d657cb911 Merge "Adding screen recording for FallbackRecentsTest.testOverview" into main 2024-02-16 18:07:33 +00:00
Tracy Zhou
e34a1b647d Merge "Update phone gesture nav test in NavButtonLayoutFactoryTest" into main 2024-02-16 17:50:18 +00:00
Tracy Zhou
b263e2d94a Update phone gesture nav test in NavButtonLayoutFactoryTest
I think the test was written in the first version of NavButtonLayoutFactoryTest where phone gesture nav layouter didn't exist (verified with the revision history), hence updating the logic here

Bug: 324989451
Test atest NavButtonLayoutFactoryTest

Change-Id: I325a5d47db86add8d094e61b1de923f50a2db309
2024-02-15 23:42:21 -08:00
Vadim Tryshev
6999ed124d Adding screen record for for the case when quick switch gesture doesn't do anything
Bug: 313464374
Test: presubmit
Flag: N/A
Change-Id: I08e3f964cc0fbaebe4b077f08145dc54b967f936
2024-02-15 13:22:27 -08:00
Vadim Tryshev
266ca6005d Adding screen recording for FallbackRecentsTest.testOverview
Bug: 321775748
Test: presubmit
Flag: N/A
Change-Id: I7dddefcf46afde35d86b9f9271c34d46a257281e
2024-02-15 10:41:14 -08:00
Liana Kazanova
099cb7c981 Merge "Revert "Add TAPL test cases for KQS from taskbar all apps."" into main 2024-02-14 23:55:44 +00:00
Tracy Zhou
6800a71f95 Fix NavButtonLayoutFactoryTest init dependency to turn on enableTaskbarNavbarUnification
Fixes: 325084350
Test: run the unit test with the unification flag on, make sure it passes
Change-Id: I5f811585ec0c5c04578cbf7990b9790bdb900ee5
2024-02-14 07:17:23 +00:00
Vinit Nayak
5a9d4af170 Log split metrics through individual sessions
* Now we log the original source of the first selected app
as soon as the user selects it (previously we only did when user
selected second app)
* We log the item info for the second app to determine second
surface.
* Added new metrics to log after user has started a split session
and ended a split session
* We log different cancellation reasons (cancel button,
home gesture, general other app interruptions, etc).
* One KI/Bug: When the second app is selected via taskbar in
overview, the container will say hotseat because we are using
Launcher's logger and not Taskbar's. Taskbar's logger manually
overwrites the container in TaskbarActivityContext, we may be
able to make something hacky that can allow us to overwrite, but
that'll have to be a separate change

Bug: 322551862
Test: Logged metrics manually with event and itemInfo
Change-Id: I177623fd00ce62acf2d4ee983b58561d8c946d59
2024-02-13 17:55:08 -08:00
Tracy Zhou
d6bd6ae769 Fix NavButtonLayoutFactoryTest setup to turn on enableTaskbarNavbarUnification
Fixes: 325084350
Test: run the unit test without guarding the flag, make sure it passes
Change-Id: If902aeb7e9f06bfa4fa2876995cb67e350839a91
2024-02-13 11:18:46 -08:00
Sunny Goyal
b999979bbb Merge "Creating GestureExclusionManager for a single place to listen for gesture exclusion region changes" into main 2024-02-10 08:17:50 +00:00
Jeremy Sim
b9c2a1b735 Merge "Fix app pairs launch from in-app Taskbar" into main 2024-02-09 08:10:11 +00:00
Jeremy Sim
cf9132e07c Fix app pairs launch from in-app Taskbar
This CL adds a handler function in SplitAnimationController that manages the complicated logic flow for launching an app pair when already inside of an app.

To give an idea of the complicated logic:
If the user tapped on an app pair while already in an app pair, there are 4 general cases:
  a) Clicked app pair A|B, but both apps are already running on screen
  b) App A is already on-screen, but App B isn't
  c) App B is on-screen, but App A isn't
  d) Neither is on-screen

If the user tapped an app pair while inside a single app, there are 3 cases:
   a) The on-screen app is App A of the app pair
   b) The on-screen app is App B of the app pair
   c) It is neither

For each case, we call a different animation and launch the app pair in a different way.

When merged, this patch will fix all animation glitches that are currently happening in these situations, and get us 90% of the way to having the ideal animation in all cases. There are still a few complicated cases that need a polished animation (like when you launch app pairs with custom ratios), which will be implemented in a following patch soon (I thought this CL was big enough already as is).

Bug: 316485863
Fixes: 315190686
Test: Manual testing of all the different launch combinations
Flag: ACONFIG com.android.wm.shell.enable_app_pairs TEAMFOOD
Change-Id: I5c0e03512bb706360c575d833cac6ed02a5de936
2024-02-09 13:41:29 +08:00
Sunny Goyal
ab67e938db Creating GestureExclusionManager for a single place to listen
for gesture exclusion region changes

Bug: 273828110
Test: atest GestureExclusionManagerTest
Flag: None
Change-Id: Ida257b47d4f34b247af0f25310d589b89f790e65
2024-02-08 18:31:35 -08:00
Vadim Tryshev
6a0c468563 Merge "Revert "Add unit test for StatusBarTouchController.java"" into main 2024-02-07 18:54:43 +00:00
Vinit Nayak
44911450c6 Merge "Update test infra to allow split placeholder view in all apps" into main 2024-02-07 14:57:19 +00:00
Vinit Nayak
fad0709510 Update test infra to allow split placeholder view in all apps
* Previously we assume the split placeholder view shouldn't be
present in any states except launcher split selection, however
with contextual that changes.
* Now we only ensure that view isn't there in all apps when
we are not in split selection.

Test: Test runs and passes locally
Fixes: 323418145
Change-Id: Ida92030f9b139532ebb09c1d2646795bbb940bfc
2024-02-07 03:32:02 +00:00
Fengjiang Li
7f827e1527 Merge "[Predictive Back] Replace legacy flag with aconfig flag in launcher" into main 2024-02-06 21:57:34 +00:00
Shamali Patwa
efebbb21fe Merge "Update prediction task to provide categorized suggestions." into main 2024-02-06 21:36:14 +00:00
Sunny Goyal
d1176bccf9 Merge "Using system API for rotating DisplayCutout instead of rotating it ourselves" into main 2024-02-06 20:20:47 +00:00
Sunny Goyal
a90500d233 Using system API for rotating DisplayCutout instead of rotating it ourselves
Bug: 321913010
Flag: NONE
Test: Manual
Change-Id: Iebbc8c17dc3b92a73866b7e22dfbde18eb3a52ff
2024-02-06 10:26:18 -08:00
Shamali P
57c1eedbc6 Update prediction task to provide categorized suggestions.
Also adds a helper in popup data provider to provide categorized
suggestions. Used in follow up CL to update the UI.

Bug: 318410881
Test: WidgetsPredictionUpdateTaskTest and manual with follow up changes
Flag: ACONFIG com.android.launcher3.enable_categorized_widget_recommendations DEVELOPMENT
Change-Id: Ie80e8ba7bbe874f7c4b0e579446edf571036555e
2024-02-06 18:14:49 +00:00
Liana Kazanova
0a7b0022da Revert "Add TAPL test cases for KQS from taskbar all apps."
This reverts commit 853d7d3b4c.

Reason for revert:Probable culprit for b/323976612. Will be running through ABTD for verification and before submitting the revert.

Change-Id: Ie334d4ec7d8cdad7245610b9384cd3a61f44dc9e
2024-02-06 17:13:53 +00:00
Ram Muthiah
87b5785548 Revert "Add unit test for StatusBarTouchController.java"
This reverts commit 1f0465e9f2.

Reason for revert: Droidmonitor investigation of test suite failure

Bug: 323976612
Change-Id: I07895d5c10984def103c240664755b96b79f1fb5
2024-02-06 16:50:10 +00:00
Vinit Nayak
c5376624c8 Merge "Update split with self test since it didn't account for contextual split" into main 2024-02-06 03:47:17 +00:00
Fengjiang Li
cd60d191a8 [Predictive Back] Replace legacy flag with aconfig flag in launcher
Fix: 323971106
Flag: ACONFIG launcher.enable_predictive_back_gesture DISABLED
Test: manual
Change-Id: Ie8051af2540699a7d75f1ed05132584d0b40d17d
2024-02-05 16:41:29 -08:00
Vinit Nayak
fe35d069d2 Update split with self test since it didn't account for contextual split
* Right now we split from all apps and we stay in all apps with
contextual split.
* We now have 2 paths, if we are in contextual split then we
should select the same app from all apps again

Fixes: 323418145
Change-Id: I3bde59847b9e47951a6acdc93660b600114c3ddd
2024-02-05 16:08:30 -08:00
Schneider Victor-tulias
05511943c2 Merge "Add TAPL test cases for KQS from taskbar all apps." into main 2024-02-06 00:01:48 +00:00
Jordan Silva
d5df5b3e11 Merge "Refactoring TAPL functions for OverviewTask" into main 2024-02-05 23:03:49 +00:00
Schneider Victor-tulias
853d7d3b4c Add TAPL test cases for KQS from taskbar all apps.
Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 323218341
Test: TaplTestsKeyboardQuickSwitch
Change-Id: Ie8f23ad14e4a32abbc5b49edc05ce407bbb774e6
2024-02-05 15:41:19 -05:00
Fengjiang Li
1f0465e9f2 Add unit test for StatusBarTouchController.java
Test: this one
Flag: NONE
Bug: 282945183
Change-Id: I76eb4389d71d7a03e038ed6b01b6f5b7923fd11a
2024-02-05 11:51:01 -08:00
Jordan Silva
ebd71c6cc9 Refactoring TAPL functions for OverviewTask
This CL refactors some methods in OverviewTask to rely on OverviewSplitTask. It also changes the BaseOverview getTasks function to retrieve the parent task and support cases where only the bottomright_snapshot is available in the recent tasks.

Bug: 320633351
Test: TaplTestsSplitscreen
Flag: N/A
Change-Id: I226f895810ce3b46cc107f76cd85e2918abf7088
2024-02-05 13:50:23 +00:00
Schneider Victor-tulias
1ca66992c1 Update KQS overview launch animation
Updated the KQS overview launch animation to match the spec: open overview and scroll to the focused task in one fluid motion

Flag: LEGACY ENABLE_KEYBOARD_QUICK_SWITCH ENABLED
Fixes: 313608085
Test: Opened KQS from home and overview
Change-Id: I2d617db29ff46e89fab50bb6f8aee900b6fe649f
2024-02-01 14:49:29 +00:00
Tracy Zhou
419140aede Make sure touch only goes to the nearest button when it makes sense
- In NearestTouchFrame, we can't use view bounds alone since the buttons do not have the same root (3 buttons are in the main container, while the contextual buttons are in the contextual button container). This currently caused the issue that contextual button region, when the contextual buttons are invisible, triggers overview
- Need to add an empty space in the left / top area of the button nav to prevent view clicks from going into back (that's how it works in navigationbar/)

Bug: 25768138
Test: left and right of 3 buttons don't trigger back or overview
Change-Id: Idc26c0c8ac0ecc000300a6db2e3e6251f678dada
2024-01-30 14:27:48 -08:00
Tony Wickham
0961a69f61 Merge "Simplify/fix testThreeButtonsTaskbarBoundsAfterConfigChangeDuringIme" into main 2024-01-25 19:17:34 +00:00