Commit Graph

169 Commits

Author SHA1 Message Date
Jon Miranda
12cdc89c7e Merge "Add TaskbarModeSwitchRule to test both transient/persistent taskbar." into tm-qpr-dev am: 881588bfb5 am: 416680d8f0
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20391679

Change-Id: Ibcc62df1f17de580c3c6f2b18749d5ef6e3be933
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-08 17:10:33 +00:00
Jon Miranda
d5a6b5f688 Add TaskbarModeSwitchRule to test both transient/persistent taskbar.
- Lays the foundation for transient taskbar tests.
- Does not add flags that would add ACTION_OUTSIDE in tests.
  We can address testing this functionality in a separate CL

Bug: 257549303
Test: TaplTestsTaskbar
Change-Id: I44acc5e589b959e6d4bc93fdc369e503c54e7d87
2022-11-07 14:18:37 -08:00
Jon Miranda
82278364d1 Merge "Revert "Revert "Add a way to stash/unstash transient taskbar.""" into tm-qpr-dev am: 8ed5ac05fd am: 1b4a697e56
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20356225

Change-Id: I681f41d4be494e5fb4f079d37a63f3873167c8df
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-03 07:02:48 +00:00
Jon Miranda
8ed5ac05fd Merge "Revert "Revert "Add a way to stash/unstash transient taskbar.""" into tm-qpr-dev 2022-11-03 05:58:38 +00:00
Jon Miranda
575d699edc Revert "Revert "Add a way to stash/unstash transient taskbar.""
This reverts commit afc3bff10b.

Reason for revert: fixing launcher tests broken by original change

We'll only add flags for transient taskbar case

Bug: 256988243
Bug: 256987492
Change-Id: I8915ef5345816316bfb71efc9fc667e4e8db824c
2022-11-02 11:07:27 -07:00
Tony Wickham
0d3f247ac6 Merge "Decrease TAPL All Apps scrolling flakiness" into tm-qpr-dev am: 6b32ce07b1 am: cbfc9a1f0b
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/19560161

Change-Id: Ia4c7f142e2263361ae7d9d0b03735956adb8aa81
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-02 16:57:47 +00:00
Tony Wickham
6b32ce07b1 Merge "Decrease TAPL All Apps scrolling flakiness" into tm-qpr-dev 2022-11-02 15:39:45 +00:00
Sam Dubey
56948b2d59 Merge "Revert "Add a way to stash/unstash transient taskbar."" into tm-qpr-dev am: de5d5720a1 am: 1e16a3dd4c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20348768

Change-Id: Idd83e21d613fb5c55ad11f66b691d370dfb6561d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-02 11:33:05 +00:00
Sam Dubey
afc3bff10b Revert "Add a way to stash/unstash transient taskbar."
This reverts commit 6163e2d39f.

Reason for revert: Part of Platinum+DM rotation for testing as likely culprit for breaking launcher tests on tablet. Won't be commited until proven otherwise.

Bug: 256988243
Bug: 256987492
Change-Id: I21b3561f489e17c48131d2223a7d90267968232f
2022-11-02 09:16:55 +00:00
Jon Miranda
b5014334fa Merge "Add a way to stash/unstash transient taskbar." into tm-qpr-dev am: b95c4ff849 am: b5e32c7394
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20223508

Change-Id: Ifd7e795514081b20cd80661becf7aa98a8d683fc
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-02 07:30:00 +00:00
Jon Miranda
6163e2d39f Add a way to stash/unstash transient taskbar.
- Adds threshold to show taskbar during swipe
- Introduces FLAG_STASHED_IN_APP_AUTO flag
- Adds logic for taskbar to auto hide based on time
  and touch

Bug: 252905206
Test: manual
Change-Id: I070cd619487fdd4498a988ae5aadce6dd14313f7
2022-11-01 16:03:01 -07:00
Jon Miranda
aa2ef5c4bd Merge "Add transient taskbar UI" into tm-qpr-dev am: 661f38cdb8 am: e095ae843f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20197462

