Commit Graph

86 Commits

Author SHA1 Message Date
Colin Cross
f156b6bc7c Set use_resource_processor: false
These modules fail to compile when use_resource_processor is enabled
by default, disable them explicitly for now.

Bug: 319712088
Test: m javac-check
Flag: NA
Change-Id: I0f7ee108aab802ee1882f8017ea4b47346e38683
2024-01-24 15:52:06 -08:00
Sebastián Franco
82d88d3fdc Merge "Updating launcher settings so that they become split-screen" into main 2024-01-22 04:58:09 +00:00
Sebastian Franco
9ae403298d Updating launcher settings so that they become split-screen
Following this guide:
https://developer.android.com/guide/topics/large-screens/activity-embedding#extract_an_activity_from_a_split_to_full_window

Bug: 204463748
Test: Open the settings app and open multiple settings, for now
only the options inside of the launcher3 package work
Flag: ACONFIG com.android.launcher3.Flags.enableTwoPaneLauncherSettings DEVELOPMENT

Change-Id: Ie6a9eb3760171da92d94cf06376127b02afff8df
2024-01-19 22:33:20 +00:00
Uwais Ashraf
77b97c0729 Replace existing Robolectric test task with functioning one.
This CL does the following:
- Creates a dir for multivalentTests
- Creates symlinks for the dir to keep Android Studio happy
- Moves many files to the multivalentTests dir
- Adjusts gradle and soong build files to use the new dir as part of
their source sets.

Test: ./gradlew :NexusLauncher:testGoogleWithQuickstepDebugUnitTest
Test: atest Launcher3RoboTests
Fix: 316553886
Bug: 316553889
Flag: NA
Change-Id: Iae28fd0c0191b3ecf9bd2950800875950cca2622
2024-01-19 21:39:23 +00:00
Cole Faust
c778a67f8b Baseline NewApi issues
NewApi is a lint check that you don't call framework methods that were
introduced in versions later than your min_sdk_version. We want to
make this an error, so we're baselineing all existing issues.

This cl was generated automatically, by taking all the NewApi issues
from the reference baselines, and all the non-NewApi issues from the
existing checked in baselines.

Bug: 268261262
Test: Presubmits
Change-Id: Ibfbf5af12819d43dabd4b6c0eb12a4d0e8258f30
2024-01-10 12:30:39 -08:00
Cole Faust
bad33e6f85 List baseline_filename on modules that are implititly using it
lintable modules currently pick up files named "lint-baseline.xml" to use as the
lint baseline implicitly. This is confusing because you could end up using the
baseline files in more modules than intended. Lint also has a feature where it
requests you remove unnecessary findings from the baseline file, so something
could be necessary for one module, but unnecessary for another that accidentally
picked up the baseline.

We're removing the implicit detection of the baseline file, which requires
all modules using it to list the baseline file explicitly.

Flag: None
Bug: 272769514
Test: Presubmits
Change-Id: Idcd6b8c8868b05a34fe621c5c05aa21cc1f149ea
2023-12-20 16:46:26 -08:00
Anna Zhuravleva
9c20381231 Add user_type field and log it in Launcher
Add new field user_type to decouple
work_profile and private_space users.
Deprecate is_work boolean field.

Bug: 312200869
Test: statsd_testdrive 19, output: https://paste.googleplex.com/5912695996416000
Flag: NA
Change-Id: Idc25f341b4353a85b8a93eab97c88195895baedc
2023-11-29 10:26:53 +00:00
Jagrut Desai
fae321cf0a Add "SettingsLibSettingsTheme" to "QuickstepResLib" static libs
Test: Presubmit
Bug: 308638354
Flag: LEGACY ENABLE_TASKBAR_PINNING DISABLED

Change-Id: I713a6555c256478972da02956c423b3f267daa71
2023-10-31 18:17:31 +00:00
Jeremy Sim
9e44e378bb Set up to use aconfig flags from WM Shell
This CL allows Launcher and Launcher test files to use aconfig flags from WM Shell.

Bug: 304597782
Test: N/A
Change-Id: I291b744207ec07d5955814879987c15f4aa13140
2023-10-10 15:16:53 -07:00
Anushree Ganjam
2a14b978c6 Remove the test aconfig lib.
zhidou@ from ACE team is working on AConfigFakelib which will be useful
to set fake flag values in both unit tests and UI automator tests.
Meanwhile, we will mock the flag values for unit tests and UI automator
tests will have all flags values defaulted to false.

