Commit Graph

301 Commits

Author SHA1 Message Date
Vinit Nayak c97bb4600f Move split functions from RecentsView to SplitSelectStateController
* Moving things out of RecentsView to avoid
dependency on a non-testable class
* Also helping prevent bloating RecentsView.java

Bug: 266482558
Test: Single Chrome instance in recents. Initiate split
with Chrome from workspace, tap on Chrome again in Taskbar,
ensure no crash.

Change-Id: I99ec704479ffaa860f4d80c2cb9f54182f31f41a
2023-02-17 17:28:08 -08:00
Jon Miranda ddb909603a Remove setImeIsVisible/setTouchesEnabled as its already handled by insets.
Bug: 260101467
Test: manual
Change-Id: Iba22a6db61abd4be0b2a15b2e4099d9bc03ddbc9
2023-02-18 00:27:03 +00:00
Jagrut Desai 2f0b433e57 Merge "Making taskbar to stay stashed if user launches app for split screen view from all apps view" into tm-qpr-dev am: 4ffc71262d am: f13a3413a8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20840305

Change-Id: If38a667631f3e68316b510a2d26af32b2d8d870a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-16 00:42:07 +00:00
Jagrut Desai 4ffc71262d Merge "Making taskbar to stay stashed if user launches app for split screen view from all apps view" into tm-qpr-dev 2023-02-15 23:03:19 +00:00
Schneider Victor-tulias 79855e7cb8 Merge "Add the KeyboardQuickSwitchView (2/2)" into tm-qpr-dev am: 25656568e3 am: 74ffb0ba89
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/21087436

Change-Id: Ie6f0b30af20e5905fc10105bbf2fcf8a0db028b0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-15 06:15:48 +00:00
Schneider Victor-tulias de7ceba80b Add the KeyboardQuickSwitchView (2/2)
Adding KeyboardQuickSwitchView and associated flows.

Test: Manually tested alt-tab and alt-shift-tab in and out of overview on a tablet and phone
Bug: 258854035
Change-Id: Ifb48b005067b3a9c66acfd5ecdbae144b359d3be
2023-02-14 13:34:37 -08:00
Winson Chung d5b9cdc6fa Merge "Update region sampling to account for window visibility" into tm-qpr-dev am: c5180384d5 am: 30616e83d9
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/21384584

Change-Id: If15c741da1eae2b399b3a41ea406d5fa7c56cf7d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-14 06:28:41 +00:00
Winson Chung 95de6078b0 Merge "Have Taskbar report left/right gesture insets" into tm-qpr-dev am: b41d15b5f6 am: 3e815cbbb9
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/21344502

Change-Id: I195b250bec9a965d916659d8c3490e62bde5065b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-14 05:41:35 +00:00
Winson Chung c5180384d5 Merge "Update region sampling to account for window visibility" into tm-qpr-dev 2023-02-14 04:48:02 +00:00
Winson Chung b41d15b5f6 Merge "Have Taskbar report left/right gesture insets" into tm-qpr-dev 2023-02-14 04:45:24 +00:00
Tony Wickham fc97f74e82 Have Taskbar report left/right gesture insets
Fixes: 231648761
Test: output from adb shell dumpsys activity service
TouchInteractionService, specifically TaskbarInsetsController

Change-Id: I8ed7fefb482bd4f73d2b2026ccb4ac369b6321ab
2023-02-14 04:43:01 +00:00
Winson Chung c3a8254e65 Merge "Reapply previous states when recreating the task bar" into tm-qpr-dev am: a097a960c8 am: f51df33fc8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/21383817

Change-Id: Ia95dbef74947a2530b8b8f7ceaa371dc2c804acd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-14 01:50:02 +00:00
Winson Chung 8bce18a562 Update region sampling to account for window visibility
- Similar to the nav bar, we should also disable region sampling then
  the window is no longer visible (ie. when in immersive mode) otherwise
  we fall back into gpu composition which consumes more battery