Change-Id: I5b170eca6e19ce8e771d3dea7994cb6b3750e2a1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-26 15:59:32 +00:00
Jon Miranda
661f38cdb8 Merge "Add transient taskbar UI" into tm-qpr-dev 2022-10-26 14:56:15 +00:00
Sunny Goyal
c5d63bcac5 Merge "Merging MultiValueAlpha with MultiPropertyFactory" into tm-qpr-dev am: 3912808183 am: 34da3ed6df
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/19944063

Change-Id: Iecd1429f926172eea4c551667d7995c1a9750bc3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-25 23:12:13 +00:00
Jon Miranda
184a04266d Add transient taskbar UI
This change is only for the visual appearance of the
transient taskbar.

Bug: 252905206
Test: manual
Change-Id: I4990b20b39089a0c27ec2a72dd3010cf64ddba1d
2022-10-25 13:46:19 -07:00
Sunny Goyal
d859060860 Merging MultiValueAlpha with MultiPropertyFactory
Bug: 246644619
Test: Presubmi
Change-Id: Id5abc5f3169544656f1139ae17ca59e34ac65dac
2022-10-24 14:38:18 -07:00
Schneider Victor-tulias
ee0bc03d58 Decrease TAPL All Apps scrolling flakiness
scrolling in all apps did not factor in additional top padding in the all apps list recycler. This made it so that apps could occasionally scroll and be obcured by that top padding, making them un-tappable. Added this padding to the scrolling logic to make scrolling less flaky.

Test: TaplTestsTaskbar, TaplTestsLauncher3 and presubmit
Fixes: 248064856
Change-Id: Id76b92b4bc354917f3688ac53673d0ed7a905f02
2022-10-21 12:12:38 -07:00
TreeHugger Robot
1aaca4097e Merge "Implement overlay window for Taskbar EDU and All Apps." into tm-qpr-dev am: c9928a1ddf am: 08092b2cfb
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20154536

Change-Id: Ifad418ad73a6bf4a98d6bdfce80d0cbbdfb90790
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-10-19 15:00:57 +00:00
TreeHugger Robot
c9928a1ddf Merge "Implement overlay window for Taskbar EDU and All Apps." into tm-qpr-dev 2022-10-19 14:01:56 +00:00
Vinit Nayak
d6c5147524 Landscape 3 button nav on taskbar phone supported
* TODO: Seascape bar positioning, add tests

Change-Id: I542be2f2f682d8c8a9cdd9bb6c667c44ca167f3e
Merged-In: I542be2f2f682d8c8a9cdd9bb6c667c44ca167f3e
2022-10-17 13:59:18 -07:00
Vinit Nayak
391b79c084 Merge "Landscape 3 button nav on taskbar phone supported" 2022-10-17 20:14:36 +00:00
Brian Isganitis
2d6371aa34 Implement overlay window for Taskbar EDU and All Apps.
Having EDU in the same window as Taskbar causes it to be above All Apps
and other system views such as the notification tray. This change
refactors the existing All Apps window to accomodate more AFVs so that
EDU can also exist in it.

Demo: http://shortn/_Qcki3gwvf7

Test: Manual
Fix: 232177330
Change-Id: I1bef31d798041a90a0c3e033e71be63898fa5fbc
2022-10-14 22:36:14 +00:00
Vinit Nayak
831a4f0e1d Landscape 3 button nav on taskbar phone supported
* TODO: Seascape bar positioning, add tests

Change-Id: I542be2f2f682d8c8a9cdd9bb6c667c44ca167f3e
2022-10-13 23:22:38 +00:00
Nicolò Mazzucato
4afab0b210 Merge "Cancel unfold animation when rotation changes" into tm-qpr-dev 2022-10-13 23:06:50 +00:00
Nicolo' Mazzucato
74c3a0024b Cancel unfold animation when rotation changes
In DeviceFoldStateProvider.kt, FOLD_UPDATE_FINISH_HALF_OPEN is emitted if the rotation changes while the animation is in progress.

 This targets the case when the device goes to tabletop mode during the transition.

+ Using RotationChangeProvider to fix problems when the new orientation change was received in a background thread unexpectedly. This fixes: (1) wrong launcher icons movement after the rotation, and (2) wrong dark overlay scrim after rotation.