testAConfigLib with "test:true" doesn't generate fake flags values and
forces us to set the flag values using "SetFlagsRule". "SetFlagsRule"
doesn't work with Out Of Proc tests and hence doesn't serve the purpose
for us. AConfigFakelib and FakeFlagTargetPreparer should use for Out Of
Proc tests.

testAConfigLib with "test:true" is suitable for java host tests where
there is no device involved. Launcher tests are instrumentation tests and tests run on actual
devices. So we can use the production version of the AConfig lib and device
config flag values will be fetched for UI Automator tests.

Also migrating "enable_twoline_allapps" to trunk stable. Unit tests is
using mockito to mock the flag value as false. The owner of
"enable_twoline_allapps" can mock the value to true in unit tests as
next step.

Bug: 294913042
Test: Local studio build and soong build
Flag: enable_twoline_allapps

Change-Id: Iea42bf18197832a9ecbddc1c3aaa8c9e36169131
2023-08-30 15:20:51 -07:00
Anushree Ganjam
8a6b74e51b Move aconfig files to aconfig folder
- Set packageName as com.android.launcher3
- Follow folder structure as per go/sysui-aconfig-structure

Bug: 294913042

Test: adb shell device_config put launcher com.android.launcher3.enable_all_apps_rv_preinflation true

Flag: enable_all_apps_rv_preinflation

Change-Id: Ib45a24d9100b657e7776c6120bdf9625533e9ed7
2023-08-28 18:27:11 -07:00
Anushree Ganjam
d1a28fe08d Add Launcher aconfig.
Use `enable_expanding_pause_work_button` as an example.

See go/trunk-stable-launcher for implementation details

Bug: 294913042

Test: adb shell device_config put launcher com.google.android.platform.launcher.aconfig.flags.enable_expanding_pause_work_button true

Flag: enable_expanding_pause_work_button
Change-Id: I732722c8b219c023adf5bf31f132ce9da72fc4d5
2023-08-24 11:11:02 -07:00
Johannes Gallmann
dc102e97d4 Merge "Extract Launcher resource interpolators to Animation Library" into udc-qpr-dev am: 19721d5e28
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/24160396

Change-Id: I1613a317fada1f1951f70d15396370b4de9cc6b5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-31 13:08:42 +00:00
Johannes Gallmann
a82eebd286 Extract Launcher resource interpolators to Animation Library
Bug: 292080029
Test: atest InterpolatorResourcesTest
Change-Id: I65dba4eb3f96844d4f9a4d0af608c0bd8e77ccc2
2023-07-22 09:52:53 +02:00
Treehugger Robot
5e6b4693be Merge "Launcher3QuickStepGo should have one Default Activity" into main am: 11b2209961 am: 776d87a432 am: 49d8c851d3 am: f3d2709fc6 am: 82298d3a7a
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/2652760

Change-Id: Ic6c22b65be85453505f037d5fe39f40fb5d283f7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-13 08:56:02 +00:00
Treehugger Robot
f3d2709fc6 Merge "Launcher3QuickStepGo should have one Default Activity" into main am: 11b2209961 am: 776d87a432 am: 49d8c851d3
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/2652760

Change-Id: I3237519680116125f311d3eed8efafdac96d7af3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-13 07:35:18 +00:00
Arvind Kumar
384a0eddd3 Launcher3QuickStepGo should have one Default Activity
Since Launcher3QuickStepGo including quickstep/AndroidManifest-launcher.xml
manifest in LauncherGoResLib adding additional default activity
launcher3.uioverrides.QuickstepLauncher along with launcher3.Launcher3QuickStepGo.
Since we have two default activity, intent resolver trying to resolve the
action and showing popup to  select home app.

This change add quickstep/AndroidManifest.xml for LauncherGoResLib which
does not have any default activity.

Bug: 288363376
Test: With this change we are not observing popup to select the home app.

Change-Id: I36827f85a51f8cd22934f4acb3abac9b3adf83a5
2023-07-11 08:42:50 +05:30
Kateryna Ivanova
7120373bbc Migrate Interpolators from Launcher3 to the public animation library
Test: atest
Bug: 271850966
Change-Id: Iba999f2e753764a37d35e508e707df02388432e9
2023-05-30 07:20:38 +00:00
Kateryna Ivanova
c0a003ed77 Revert^2 "Introduce library for public animation APIs"
af289a1cd1

