Commit Graph

108 Commits

Author SHA1 Message Date
Brian Isganitis
b21ad2da8c Implement initial transient Taskbar EDU tooltips.
Since this tooltip looks and behaves differently than the existing EDU
sheet, it has its own view and controller implementations (I also may
have wanted to write some Kotlin).

To keep transient taskbar open while on the second EDU step, another
autohide suspend flag is defined. Additionally, special casing is added
to avoid hiding transient taskbar if autohiding is currently suspended.

Tooltips use the same assets as the bottom sheet for now, and are scaled
down to fit the tooltip dimensions.

Reset `Taskbar Education` in Developer Options to try EDU again.

[Demos]
- First: https://screenshot.googleplex.com/ASBeGvrb2EA5wEF.png
- Second: https://screenshot.googleplex.com/7fnfcTh9bMYezDc.png

Test: Manual
Test: Open app, see swipe-up tooltip.
Test: Swipe up to show transient taskbar, see features tooltip.
Bug: 263157739
Fix: 258460203
Change-Id: I473f5fccbae279db0614763b640da0a120b6b7f7
2023-01-20 15:16:12 -08:00
Sunny Goyal
a34521e434 Updating TaskbarStashController API
> Making the state animator nonNull to avoid null checks at caller
> Updating the methods names to explicitely indication animation
  being started or not

Bug: 265352919
Test: Verified on device
Change-Id: I1f5b47921f831ed0b202aced10825c8e1d39a4dc
2023-01-14 08:07:44 -08:00
Jagrut Desai
50f1e8dfc2 Adding margin height for transient taskbar to allow users to stash taskbar from full height.
Test: visual(video in buganizer)
Fix: 263526574
Change-Id: I21fd1273b83a4e5efdf7aeacae1303513b9b4d97
2023-01-11 04:16:07 +00:00
Alex Chau
d79e53a5c8 Merge "Add transientTaskbarMargin above taskbar in overview" into tm-qpr-dev 2022-12-20 18:40:48 +00:00
Alex Chau
1b276a1ba7 Add transientTaskbarMargin above taskbar in overview
- Also removed transient_taskbar_two_panels_size and use sw720dp override instead, to be consistent with how we handle small vs large tablet in overview
- Also made isTransientTaskbar mockable so we can test that in DeviceProfileDumpTest

Bug: 260596114
Test: DeviceProfileDumpTest
Change-Id: I3c2236b95d91246e9581531478e3c97601cfb2ec
2022-12-19 17:23:27 +00:00
Alex Chau
bd535c46d7 Only skip stash animation when going to/from Launcher
- Added a cehck on chagnedFlags before skipping stash animation, in additional to !isHotseatIconOnTopWhenAligned check

Fix: 262835548
Test: manual
Change-Id: I5a90213bc0b3f34609a074ba887adbf113e04120
2022-12-19 17:16:08 +00:00
Jon Miranda
a76222d209 Merge "Better support transient and persistent taskbar in taskbar's overlays." into tm-qpr-dev 2022-12-10 02:02:54 +00: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
Federico Baron
47d81686e6 Move AnimatedFloat from quickstep to launcher
We are moving AnimatedFloat to launcher to be able to use this in class in launcher. Having it in launcher will allow us to do restore icon treatment animations to do with scaling the icon size

Bug: 254858049
Test: verified that the device still works
Change-Id: I1c4c47ab436c389a94abf7c910c1a44724efc955
2022-12-08 13:58:07 -08:00
Tony Wickham
7286c5be98 Add feature flag to force taskbar to be persistent.
This will allow us to test taskbar pinning before the entrypoint for
such a setting is finalized.

Test: manual, TODO: will need to update TaplTestsTaskbar to account for
this mode
Flag: FORCE_PERSISTENT_TASKBAR [off]
Bug: 258604917

Change-Id: I4535978563ffbe9a6cc6ece7720cdb75e787ff44
2022-12-06 00:51:46 +00: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
Alex Chau
cd76ac24b6 Fade in/out taskbar when launching apps from or back to AllApps/-1
- Added isHotseatIconTopWhenAligned to control both iconAlignment and stash animation to just fade in if hotseat icon isn't on top of the screen in the aligned state