+ Minor formattig fixes by ktfmt

Bug: 241743859
Test: DeviceFoldStateProviderTest && NaturalRotationUnfoldProgressProviderTest && manual stress testing
Change-Id: Iee234e4b832cad8298b69356fce7c14d75e89ccc
2022-10-13 09:16:44 +00:00
Vinit Nayak
2081742cb7 First pass at Taskbar layout UI polish for SUW
Bug: 231906478
Change-Id: I5d55d1e33f928d4b8034c356565a0f9d8bc5c3fb
2022-10-12 00:04:27 +00:00
Schneider Victor-tulias
e64a8cfb20 Allow Taskbar stashing for external tests
Moved Taskbar stashing enabling logic to QuickstepTestInformationHandler to allow external tests to use the Taskbar API

Test: TaplTestsTaskbar
Bug: 240129939
Change-Id: I0ede8e4767cbe068328997a3afd51f9d5df2799a
2022-09-21 10:44:23 -07:00
Schneider Victor-tulias
0b828e291c Merge "Finish recents animation to the matching state." into tm-qpr-dev 2022-09-08 18:11:43 +00:00
Alex Chau
e818bcb997 Use real IDP in DeviceProfileTest
- Mock WindowManagerProxy instead of IDP in DeviceProfileTest
- Extracted NavigationMode to standalone class
- Moved parseNavigationMode to WindowManagerProxy so it can be mocked
- Moved DeviceProfileTest to internal repo

Bug: 242086027
Test: DeviceProfileTest
Change-Id: Ia5a43293b1380f04d786d2adf8503cfd10f7674a
2022-09-07 10:35:21 +01:00
Tony Wickham
b6f593042d Don't rely on QuickstepLauncher instance for tests
Instead, bind to TouchInteractionService and use that binder to call into taskbar.

Test: TaplTestsTaskbar
Bug: 235986838
Change-Id: I222522bc53c9d1698542fbae52c37889f14abf41
2022-08-29 17:27:27 -07:00
Schneider Victor-tulias
146b86fc31 Finish recents animation to the matching state.
ResetGestureInputConsumer was defaulting to finising the recents animation to app when the the state was set to home. This created a situation where the taskbar could become invisible. Updated ResetGestureInputConsumer to check the state.

Fixes: 241204341
Test: tested on a large screen device using the repro steps
Change-Id: If5c109810ae2882f8cdfc0248939feb7c0c53d0d
2022-08-22 10:44:05 -07:00
Vinit Nayak
8a3d05587e Show 3 button nav on phone in Taskbar (1/2)
* TODO: Landscape/seascape support,
        Separate nav spacing out into
        separate class/add tests

Bug: 219035565
Change-Id: I8f5c007f04ea4d6df15962772806356181d764ff
2022-08-09 13:25:50 -07:00
Vinit Nayak
7db37b3d94 Use Taskbar window for phones (only works on gesture nav) with flag
* Try to avoid re-creating TaskbarActivityContext to
avoid re-inflating taskbar views
* Toggle via Flipper App (key 1101)
OR adb shell setprop persist.wm.debug.hide_navbar_window 1 && adb reboot
TODOs
* Only works for gesture nav, not 3 button
* Sampling on phone doesn't always work.

Bug: 219035565
Change-Id: I2a015f99d5f1fe86d7261eec9fd898bd4480ff9f
2022-08-01 17:48:09 -07:00
Pat Manning
5f74bfd76d Refactor DeviceProfile tests based on dump() and use real device dimensions for tests.
- Added roundPxValueFromFloat when converting dp/sp to px to deterministically round up values around .5

Fix: 240133465
Bug: 237542518
Test: DeviceProfileTest.kt
Change-Id: If4239f714487fe5bf2ef44274e2ce415bd75c86d
2022-08-01 17:54:43 +00:00
Tony Wickham
d7fb7f379a Merge "Cleanup taskbar+assistant interactions" into tm-qpr-dev 2022-07-28 23:02:35 +00:00
Merissa Tan
5dbd289f18 Add running apps icons to taskbar for desktop environment.
This CL adds app icons for launched/running apps to the Launcher
taskbar hotseat. When the activity is closed, the app icon is
removed. The apps that are added to the taskbar on boot are never
removed.