Fixes: 268280575
Test: Enter immersive mode and verify region sampling is disabled
Change-Id: I99bf8986c6f22fd8d480d255d10cfcd39cfb79e3
2023-02-11 01:02:35 +00:00
Winson Chung 8fe24e0893 Reapply previous states when recreating the task bar
- When the taskbar is recreated (ie. from a display config change),
  the previous states sent from SysUI need to be reapplied to the
  new controllers

Fixes: 267664948
Test: Wipe device, in SUW accessibility settings change the display
      density and verify it properly tints the back button
Change-Id: I837a67ced2941d4545359b8231026044b5479767
2023-02-11 00:25:01 +00:00
Tony Wickham ef03a14980 Making taskbar to stay stashed if user launches app for split screen view from all apps view
Test: Visual
Fix: 263058045

Change-Id: Idcbc4ce90e8d4ff1084780bf331f2cea8b9335ca
2023-02-08 21:53:37 +00:00
Tony Wickham 01b66f98ca Merge "Don't applyState if taskbar is already destroyed" into tm-qpr-dev am: 632e9a84c4 am: 25dd967b05
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/21238187

Change-Id: I9a1f6a9556aa8bf321d0527fc90c1e6f9c5c5fd1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-03 18:43:21 +00:00
Tony Wickham 632e9a84c4 Merge "Don't applyState if taskbar is already destroyed" into tm-qpr-dev 2023-02-03 17:55:30 +00:00
Jon Miranda 3c76c2212a Merge "Update notification dot renderer when we update the taskbar icon size." into tm-qpr-dev am: 5903751ee3 am: 82382fc784
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/21225224

Change-Id: Iec7cd640cb84417f231dd440490a6d1c78b38465
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-03 02:29:15 +00:00
Jon Miranda 5903751ee3 Merge "Update notification dot renderer when we update the taskbar icon size." into tm-qpr-dev 2023-02-03 01:34:05 +00:00
Tony Wickham 9fb8883017 Don't applyState if taskbar is already destroyed
Test: Open overview while unfolded, then fold; ensure hotseat remains
visible
Fixes: 260135164

Change-Id: I788a9a682a7d5fabbea7c478231fc7abe92e95b9
2023-02-03 01:00:21 +00:00
Jon Miranda 2b25ded506 Update notification dot renderer when we update the taskbar icon size.
Test: swipe to home with an app that has a notification dot
      observe no jump in dot size
Bug: 264709741

Change-Id: I5d56fe57e74ed7b094477ecd8727152f3f522042
2023-02-02 23:10:42 +00:00
TreeHugger Robot 5bce035bb7 Merge changes I865871e5,Ie655de7a into tm-qpr-dev am: 6e21d310c1 am: 21c3aab5b3
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/21074655

Change-Id: I5485085b18ffb98354d05ead2f3c9fc802ac4d1f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-31 19:29:11 +00:00
TreeHugger Robot 6e21d310c1 Merge changes I865871e5,Ie655de7a into tm-qpr-dev
* changes:
  Fixes to VoiceInteractionWindowController
  Fix TaskbarBackgroundRenderer not being applied correctly in 2 cases