Fix: 257355864
Fix: 213455090
Test: Launch apps from/back to home, taskbar animate from/to hotseat
Test: Launch apps from/back to AllApps/-1, taskbar fade in/out
Test: Repeat aboth with transient or persistent taskbar
Change-Id: I6bdae615ff9e199d23cbfe2d26c8d46a08fbc436
2022-12-01 18:56:30 +00: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
Brian Isganitis
39768edb67 Merge changes Idae0c3d8,I8c599912 into tm-qpr-dev
* changes:
  Stash taskbar while EDU is open.
  Remove Taskbar EDU icon wave animation.
2022-11-28 22:14:42 +00:00
Brian Isganitis
84633c1a9d Stash taskbar while EDU is open.
The stashing behavior is consistent with the All Apps overlay.

Test: Manual
Bug: 217261955
Change-Id: Idae0c3d829e806be6c18f00455f7ddd0d60f0efb
2022-11-28 16:02:40 +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
Jon Miranda
81bc0b78ce Disallow transient taskbar to un/stash in certain sys ui states
Bug: 258604928
Test: cant un/stash with keyguard, notifications, or qs open
      can un/stash in app as expected

Change-Id: Ib422a35fb31fc818123eae39ac3a7e6deb79f187
2022-11-23 15:26:06 -08:00
Stefan Andonian
146701ca3e Move SharedPreferences code to its own class.
Bug: 251502424
Test: Code compiled correctly.
Change-Id: Iea0d6ab2999504117546ee0f7adc0c7b8b45c065
2022-11-17 17:22:47 +00:00
Jon Miranda
12771e002c Merge "Revert "Revert "Allow transient taskbar to unstash over soft ime""" into tm-qpr-dev 2022-11-16 20:18:27 +00:00
Jon Miranda
f641ddd27e Revert "Revert "Allow transient taskbar to unstash over soft ime""
This reverts commit c8c81a3425.

Reason for revert: fix tests by not auto stashing when ime comes up, but still allow taskbar to show if user initiaties it

Bug: 255818649
Change-Id: Id3ab27dcc205e5a72dbd0481e3eabc10b2e1b643
Test: pull up ime, swipe to reveal taskbar
2022-11-16 16:13:26 +00:00
Sam Dubey
b6acf00e3c Merge "Revert "Allow transient taskbar to unstash over soft ime"" into tm-qpr-dev 2022-11-16 15:20:30 +00:00
Sam Dubey
c8c81a3425 Revert "Allow transient taskbar to unstash over soft ime"
This reverts commit 9787ae6ad9.

Reason for revert: Breaking launcher tests on Tablet

Bug: 259347305

Change-Id: Idfd9e412f143370b6b8a4c6f86aac94d17bc1846
2022-11-16 11:31:55 +00:00
Jon Miranda
49c7469672 Merge "Allow transient taskbar to unstash over soft ime" into tm-qpr-dev 2022-11-15 23:59:16 +00:00
Jon Miranda
9787ae6ad9 Allow transient taskbar to unstash over soft ime
Bug: 255818649
Test: pull up ime, swipe to reveal taskbar
Change-Id: Ibae77c8a29d06093823f2421fbf851979f9babed
2022-11-14 11:30:55 -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
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
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
7e8195081e Update insets for transient taskbar
Bug: 252905206
Test: manual
Change-Id: I03bd493dbe63274c8e90cb5e415127a1dd93e9b8
2022-11-03 17:16:48 -07: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
Sunny Goyal
d859060860 Merging MultiValueAlpha with MultiPropertyFactory
Bug: 246644619
Test: Presubmi
Change-Id: Id5abc5f3169544656f1139ae17ca59e34ac65dac
2022-10-24 14:38:18 -07: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
Alex Chau
38dae63910 Only support manual stashing while in app
- For taskbar in overview, don't allow stashing

