Commit Graph

234 Commits

Author SHA1 Message Date
Brian Isganitis
a1808c3e49 Merge "Delay hiding Taskbar EDU until entering home or overview." into tm-qpr-dev 2022-12-18 22:48:39 +00:00
Thales Lima
6a59006592 Polish hotseat and taskbar with 3 buttons
Change margin spaces and logic of how many items the hotseat and taskbar should show.

Fix: 246424857
Test: DeviceProfileDumpTest
Test: HotseatWidthCalculationTest
Change-Id: I8ec71c56a0aa362483c43d6400c762d12cf45f5b
2022-12-17 11:20:21 +00:00
Alex Chau
a68164d89e Set iconsSizePx of Taskbar's DeviceProfile directly
- After ag/20691430, iconScale no longer scale app icons (I should rename it later, after QPR2), so we'll need to set the desired iconSize directly for Taskbar's DeviceProfile
- Extracted setting iconSizePx and testSizePx out of updateIconSize, as they are no longer affected by scaling. This allows TaskbarActivityContext to set desired iconsize and then call updateIconSize

Bug: 256976071
Test: Test Taskbar icon size in different density
Change-Id: I741c178b59e0d8ecb4c63689e68767622329379c
2022-12-15 17:05:12 +00:00
Brian Isganitis
338fa3e9ab Delay hiding Taskbar EDU until entering home or overview.
EDU will now end up hiding due to
TaskbarLauncherStateController#onStateChangeApplied closing all AFVs if
we are going to home or overview.

This is a quickfix to make it harder to accidentally close the EDU when
testing out the transient taskbar. We will eventually be moving to a
lighter EDU UI where having gestures occuring behind it will be less
awkward.

Test: Manual
Bug: 260769010
Change-Id: I477abe9339ed10cb3aed8d1a0fbe0e22ac14c7ab
2022-12-13 20:16:29 -05:00
Brian Isganitis
2a2f1b6cd3 Polish all apps taskbar unstash behavior for transient and persistent.
- During gestures from taskbar all apps, unstash immediately in
  transient.
- Overlay closes sooner if all apps is open (still done later for EDU).
- Taskbar stashes in overview when All Apps is opened.
- Transient app-window threshold is ignored if All Apps is opened.

Test: Manual
Fix: 262076812
Change-Id: I46b2dcdc75ee0cc15c1b47da2139ff8c20cf618a
2022-12-13 16:24:35 -05:00
Brian Isganitis
85ccf120f2 Better support transient and persistent taskbar in taskbar's overlays.
- Transient taskbar nav threshold now works in overlays.
- Delay closing overlay to transient app-window threshold if necessary.
- Persistent taskbar no longer stashes for EDU overlay.
- EDU overlay provides enough bottom padding for transient and
  persistent taskbar.

Test: Manual
Bug: 217261955
Change-Id: I2ae5612ef70a6d09e22f83f8117cdbf2a0a053b8
Fix: 260769010
2022-12-09 11:24:27 -08:00
Jon Miranda
01e90b7787 Merge "Add transient taskbar sizing for twoPanel devices." into tm-qpr-dev 2022-12-02 18:58:08 +00:00
Jon Miranda
a4aaf1aced Add transient taskbar sizing for twoPanel devices.
Bug: 259712417
Test: on two panel device, on tablet device
Change-Id: Iae273b6bbfb254288c234aa5882f39eb0b6a88b1
2022-12-01 16:28:29 -08:00
Sunny Goyal
9a616213e1 Removing SearchActionItemInfo
> Instead introducing an interface for handling click events
> Linking this interface to other UI which handle clicks

Bug: 259733681
Test: Presubmit and verified manually
Change-Id: I9cbf2d009d64254f513deb909a151e46e860d039
2022-11-30 10:59:07 -08:00
Vinit Nayak
792a827309 Merge "Send corrent SUW insets for taskbar portrait vs landscape" into tm-qpr-dev 2022-11-30 00:50:51 +00:00
Vinit Nayak
209dd03b69 Send corrent SUW insets for taskbar portrait vs landscape
* There were two separate blocks of code for sending insets
for Taskbar during SUW, consolidate those
* We also weren't changing Taskbar window height corresponding
to the added insets/change of height for different
orientations in SUW

Fixes: 253538830
Test: Went through SUW and switched orientations,
no back button overlap

Change-Id: Ifb3bc1c20a793ef062bf338a3bdf933b8ae98c28
2022-11-24 10:29:16 -08:00
Brian Isganitis
455eca41be Merge "Still launch disabled item if we can't handle its click." into tm-qpr-dev 2022-11-21 19:02:44 +00:00
Brian Isganitis
50b3b62eba Merge "Add a11y titles for taskbar windows." into tm-qpr-dev 2022-11-18 01:56:22 +00:00
Brian Isganitis
424c7f4393 Still launch disabled item if we can't handle its click.
See where ItemClickHandler#handleDisabledItemClick returns false for
context. If we do not honor this return value, the framework will not
show a dialog in response to attempting launch the item.