Bug: 271850966
Change-Id: Iddc1790fc3704ce20fde4377d05360a77b6c146c
2023-04-28 08:38:26 +00:00
Liana Kazanova
af289a1cd1 Revert "Introduce library for public animation APIs"
Revert submission 22740447-animation-library

Reason for revert: b/279195827

Reverted changes: /q/submissionid:22740447-animation-library

Change-Id: Ie2ef34f8bdb3076a015d91742be041c7c9ade8a2
2023-04-21 19:14:23 +00:00
Kateryna Ivanova
2d6a8e3a87 Introduce library for public animation APIs
* Add a public library
* Pull Interpolators implementation from systemui animation library
* migrate existing usages of Interpolators

Test: n/a
Bug: 271850966
Change-Id: I3f941423b76f555b2c1e7205e23d5ff9ad95d413
2023-04-21 08:06:47 +00:00
Nicolo' Mazzucato
e8ee34ad8a Move Launcher classes shared between tests and prod in a separate lib
This is necessary because otherwise those are included in several gradle projects. Gradle doesn't support the same files imported in different projects, and it removes them from a random one if it happens, resulting in missing symbols.

This extracts the shared files in a new target, and adds it as dep of the original target.

Test: Build launcher + execute a few tests manually with gradle + verify that Launcher.java can resolve all symbols with gradle config
Bug: 262267728
Change-Id: Ida5b25c45320d517603834112f4699e4d3344c03
2023-02-07 12:03:10 +00:00
Sam Dubey
a3577293b6 Revert "Support multi users scenarios in Tapl"
Revert "Reduce multi users tests runtime"

Revert "Add PlatformTesting to dependency."

Revert "Move platform testing util to separate gradle module"

Revert submission 20311444-user-switch-nosleep

Reason for revert: Part of DM+Platinum montiro as a likely culprit for b/257210412. Won't be submitted if proven otherwise.
Reverted Changes:
I90b1069de:Support multi users scenarios in Tapl
I706da86a3:Add PlatformTesting to dependency.
I605cd76c4:Move platform testing util to separate gradle modu...
I64b571dc4:Reduce multi users tests runtime

Change-Id: I6310efa59fe1755feb29bef28d890e684b7164c6
2022-11-03 10:08:13 +00:00
Benno Lin
2e35f5152d Support multi users scenarios in Tapl
Tapl uses ContentProvider to get information from Launcher.
By default, it uses system user, who usually spwans the process
of instrumented tests, to send requests. Therefore, it can't get
the information of secondary user's Launcher process.

To solve the problem, the CL proposes to allow tests providing
UserInfo to Tapl, so that Tapl can use the right user's context
to get the test information. For more details, please refer to
go/multi-users-waiting-dd.

Test: https://android-build.googleplex.com/builds/abtd/run/L62400000957107134
Bug: 254402688
Change-Id: I90b1069de31e979138683049586bd87a7e7d813a
2022-11-01 14:36:24 +00:00
Johannes Gallmann
6518efce73 Extracting ViewCapture into common Library
The ViewCapture functionality is extracted into a common Library accessible to the Launcher and SystemUi modules.

Test: None yet
Change-Id: I4be394ed8dc86e30f6b8c69c438b8bc943e7907c
2022-10-26 12:29:30 +00:00
Thales Lima
2c54bbfdfc Convert make to bp
Fix: 229946262
Test: build all launchers and run atest
Change-Id: Ie9b66ba0d83aa0c3c476dd30853ef52279c9619e
(cherry picked from commit 42f15f9b81)
Merged-In: Ie9b66ba0d83aa0c3c476dd30853ef52279c9619e
2022-10-18 10:02:43 +00: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
Thales Lima
813834a411 Convert make to bp
Test: build and run atest

Change-Id: I780e5a68d049b5a776f490bca3c0dfe0c861e0ea
2022-05-23 11:10:00 +00:00
Shikha Malhotra
e957b600d3 Refactor code to be used in LauncherLily features
Refactor add to workspace code to be used in Lily Launcher.
Also utilising code swap feature to swap out functionality of sorting
items on workspaces and finding next vacant space.

