Commit Graph

11829 Commits

Author SHA1 Message Date
Jagrut Desai
1dc99f3848 Announce for accessiblity when taskbar is invoked/closed
Test: Manual
Bug: 265620540
Change-Id: I6660be7716ec59c765f3d54f8fe9889eaaf56e10
2023-03-08 09:54:10 -08:00
Brandon Dayauon
d0838d3ac1 Merge "Correctly make to spec the color for "Turn on work apps" button and add stroke" into tm-qpr-dev 2023-03-07 02:55:01 +00:00
Tony Wickham
7fa1e32f21 Merge "Align taskbar children to Y value instead of X." into tm-qpr-dev 2023-03-06 23:51:50 +00:00
Brian Isganitis
2790c9dbbf Merge "Implement light mode for persistent Taskbar." into tm-qpr-dev 2023-03-06 23:07:41 +00:00
TreeHugger Robot
f22345eace Merge "Fix an issue with concurrent modification on widget holders list" into tm-qpr-dev 2023-03-06 20:05:29 +00:00
Johannes Gallmann
83683829f7 Merge "Add onEndCallback to ContainerAnimationRunner" into tm-qpr-dev 2023-03-06 18:55:49 +00:00
Hyunyoung Song
eeee84efb6 Merge "Hide the splash icon when launching with no view and no item." into tm-qpr-dev 2023-03-06 18:23:32 +00:00
Pat Manning
d3cffe8156 Align taskbar children to Y value instead of X.
Fix: 271858023
Test: manual on tablet.
Change-Id: I60882a062d5f2bb8f24525e2cec9c4a091b31545
2023-03-06 17:57:58 +00:00
Hongwei Wang
1897e4f40f Merge "Turn ENABLE_PIP_APP_ICON_OVERLAY on by default" into tm-qpr-dev 2023-03-06 17:13:56 +00:00
TreeHugger Robot
a176ad060f Merge "Sync overview scroll so that it ends before/at same time as taskbar animation" into tm-qpr-dev 2023-03-04 01:46:17 +00:00
Jeremy Sim
ad9bdcfd2d Merge "Create TAPL test suite for splitscreen" into tm-qpr-dev 2023-03-04 01:10:47 +00:00
Sunny Goyal
33c3e77411 Merge "Simplifying code around multiple translation components" into tm-qpr-dev 2023-03-04 00:59:54 +00:00
Sihua Ma
e0420ab2bc Fix an issue with concurrent modification on widget holders list
This could happen when the QuickstepWidgetHolder is not initialized on the main thread, or destroy() is not called on the main thread, while a random widget is removed at the same time which iterates the widget holder list and calls the callbacks.

Also fixing an issue with memory leak that is caused by the strong reference in WeakHashMap

Test: Presubmit
Fix: 271362384
Change-Id: I621ffb29c167cef9842758c5fdefd6bb66dd487e
2023-03-03 16:34:47 -08:00
TreeHugger Robot
3dd1440520 Merge "Translate taskbar to hotseat without jump when swiping up from overview" into tm-qpr-dev 2023-03-04 00:18:16 +00:00
Brandon Dayauon
ffc7084b37 Correctly make to spec the color for "Turn on work apps" button and add stroke
- define color in base and quickstep

bug: 267975252
test: Manual - video: lightTheme: https://drive.google.com/file/d/1noY5Grq4jOxFIheL91KB_sOYRwp8XIyD/view?usp=sharing
test: darkTheme: https://drive.google.com/file/d/1o1uaTedAKbPy3BTG1GKJ0ldyHFs0-jGN/view?usp=sharing
Change-Id: I266b6624aa6f045c1f30c0db984fa9e1c5f6fe7e
2023-03-03 15:42:13 -08:00
Brian Isganitis
d2d2913812 Merge changes from topic "running-in-test-camel" into tm-qpr-dev
* changes:
  Expose IS_RUNNING_IN_TEST_HARNESS as static method.
  Make isTooltipEnabled a getter due to its mutable dependencies.