2023-01-31 17:52:55 +00:00
Tony Wickham c3963a7ff4 Fixes to VoiceInteractionWindowController
- Make temporary taskbar background behind assistant non-touchable
  (fail-safe in case the window isn't removed for some reason)
- Give temporary taskbar background a different window title and
  add a couple more dump statements to help debugging
- Only show the taskbar background for persistent taskbar; transient
  taskbar can skip most of the special casing and just hide it
- Fix bug where we weren't drawing the separate taskbar background in 3
  button mode
- Fix bug where we weren't actually synchronizing
  separateWindowForTaskbarBackground with TaskbarDragLayer, since the
  former wasn't attached to the window yet; now we wait until it is
  attached before calling synchronizeNextDraw()
- Also added dump logs for TaskbarDragLayerController alpha channels

Test: manual in 3 button and gesture nav (with and without
FORCE_PERSISTENT_TASKBAR enabled)
Fixes: 243652789
Bug: 262664266

Change-Id: I865871e57dd4cb255a916317a7e5d35cfde97df5
2023-01-31 00:58:22 +00:00
Tony Wickham ad79986f6b Merge "Remove ALPHA_INDEX_IME_BUTTON_NAV" into tm-qpr-dev am: d9dd02b451 am: f37c33cd50
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/21122190

Change-Id: I2a98a1588adc0bab25bff44b1ac16a76bf9eff94
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-30 22:40:48 +00:00
Tony Wickham d9dd02b451 Merge "Remove ALPHA_INDEX_IME_BUTTON_NAV" into tm-qpr-dev 2023-01-30 19:11:47 +00:00
Vinit Nayak 7ffc338a42 Merge "Launch initial split from taskbar in overview app menu" into tm-qpr-dev am: d710773889 am: fd185e6402
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20956773

Change-Id: I78f6b8fee567230a59d533ca17bebc3c578e9040
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-28 07:08:17 +00:00
Vinit Nayak 49dc6d2712 Launch initial split from taskbar in overview app menu
* Consolidated init calls in SplitSelectStateController
* Also add support to launch from taskbar all apps
* Add logic in SplitSelectStateController to know whether
or not we need to dismiss existing TaskView vs relying
on mSplitHiddenTaskView null check
* Default click handling for SplitShortcut is to start
split selection mode

Bug: 251747761
Test: Initiated split from smart actions, thumbnail app
icon, home, taskbar in overview, all apps. Saw it choose
the latest thumbnail

Change-Id: Ib4f64e619c97615af458a19a9c0efd86c92979d9
2023-01-27 16:46:14 -08:00
Tony Wickham 602f3074f9 Remove ALPHA_INDEX_IME_BUTTON_NAV
Taskbar already stashes when IME is showing, which hides the taskbar
icons in 3 button mode. Hence this extra flag seems redundant and breaks
Transient Taskbar, which allows unstashing taskbar over IME

Test: Install 3P keyboard, swiping taskbar up over IME still shows icons
Test: Connect physical keyboard, icons still hide in 3 button nav when
the IME switcher is showing
Fixes: 264723145

Change-Id: Iafb89e765668d70a1bfad2e136957a2ef8924514
2023-01-27 17:24:46 +00:00
TreeHugger Robot 2cd37fb6fe Merge "Implement initial transient Taskbar EDU tooltips." into tm-qpr-dev am: 654f714718 am: 4d7e4c4a8e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20795522

Change-Id: I70307a411262909945f44e7e3b58ff721ccc10d2
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-21 09:02:06 +00:00
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
Nicolò Mazzucato 451cdb6895 Merge changes I2c1e440b,I805d56d4 into tm-qpr-dev am: 1207e773e2 am: 27876d7154
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20980941

Change-Id: I6a83789008ea7626a5a029af766414252a445fb7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-19 20:44:50 +00:00
Nicolò Mazzucato 1207e773e2 Merge changes I2c1e440b,I805d56d4 into tm-qpr-dev
* changes:
  Add OPTIMIZE_MEASURE flag to QuickSteplauncher window
  Log device profile changes in perfetto traces
2023-01-19 19:42:26 +00:00
Jeremy Sim 65f9b77064 Merge "Fix bug with Taskbar launches in Overview" into tm-qpr-dev am: bc1fa1e6a4 am: f9551e4cc1
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20890017

Change-Id: I8a5bd9dc73c85cdb432766e63243319982e9ac36
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-19 03:25:07 +00:00
Jeremy Sim bc1fa1e6a4 Merge "Fix bug with Taskbar launches in Overview" into tm-qpr-dev 2023-01-19 02:23:32 +00:00
Nicolo' Mazzucato cb7bd50247 Log device profile changes in perfetto traces
This is needed to easily spot unwanted DeviceProfile changes in perfetto traces, as each one causes many new inflation and slows down the ui thread considerably.

Test: recorded trace with this log
Bug: 258214245
Change-Id: I805d56d4dfe1c08d7f28215c0462d01fcaece84e
2023-01-17 14:54:11 +00:00
Jeremy Sim 2842bc72fd Fix bug with Taskbar launches in Overview
This patch fixes a bug where Taskbar launches (tapping an icon on the Taskbar) were not executing correctly in Overview.

Now that Taskbar is always present in Overview, we need to handle cases where the user taps to launch an app, but the app is already visible to the user in Overview. This was breaking in a noticeable way with split apps, where the Taskbar simply wouldn't respond when the tapped app was already visible as a live tile.

Fixed by polling RecentsModel for already-running tasks, checking to see if the associated TaskView is visible to the user or not, and calling launchTasks() on the TaskView if so. If the tile is not visible to the user, the app will launch normally.

Fixes: 261952204
Test: Work in progress
Change-Id: If761546913bde7451a22456a272ba6c31942c5f8
2023-01-17 13:54:47 +08:00
Vinit Nayak 07cccd161f Merge "Respect nav button tinting in SUW" into tm-qpr-dev am: f83d8a00a8 am: f47ba402c8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20953768

Change-Id: I5ea97c57ae8e590da7c963c52ec3307b536f410b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-01-13 04:18:32 +00:00
Vinit Nayak 1d7e050bc6 Respect nav button tinting in SUW
* Check was originally added with rationale in
b/204384193#comment26, however presently we
do provide insets to SUW as of b/253538830
so looks like now we are getting the correct
info from SysUI
* There is a possibly related issue where buttons
are not tinted correctly on the final page of
SUW (b/265238238)

Test: Went through setup manually via adb
and observed that on light theme with dark
dialog scrim the button changes color
adb shell am start -a android.intent.action.MAIN -n com.google.android.setupwizard/.SetupWizardTestActivity
Bug: 256521774

Change-Id: I080033e21d22fbc366b7248b2d647fec610a5fb9
2023-01-11 21:29:37 -08:00
Alex Chau c8f4d71590 Merge "Add transientTaskbarMargin above taskbar in overview" into tm-qpr-dev am: d79e53a5c8 am: 8d18eba59e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20782488

Change-Id: I4cd29254cc2f45de9956bd8aa3a626724b3ec8a1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-20 19:36:22 +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 e13b1a22f9 Merge "Polish hotseat and taskbar with 3 buttons" into tm-qpr-dev am: 4537638dfd am: 0d5ca5fe6f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20533919

Change-Id: I37921b47514fc4823b2c6ee7d61fbf1ff6ca7c67
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-19 12:26:25 +00:00
Alex Chau 4537638dfd Merge "Polish hotseat and taskbar with 3 buttons" into tm-qpr-dev 2022-12-19 11:37:39 +00:00
Brian Isganitis dcf07f398a Merge "Delay hiding Taskbar EDU until entering home or overview." into tm-qpr-dev am: a1808c3e49 am: ab29830493
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20727418

Change-Id: Ib9c849ea8640417b5d7bd8d5978c8485a04205a9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-18 23:53:20 +00:00
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 5786c775a7 Merge "Set iconsSizePx of Taskbar's DeviceProfile directly" into tm-qpr-dev am: 98d33cdff9 am: a1608fb21a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20747426

Change-Id: I1608c3061545fcffaafd398bdb0195e0637d4db8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-16 17:58:51 +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 1e37aae1dc Merge "Polish all apps taskbar unstash behavior for transient and persistent." into tm-qpr-dev am: 8216a26bfe am: 71f9faded9
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/20713695

Change-Id: I8917a9a3f4ceb856cf1fecf8699e61fb5a0bf459
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-12-14 20:10:06 +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