Bug: b/218186705
Test: Manually tested Launcher3 works.
Change-Id: I42a44eabeb307e1d23ef333e0a169437f9062bb6
2022-04-20 07:22:20 +00:00
Jon Miranda
812feca9ef Merge "Revert "Revert "Sync hotseat/taskbar handoff""" into tm-dev 2022-04-08 01:39:42 +00:00
Jon Miranda
27f9559203 Revert "Revert "Sync hotseat/taskbar handoff""
This reverts commit efca5c8655.

Reason for revert: ANR no longer happening

Bug: 223789074
Bug: 223443781
Bug: 202507555
Change-Id: I03bfe8642ef4ed0f9e8fbd543141d39c66375604
2022-04-06 17:29:09 +00:00
Shikha Malhotra
7884332174 Top row of first workspace screen occupied only when QSB is placed at
the top.

This CL facilitates making the Feature Flag QSB_ON_FIRST_SCREEN as false
for LauncherLilyGoogle to make sure that that the top row on the first
screen is not blocked for QSB. Hinging it on BuildConfig allows it be
overwritten in LauncherLilyGoogle.

Bug: 208136186
Bug: 188511548

Test: Manually tested that top row of the first screen is not occupied
and does not clear the shortcuts after a power cycle for LauncherLilyGoogle.

Change-Id: I9113e2e2f2c0a160a2e1caf0ef3c5f86c6ec54b8
2022-03-11 13:04:55 +00:00
TreeHugger Robot
6b7e469088 Merge "Add taskbar TAPL tests" into tm-dev 2022-03-11 00:00:36 +00:00
Schneider Victor-tulias
fb252e7ce1 Add taskbar TAPL tests
- Added TAPL objects to support TAPL tests for taskbar features
- Added tests for major taskbar features: hiding/showing the taskbar, opening all apps, lauching apps and app deep shortcuts from the taskbar/all apps page, launching apps and app deep shortcuts in splitscreen
- These tests should only run for large devices

Design: go/taskbar-tapl-tests
Test: ran tests locally with invalid configurations and remotely
Bug: 215218813
Change-Id: I3c28c339707467414aa47fa633f87fa0c1fdee57
2022-03-10 13:02:35 -08:00
Jon Miranda
efca5c8655 Revert "Sync hotseat/taskbar handoff"
This reverts commit ede8718e63.

Reason for revert: causing ANR b/223789074

Bug: 223789074
Bug: 223443781
Bug: 202507555

Change-Id: Ibd76939a345f54e8945cdd97e652f5e06e40edcb
2022-03-10 18:27:36 +00:00
Jon Miranda
ede8718e63 Sync hotseat/taskbar handoff
+ Do not allow sync during tests

Bug: 223443781
Bug: 202507555
Test: open/close apps in hotseat/taskbar
Change-Id: I2f434d440a26999219e785b8671768e27d0dcad3
2022-03-09 10:06:47 -08:00
Benno Lin
7738cac424 Implemnet methods to drag a icon to given Workspace cell
The CL implements public methods to drag an Icon from AllApps to a
given cell in the workspace.

Bug: 199120092
Test: Launcher3Tests:com.android.launcher3.ui.TaplTestsLauncher3#testDragAppIconToWorkspaceCell
Test: https://android-build.googleplex.com/builds/abtd/run/L89300000953052361
Test: https://android-build.googleplex.com/builds/abtd/run/L44500000953013792
Change-Id: Ife16d1f1b55b809763dd40f5afee6711049a4729
2022-02-15 01:48:45 +00:00
Bob Badour
a7548b5871 Fix licenses and license texts.
Entire package is 1p.

Bug: 210912771

Test: m nothing

Change-Id: Id941d93786882aca78f214ac692433a353b84ed3
2022-02-01 17:26:39 +00:00
TreeHugger Robot
4f508c7f3e Merge "Fix ordering of resource libraries for Quickstep build." into sc-v2-dev am: 418185e4e8 am: f37e64660d
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16388218

Change-Id: Iee7f3eb17f334a40bf3aaa24afed506aa1d6e42c
2021-12-03 18:39:29 +00:00
Ben Murdoch
fabc873f72 Fix ordering of resource libraries for Quickstep build.
The ordering of depedent resource libraries is important when more
than one library provides a particular resource. In the case
of the Launcher3QuickStepLib target, the most specific resources are in
QuickstepResLib target so it should be the last dependency.