2023-03-03 23:15:38 +00:00
Jon Miranda
8f2b50fdeb Sync overview scroll so that it ends before/at same time as taskbar animation
Fixes: 267355260
Test: open overview, scroll to 'Clear all button', tap on blank space
Change-Id: Ia58683f7b167ff42443dda3d39368bf6aaa366e0
2023-03-03 13:34:55 -08:00
Vinit Nayak
f51426a6ee Merge "Add null check for recents when tapping on Taskbar icons" into tm-qpr-dev 2023-03-03 21:33:52 +00:00
Brian Isganitis
5248b02080 Merge "Treat setup wizard default home as null." into tm-qpr-dev 2023-03-03 21:11:18 +00:00
Vinit Nayak
750009face Merge "Fix quick switch in between two split pairs crash" into tm-qpr-dev 2023-03-03 19:37:04 +00:00
Ats Jenk
37d6a2be10 Merge "Hide desktop tile when choosing apps for split" into tm-qpr-dev 2023-03-03 19:32:13 +00:00
Schneider Victor-tulias
860b30e7ac Merge "Translate the TutorialStepIndicator to prevent overlapping skip and done buttons" into tm-qpr-dev 2023-03-03 18:14:44 +00:00
Johannes Gallmann
f54b88d2d6 Add onEndCallback to ContainerAnimationRunner
Bug: 247121782
Test: Manual, i.e. tested that callback is invoked after launch animation
Change-Id: Ie52ffa1b76de01943dd16346560768b3ecced118
2023-03-03 16:55:07 +01:00
Nick Chameyev
c7ab991818 Merge "Do not use private APIs in unfold module" into tm-qpr-dev 2023-03-03 13:22:03 +00:00
Vinit Nayak
26c893603f Add null check for recents when tapping on Taskbar icons
Fixes: 270669636
Test: Couldn't repro, but visually we have checks for
recentsView != null && OTHER_CONDITION, but in the else
case we don't check if recentsView being null is the reason
the if-block didn't get triggered

Change-Id: I72e7480bac56c7e7b7edb73edac4309e9923d302
2023-03-02 18:18:11 -08:00
Jeremy Sim
03815e6c79 Create TAPL test suite for splitscreen
This patch creates a new file, TaplTestsSplitscreen.java, containing one TAPL test sequence.

testSplitAppFromHomeWithItself() tests the user flow of splitting from home using an app that is already running, and then selecting the app itself again as a split target from the Taskbar. The expected result is that Launcher shows an error message gracefully and does not crash.

Fixes: 267554450
Test: Ran test file locally and verified that it passes.
Change-Id: I98a1e3a4143d10a6572175711059b3a77aa5dcd0
2023-03-02 16:35:54 -08:00
Brian Isganitis
473cfe0a1a Implement light mode for persistent Taskbar.
NavbarButtonsViewController has been massaged to make sure the buttons
contrast well with the color of the Taskbar background that they are on,
if applicable.

Test: Manual
Fix: 268052229
Change-Id: I917a1a1be013c304910b0f674ae8a13abb8e47a1
Merged-In: I917a1a1be013c304910b0f674ae8a13abb8e47a1
2023-03-03 00:35:20 +00:00
Brian Isganitis
fdd044e16e Expose IS_RUNNING_IN_TEST_HARNESS as static method.
This variable is now mutable, making the uppercase format misleading.
For instance, users might assume they can use this value in other
immutable properties, when they really should be accessing the latest
value every time they need it.

Context: https://source.android.com/docs/setup/contribute/code-style#follow-field-naming-conventions

Test: Manual
Bug: 271160958
Change-Id: Iaaa51d9153cb8a7d686c72e1210b1948029dcfd5
2023-03-03 00:17:33 +00:00
Ats Jenk
55cb5fca91 Hide desktop tile when choosing apps for split
Bug: 269660657
Test: open overview, click on split screen action, observe desktop tile
  is hidden
