Commit Graph

11821 Commits

Author SHA1 Message Date
Ats Jenk
4d01acf44e Remove empty desktop tile
Do not show the desktop tile in overview when there are no apps on the
desktop.

Bug: 270399069
Test: have desktop mode proto 2 enabled, launch an app in fullscreen,
  open overview, observe no desktop tile
Test: move an app to desktop, be on desktop, open overview, observe
  overview is opened with desktop tile focused
Test: have an app on desktop, go home and launch an app in fullscreen,
  open overview, observe fullscreen app is focused, desktop is peeking
  in from right
Test: have an app on desktop and a fullscreen app in overview, open
  desktop from overview, close the desktop app, open overview, observe
  desktop tile is not shown
Change-Id: Ia8657d5b260043a630f32b35f2560ea93273d421
2023-03-08 11:49:48 -08: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
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
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
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
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
Tony Wickham
b0fa52f3ee Only recreate taskbar for uiMode theme changes
Test: simulate docking/undocking, ensure taskbar is not recreated;
set dark/light theme and ensure taskbar is still recreated
Fixes: 233459895

Change-Id: I583557039f4a7c02baaa5e62eb888f55d659adb0
2023-02-28 23:55:31 +00:00
Bill Yi
95623d83d8 Merge "Import translations. DO NOT MERGE ANYWHERE" into tm-qpr-dev 2023-02-28 22:15:43 +00:00
Brian Isganitis
aa08af872b Make isTooltipEnabled a getter due to its mutable dependencies.
IS_RUNNING_IN_TEST_HARNESS is mutable and can change during the
lifecycle of launcher.

Test: Manual
Fix: 271160958
Change-Id: Ib033e0684d99e784185e1da1e52632411f6c096b
2023-02-28 21:51:52 +00:00
Alex Chau
81b1d3576a Merge "Skip updateIconAlphaForHome if Taskbar is already destroyed" into tm-qpr-dev 2023-02-28 21:23:53 +00:00
Alex Chau
8aa3f00238 Land ENABLE_TASKBAR_IN_OVERVIEW
Fix: 270393449
Test: manual
Change-Id: I731bfa8ee86154fd034781e27272abc81a6fe6c6
2023-02-28 20:18:32 +00:00
Sunny Goyal
2003c1c73f Restarting launcher if a flag changes
> Only restart when the screen is off.
> This allows better propogation of flags similar to systemUI
> Adding support for integer flags

Bug: 266854800
Test: Verified on device using device_config shell command
Change-Id: I4ea9c564f2d973f11f9570b5a21365183afefab7
2023-02-28 12:01:22 -08:00
Sunny Goyal
1297f400bc Merge "Moving flag creation to a separate file" into tm-qpr-dev 2023-02-28 19:18:25 +00:00
Sunny Goyal
98204add71 Moving flag creation to a separate file
> This provides better control over proguarding descriptions
> Enforcing bug number in flag creation

Bug: 270386012
Test: Presubmit and verified on device
Change-Id: I31014e397690379024d2e42c0e913ce806b9569c
Merged-In: I31014e397690379024d2e42c0e913ce806b9569c
2023-02-28 18:05:42 +00:00