Bug: 208647810
Test: builds, resources overlaid correctly.

Change-Id: I47ac36faae18a8382fe5e8f9c83ac0c2ae4c310f
2021-12-03 14:54:20 +00:00
TreeHugger Robot
3bd6388995 Merge "Add animated background to the suw all set page." into sc-v2-dev am: 010faef3a5 am: 61795cd45a
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16223698

Change-Id: I779e296c97cc6a6370fb3925a471f4392c058a40
2021-11-18 00:35:20 +00:00
Schneider Victor-tulias
d0865f8219 Add animated background to the suw all set page.
Test: Ran all set page in landscape/portrait, dark/light mode
Fixes: 190828563
Change-Id: Ie7fbc6ce6777e9cec8d4dcb5dff3090dc167a161
2021-11-10 14:15:55 -08:00
TreeHugger Robot
cc4438ac0b Merge "launcher: use a different task menu for foldables" into sc-v2-dev am: 0aadbc6b37 am: 3945fd8f4c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16214330

Change-Id: Ife3cc0d3a23a048495d275b8225d64c32af7743b
2021-11-10 20:29:04 +00:00
Thales Lima
c335ad28a2 launcher: use a different task menu for foldables
Foldables use a different menu from phones, positioned either to the
right or left of the app icon, and display an arrow. Since TaskMenuView
is very specific for handhelds, it was cleaner to create another class
to handle foldables case extending from ArrowPopup.

This creates a working menu, the correct style will come in later CLs.

Bug: 193432925
Test: open Overview and tap the app icon

Fixes: 205298731
Test: atest NexusLauncherTests

Change-Id: I7a5c1fb4800a309f40fadb2df0f6c3a4c3f42679
2021-11-10 17:30:13 +00:00
Greg Kaiser
24898d3be0 Revert "launcher: use a different task menu for foldables"
This reverts commit 10eb3cd98b.

Reason for revert: Root cause of P0 b/205278434
Bug: 205278434
Bug: 193432925
Test: Local reverted and now launcher works on wembley

Change-Id: I3605c01066a3ce383d45e0a938f1e00b3c7f7bb9
Merged-In: I5ee18d3ee1b671fcaedda633e7a268addd5c5c15
2021-11-05 16:19:05 +00:00
Greg Kaiser
6f220d92b6 Revert "launcher: use a different task menu for foldables"
This reverts commit 238f630001.

Reason for revert: Root cause of P0 b/205278434
Bug: 205278434
Test: Local reverted and now launcher works on wembley

Change-Id: I5ee18d3ee1b671fcaedda633e7a268addd5c5c15
2021-11-05 16:12:47 +00:00
Thales Lima
10eb3cd98b launcher: use a different task menu for foldables
Foldables use a different menu from phones, positioned either to the
right or left of the app icon, and display an arrow. Since TaskMenuView
is very specific for handhelds, it was cleaner to create another class
to handle foldables case extending from ArrowPopup.

This creates a working menu, the correct style will come in later CLs.

Bug: 193432925
Test: open Overview and tap the app icon
Change-Id: Icb068954e1e20a52d80c16c52d8e38ce9a181a8b
Merged-In: Icb068954e1e20a52d80c16c52d8e38ce9a181a8b
2021-11-04 16:40:37 +00:00
Thales Lima
238f630001 launcher: use a different task menu for foldables
Foldables use a different menu from phones, positioned either to the
right or left of the app icon, and display an arrow. Since TaskMenuView
is very specific for handhelds, it was cleaner to create another class
to handle foldables case extending from ArrowPopup.

This creates a working menu, the correct style will come in later CLs.

Bug: 193432925
Test: open Overview and tap the app icon
Change-Id: Icb068954e1e20a52d80c16c52d8e38ce9a181a8b
2021-11-04 14:40:47 +00:00
Thales Lima
9e6b691e99 Merge "add kotlin support for launcher" into sc-v2-dev am: 33f9de0225 am: 997bee0c73
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16101503

Change-Id: I6692c0f54d5ba676b84638f9914c15ba81cdaef5
2021-11-01 16:56:10 +00:00
Thales Lima
26f44911a6 add kotlin support for launcher
Bug: 193432925
Test: click on the app icon and check logcat
Change-Id: I2ca4d57105fe4e1b1dfc6c968a7c1bbd3cbd2151
2021-10-29 15:40:41 +00:00