Test: on home screen, long press on app icon and choose split screen,
  observe overview opens with desktop tile hidden

Change-Id: I60c06a8e2ef8fc13e741f8845254d22e9e430bb6
2023-03-02 15:14:34 -08:00
Schneider Victor-tulias
3146c5f6b4 Translate the TutorialStepIndicator to prevent overlapping skip and done buttons
On large fonts and display sizes, the TutorialStepIndicator can overlap the skip and/or done buttons. Adding some additional translation to account for this.

Fixes: 269588989
Test: tried the tutorial on the largest and default font and display sizes on a phone
Change-Id: I45a276bba3e9cb10336c6f3aa363b7a5c7a73543
2023-03-02 15:13:21 -08:00
Ats Jenk
8e20d62034 Merge "Support large desktop tile in grid only overview" into tm-qpr-dev 2023-03-02 22:45:38 +00:00
Sunny Goyal
82dfc15037 Simplifying code around multiple translation components
Bug: 270759683
Test: Verified on device
Change-Id: I6c758c715828ae25e0e3c60b793cf85d70cb2487
2023-03-02 12:22:03 -08:00
Luca Zuccarini
f295e3a85a Hide the splash icon when launching with no view and no item.
This is achieved by instead creating an empty item info that only
specifies the splash type to be solid color.

Bug: 269343536
Test: manual
Change-Id: Ibf5c8f1c949e26af207b8c6e382f71677b9acc2d
2023-03-02 18:19:38 +00:00
Pat Manning
c6c33dd115 Merge "Add modal action for grid only overview." into tm-qpr-dev 2023-03-02 17:06:51 +00:00
Ats Jenk
45e0a90013 Support large desktop tile in grid only overview
Based on UX specs, desktop tile should be using the large size and be
pinned ot the right in overview.
Updates to ensure the desktop tile is using the focused tile size when
grid only overview is enabled.

Test: enable grid only overview, have some fullscreen tasks in overview
  and some desktop tasks, open overview from home, observe desktop tile
  peeks from right
Test: same setup as before, open a fullscreen app, open overview,
  observe desktop tile peeks in from right
Test: same setup as before, go to desktop, open overview, observe
  desktop tile is focused
Test: turn off grid only overview, repeat the same test case

Bug: 271131878

Change-Id: Ic804428dca415f08a26c47e1d6b9b3a94fcfbfdf
2023-03-02 09:04:37 -08:00
TreeHugger Robot
7f8f573f46 Merge "Prevent QSB from being a part of the icon reveal animation." into tm-qpr-dev 2023-03-02 16:29:05 +00:00
Sunny Goyal
f4bead71ea Merge "Restarting launcher if a flag changes" into tm-qpr-dev 2023-03-02 16:23:45 +00:00
Pat Manning
b4f3807df2 Add modal action for grid only overview.
This is an issue for tablets on landscape.

Fix: 271314156
Test: manual.
Change-Id: I5c3c1a9ff4b193439bdcc72f17b20bc8da4d16f5
2023-03-02 10:43:55 +00:00
Stefan Andonian
86d8db485f Merge "Preload expensive objects before user is unlocked." into tm-qpr-dev 2023-03-02 07:06:54 +00:00
Jeremy Sim
24b1890c4b Merge "Fix bug with Taskbar not differentiating between user profiles" into tm-qpr-dev 2023-03-02 02:47:46 +00:00
Brian Isganitis
589cb3480a Treat setup wizard default home as null.
During setup, default home progresses setup -> null -> launcher, which
can lead us to unintentionally preload the fallback overview.