Recall: http://recall/clips/ad6d3cfc-7358-4b37-846e-de843ad3000d

Bug: 183906774
Test: Launch an app and verify the app icon is added on the taskbar.
Close the app and verify the icon is removed from the taskbar.
Test: Switch navigation modes on the emulator and ensure that running
app icons are added to the taskbar after it is reinitialized.
Test: atest NexusLauncherTests:com.android.quickstep.RecentTasksListTest RecentTasksControllerTest

Change-Id: Ieaaf001530b5778871fb7a8d18cdcaa1ccbf0e31
Merged-In: Ieaaf001530b5778871fb7a8d18cdcaa1ccbf0e31
2022-07-28 17:50:12 +00:00
vadimt
f6ef879cf4 Moving all sources that are shared between Launcher and TAPL in one directory
This will help SysUI test team (who uses TAPL) to set up Gradle build for their tests.

Bug: 202567877, 234414088
Test: presubmit
Change-Id: I3d923ea4b54d1a4c3d2b345be09692727d30433e
2022-07-27 20:18:46 +00:00
Tony Wickham
eeb66e41e5 Cleanup taskbar+assistant interactions
- Always move the taskbar layer when voice interaction window visibility
  changes, to ensure we remove the temporary taskbar background in all
  cases (e.g. swipe to home)
- Move check to not draw taskbar background to the temporary view
  itself, so that it's at the proper layer when shown (e.g. during
  fulfillment on the home screen)
- Don't add view to window if it's already added (we already have this
  check for the removal case)

Test: Open an app, invoke Assistant, swipe home; Taskbar background is
removed; invoke and fulfill assistant from home screen, in app, in 3
button mode, and in gesture mode (all permutations)
Fixes: 236924161
Fixes: 240101132
Fixes: 235895444

Change-Id: I5958f1dbe14a6d190d3808014429f7f8146c9f96
2022-07-27 12:52:59 -07:00
Alex Chau
62572c04e2 Revert "Move BaseActivityInterface task size methods to DevicePr..."
Revert "Move BaseActivityInterface task size methods to DevicePr..."

Revert submission 19279487-baseactivityinterface

Reason for revert: As per discussion in ag/19341332, make sure DeviceProfile can properly react to inset changes before moving task size calculations there
Reverted Changes:
I30324d34c:Move BaseActivityInterface task size methods to De...
Ia9c1d0387:Move BaseActivityInterface task size methods to De...

Bug: 238593212
Change-Id: I0d40fdd4a5d4468494e30cef32a284479ddd2feb
2022-07-25 18:38:03 +00:00
Pat Manning
4e73e5e352 Move BaseActivityInterface task size methods to DeviceProfile.
Fix: 238593212
Test: DeviceProfilePhoneTest.kt
Test: DeviceProfileVerticalBarTest.kt
Test: DeviceProfilePhone3ButtonTest.kt
Test: DeviceProfileVerticalBar3ButtonTest.kt
Test: DeviceProfileTabletLandscapeTest.kt
Test: DeviceProfileTabletPortraitTest.kt
Test: DeviceProfileTabletLandscape3ButtonTest.kt
Test: DeviceProfileTabletPortrait3ButtonTest.kt
Test: DeviceProfileTwoPanelLandscapeTest.kt
Test: DeviceProfileTwoPanelPortraitTest.kt
Test: DeviceProfileTwoPanelLandscape3ButtonTest.kt
Test: DeviceProfileTwoPanelPortrait3ButtonTest.kt
Change-Id: I30324d34ca119a467f530b590949743c2ba7b91a
2022-07-18 16:35:02 +01:00
Tracy Zhou
1092ccacbf Merge "Show IME switcher only when physical keyboard is connected in 3 button nav (instead of also when virtual keyboard is visible)" into tm-qpr-dev 2022-06-29 21:27:17 +00:00
Vaibhav Devmurari
207e374413 Allow taskbar and taskbar all apps window to receive split touches
Adding feature to allow UI interaction during Drag and drop.
To allow user to interact with taskbar UI during D&D, the window
should support FLAG_SPLIT_TOUCH to receive touch events while user
using D&D.
DD: go/global_drag_and_drop