Fix: 253042515
Test: With taskbar in overview, long press do nothing. Taskbar is still stashable in app
Test: Without taskbar in overview, taskbar still transform to nav handle in overview
Change-Id: I8f353a473a8570df72acda2338c4b984a69dc5c0
2022-10-12 18:16:50 +01:00
TreeHugger Robot
5c4b6b50d7 Merge "First pass at Taskbar layout UI polish for SUW" into tm-qpr-dev 2022-10-12 02:27:37 +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
Alex Chau
2e72e4cda6 Fix taskbar in overview touch and stash behavior
- When taskbar is unstashed in Launcher (e.g. overview), make the unstashed height touchable
- When AllApps button is pressed in taskbar overview, also stash taskbar

Bug: 245320601
Test: manual
Change-Id: Iadd0bea13cf9a779c68e953d25f21f663c15865a
2022-10-06 21:37:56 +01:00
Schneider Victor-tulias
418b1f8e82 Merge "Allow Taskbar stashing for external tests" into tm-qpr-dev 2022-09-22 17:25:24 +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
Nicolo' Mazzucato
52909d0b5f Fix taskbar instrumentation crash
This was crashing when there were no views in the taskbar. Now, we're using getDragLayer, that will be always there.

Bug: 245690391
Test: TaskbarExpandCollapse
Change-Id: I4475adb0c6c425fca54af02bb071ed3e5f42d927
2022-09-20 14:01:40 +00:00
Winson Chung
3f649ef892 Update Launcher for removed shared wrappers
- Launcher can reference system code directly now

Bug: 219861883
Test: Builds/Presubmit
Change-Id: I3f656b6c7fce93243ccb7591e52441e99137dec6
Merged-In: I3f656b6c7fce93243ccb7591e52441e99137dec6
2022-09-14 17:14:32 +00:00
Tony Wickham
e74569e935 Fix taskbar stash state not persisting properly across recreate
Because we check supportsVisualStashing() in
TaskbarStashController#init(), we need to avoid using
TaskbarUIController to provide that value since TaskbarUIController
isn't initialized until a bit later than the other controllers. So I
moved the logic from supportsVisualStashing() back to
TaskbarStashController, but still allow TaskbarUIController to override
it (e.g. for DesktopTaskbarUIController).

After that fix, I noticed that force stopping launcher (to test the fix)
would briefly show the taskbar background before resetting the stashed
state. This is also due to LauncherTaskbarUIController not being ready
immediately, since that's what sets FLAG_IN_APP due to launcher being
paused. To work around this, I set FLAG_IN_APP to true by default in
TaskbarStashController#init(), since that is the most common case, and
taskbar background/stashed handle isn't shown on home anyway.

Test: Force stop launcher while taskbar is stashed, verify it recreates
as stashed without background flicker; same when changing wallpaper
color on home or in app; also tested when taskbar isn't stashed and in 3
button mode for good measure
Test: testHideTaskbarPersistsOnRecreate
Fixes: 235986838

Change-Id: Ie55bd70e8288d5ad7433dde970f18c176831d747
2022-08-30 13:42:04 -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
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
Schneider Victor-tulias
3f6c473164 Fade out the taskbar icons when animating to overview in 3 button nav.
Bug: 231213105
Test: from home, opened recents, then went back home, then went back to recents, resumed an app, then went back to recents and resumed the same app (both in 3-button and gesture nav)

Change-Id: I83b1b33cafb95353f36a126b93fcaf3b536d3bf4
2022-07-19 11:35:37 -07:00
Nicolò Mazzucato
5529b23fbb Merge "Add jank monitoring for taskbar appearing and disappearing" into tm-qpr-dev 2022-06-28 15:15:35 +00:00
Nicolo' Mazzucato
8256537fdb Add jank monitoring for taskbar appearing and disappearing
Bug: 228969045
Test: record a perfetto trace and make sure the interaction is there
Change-Id: Id220f8eef5b08fb69410e08c230f867ffe21d126
2022-06-28 08:28:35 +00:00
Tracy Zhou
015adda83c Stash task bar when ime switcher is showing
Bug: 226489759
Test: connect to physical keyboard and select a typable field, and make sure the task bar is stashed
Change-Id: Ie1cf753f793dc9cb350e57e9448c2913260992ca
2022-06-25 16:26:13 -07: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
TreeHugger Robot
f1a4296cd0 Merge "Tune AllApps dismiss animation" into tm-dev 2022-05-03 11:23:46 +00:00