Fix: 258022658
Test: Manual
Change-Id: I952b7923b06f2d4b058f42834d1f840719c73fd0
2023-03-01 18:05:51 -08:00
Jon Miranda
f01ca85c20 Prevent QSB from being a part of the icon reveal animation.
Fixes: 270694593
Test: taskbar on foldable and tablet
Change-Id: I1782f715454da1240174be1b4f496c910be3764a
2023-03-01 17:17:36 -08:00
Stefan Andonian
5bd9a225a8 Preload expensive objects before user is unlocked.
This change includes migrating data required for starting the launcher
from encrypted storage into device protected storage. All of the data
being moved has already been approved by the correct authorities.

Bug: 251502424
Test: Performed latency testing using logs from user unlock until first
workspace screen loaded.

Change-Id: I58b0cd1c7bad260c2252f9e172ef85ab885c7fe9
2023-03-01 23:09:07 +00:00
Tony Wickham
a8b120bc7e Merge "Only recreate taskbar for uiMode theme changes" into tm-qpr-dev 2023-03-01 21:29:16 +00:00
Tony Wickham
10c78b94f5 Translate taskbar to hotseat without jump when swiping up from overview
Also use this code path to reset translation when going from an app to
launcher.

Test: swipe up from overview, goes home without hotseat jumping
Fixes: 262826748
Change-Id: If8a4278a61e3786cfe16c388eabefacc63e8f327
2023-03-01 19:20:57 +00:00
Jeremy Sim
e35d112693 Fix bug with Taskbar not differentiating between user profiles
This patch fixes a bug where Taskbar would not differentiate between user profiles when selecting an app to launch from Overview.

The bug occurred because findLastActiveTaskAndRunCallback(), which checks for already-running tasks when launching an app from the Taskbar, only checks for a ComponentName match and not a userId match.

Fixed by making the findLastActiveTaskAndRunCallback() also check for a userId match.

Fixes: 270456926
Test: Manual
Change-Id: I43ff06083a5dce775fdbd0b0ed951beaae34c0ab
2023-03-01 10:57:41 -08:00
Jeremy Sim
a49569a90e Merge "Fix bug with rotating in the middle of split select staging animation" into tm-qpr-dev 2023-03-01 18:53:00 +00:00
Alex Chau
6a10a003d6 Merge "Land ENABLE_TASKBAR_IN_OVERVIEW" into tm-qpr-dev 2023-03-01 17:13:35 +00:00
Jordan Demeulenaere
be82bc661c Format files with the upcoming version of ktfmt
This CL was generated automatically from the following command:

$ external/ktfmt/prepare_upgrade.py --repo=packages/apps/Launcher3/ --build_id=9645412 --bug_id=266197805

This CL formats all files already correctly formatted with the upcoming
version of ktfmt.

Bug: 266197805
Test: Presubmits
Change-Id: Ide7d63a75fed98aabe348821355356c77f00a9ec
Merged-In: Ide7d63a75fed98aabe348821355356c77f00a9ec
2023-03-01 09:11:48 +00:00
Jeremy Sim
8477226a3d Fix bug with rotating in the middle of split select staging animation
This patch fixes a bug where a user could cause a crash by rotating the device in the middle of the split staging animation.

The bug arose because:
1) Normally, when you rotate the device, reapplyState() is called to refresh the UI. This reloads the state, cancels any animations that happen to be running at the time, and generally works fine in most cases.
2) When animations are canceled within Overview, we also call RecentsView#reset() to clean up loose ends and prevent bugs.
3) Unlike other states, the split select state is unique because it is a transient state that holds the user's choices temporarily. If that information was cleared -- by reset() -- before it loads, it will crash.

Fixed by creating a new function in SplitScreenSelectState, onStateReapplied(), that is called when a reload is occurring. It makes sure that animations do not get canceled by calling end() to accelerate them to completion before the reloading occurs.

Fixes: 249819567
Test: Manual
Change-Id: I70c4651bcb5df81edd25f6e58e21520ebb391d01
2023-02-28 17:13:36 -08:00