Test: manual
Bug: 220109830
Change-Id: Icd549aa272c140d865d89eeb9f5619b5ab13c015
(cherry picked from commit 0074baa82e)
2022-06-27 10:11:58 +00:00
Tracy Zhou
849a0c4e81 Show IME switcher only when physical keyboard is connected in 3 button nav (instead of also when virtual keyboard is visible)
Bug: 226489759
Test: connect to a physical keyboard in 3 button nav and make sure the ime switcher shows; and doesn't show with virtual keyboard
Change-Id: Ib9a5880eb1bd6d5b877a9f3789ce858f399c4910
2022-06-24 23:40:41 -07:00
Alex Chau
ccc55f1668 Merge "Detect force visible nav bar based on kids mode." into tm-qpr-dev 2022-06-16 13:55:14 +00:00
Pat Manning
c773d7cdc8 Detect force visible nav bar based on kids mode.
WM was changed to use NAV_BAR_KIDS_MODE instead of NAV_BAR_FORCE_VISIBLE, this needs to update to match.

Fix: 229580780
Test: manual.
Change-Id: I38fb23dcc85676593a3f8f0851676bc526802d2e
2022-06-15 15:03:52 +01:00
Tony Wickham
9a54d2aa43 Hide taskbar while VoiceInteractionWindow is visible
- Fade out icons (or stashed handle if stashed)
- Move background to APPLICATION_OVERLAY layer (behind VIW)
  - Only for gesture nav
- On home screen in 3 button mode, translate buttons down when assistant
  is invoked

Test: Invoke assistant, ensure it draws above taskbar background and
taskbar stops drawing icons or stashed handle
Bug: 225200928

Change-Id: I7807d30df8f358295b8231d89217c7413f32c6f9
Merged-In: I7807d30df8f358295b8231d89217c7413f32c6f9
2022-06-09 05:21:42 +00:00
Brian Isganitis
a9a78117c7 Have separate DeviceProfile instances for taskbar and all apps windows.
We want to scale down the DeviceProfile for taskbar, but the all apps
window should rely on the original DeviceProfile.

Test: Manual
Fix: 232907361
Change-Id: Ia09f674ada9e445c1d7278fa94c536ea9de13ef9
Merged-In: Ia09f674ada9e445c1d7278fa94c536ea9de13ef9
2022-05-25 18:11:51 +00:00
Schneider Victor-tulias
766f2fc346 Coordinate the SUW All Set page first reveal with the taskbar unstash to hotseat animation.
Bug: 220096988
Test: manual
Change-Id: I1f517b322e5c18f825be8b51ebb560a4a195b666
2022-05-13 11:17:10 -07:00
Schneider Victor-tulias
9b6babf839 Translate the 3 navigation buttons to/from their in-app position when animating to/from the -1 screen, all apps and widgets.
Bug: 221455508
Test: opened all apps, widgets, -1 screen, notifications shade and keyboard in various combinations and orders; locked screen, launched app, returned home with the back/home buttons, opened overview
Change-Id: Ia0b406aacf72b34bd6b7ff1c01278ab6895a7da4
Merged-In: Ia0b406aacf72b34bd6b7ff1c01278ab6895a7da4
(cherry picked from commit 9c1a452a1d)
2022-05-02 18:45:01 +00:00
Tony Wickham
a681cf6abe Migrate from InsetsInfo.contentInsets to WindowManager.LayoutParams#providedInternalInsets
- This allows us to distinguish taskbar's ITYPE_EXTRA_NAVIGATION_BAR insets from its ITYPE_BOTTOM_TAPPABLE_ELEMENT insets
- Set nav bar insets as before (contentInsets)
- Set tappable elements insets the same, except when taskbar is stashed, in which case set to 0

Test: TaplTestsTaskbar; manually stash/unstash taskbar, open IME, open Calculator (which uses tappableElement() insets) and Contacts (which uses systemBars())
Fixes: 215411414
Change-Id: If00f7a590b0780715d5b8159f5135054364ce84e
2022-04-21 16:15:41 +00:00