Fix: 258232619
Test: Manual
Change-Id: Ie3b112eea17caf0a84defb331133bda9f3add5b6
2022-11-18 01:09:18 +00:00
Schneider Victor-tulias
193f8992f1 Merge "Fix null-pointer exception in all set activity first reveal animation" into tm-qpr-dev 2022-11-17 21:47:18 +00:00
Brian Isganitis
61b01e2c2a Add a11y titles for taskbar windows.
Test: Manual with Talkback.
Fix: 228389333
Change-Id: If30311166fde155d04cf1c9a6865c98d380a93ea
2022-11-17 20:56:04 +00:00
TreeHugger Robot
87ccecb6fc Merge "Revert "Revert "Add TaskbarModeSwitchRule to test both transient/persistent taskbar.""" into tm-qpr-dev 2022-11-15 22:31:55 +00:00
Schneider Victor-tulias
912a53e677 Fix null-pointer exception in all set activity first reveal animation
Fixes: 259296310
Test: started all set activity and started the first reveal animation
Change-Id: I371f62be81e7f28ce5ecee150abb5d294bb2264d
2022-11-15 12:12:17 -08:00
Jon Miranda
f0349354ec Revert "Revert "Add TaskbarModeSwitchRule to test both transient/persistent taskbar.""
This reverts commit e7011d2b87.

Reason for revert: attempt to fix test issues

- Instead of using SharedPrefs which can be flaky anyways,
  we pass along a boolean to test transient taskbar when
  we are in the test harness

Bug: 257549303
Test: TaplTestsTaskbar
Change-Id: I7c15a97363adc377f29853c1fe60b1960c77bfc3
2022-11-10 11:11:14 -08:00
Jeremy Sim
d5525c3bda Merge "Allow user to select second split app from Taskbar" into tm-qpr-dev 2022-11-10 18:56:22 +00:00
TreeHugger Robot
8dd01f3ac2 Merge "Revert "Add TaskbarModeSwitchRule to test both transient/persistent taskbar."" into tm-qpr-dev 2022-11-09 01:07:11 +00:00
Jeremy Sim
93fc0f3a7c Allow user to select second split app from Taskbar
This patch makes it so that (when we enable Taskbar in Overview) users will be able to select their second app for splitscreen by tapping the Taskbar icon, or the icon in AllApps.

This was done by performing a check to SplitSelectStateController when a taskbar icon is hit. If we are currently in split select mode, Taskbar/AllApps icons will no longer launch their respective fullscreen apps, but instead confirm the split attempt. The confirmed app will either be an already-running instance of the app, or a fresh instance of the app (if none is currently running). The split confirmation function is located in TaskbarUIController, where it is accessible to both LauncherTaskbarUIController (for 1P Launcher) and FallbackTaskbarUIController (for 3P launchers).

Also cleans up ~2 lines of unused code from the old splitscreen instructions toast.

Outstanding issues:
- When selecting a second app from within AllApps, the AllApps shade does not animate away in a satisfying way
- When selecting a second app and launching a fresh instance of that app, the animation appears to come from the wrong location
- Intent + Intent splitting does not currently work
- If the selected app is already running with multiple instances, it picks the oldest instance. Ideally, the newest instance is preferred.

Bug: 251747761
Test: Manual testing with Taskbar in Overview flag enabled
Change-Id: I302dc092740bb880f9134ba8e2e587c4f2c29d01
2022-11-08 14:38:05 -08:00
Jon Miranda
e7011d2b87 Revert "Add TaskbarModeSwitchRule to test both transient/persistent taskbar."
This reverts commit d5a6b5f688.

Reason for revert: Breaks tests due to "SharedPreferences in credential encrypted storage are not available until after user is unlocked"

Bug: 258256906
Change-Id: I1de69249685f9d2e71183357cf3eda8d443c7d97
2022-11-08 21:56:52 +00:00
Jon Miranda
caa398ed35 Merge "Have responsive taskbar UI during swipe up gesture." into tm-qpr-dev 2022-11-08 17:53:05 +00:00
Jon Miranda
29f7474056 Have responsive taskbar UI during swipe up gesture.
- Makes taskbar threshold an absolute Y threshold
  instead of a distance threshold.
- Moves handle, taskbar view, and taskbar background
  during the swipe up gesture

Next CL will address transforming the nav handle <-> taskbar
and ensuring that there's a clean handoff

Bug: 246631059
Test: swipe up on taskbar, release. see bounce
      swipe up on taskbar to go home, proper icon alignment
      swipe up on taskbar, pause for overview, see bounce
      -> further movement should not move taskbar
      test launcher3

Change-Id: I141236fd72428cda7edd0ff116de1d478d18c722
2022-11-08 14:50:02 +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
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
6b32ce07b1 Merge "Decrease TAPL All Apps scrolling flakiness" into tm-qpr-dev 2022-11-02 15:39:45 +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
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
661f38cdb8 Merge "Add transient taskbar UI" into tm-qpr-dev 2022-10-26 14:56:15 +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
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
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
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