Commit Graph

77397 Commits

Author SHA1 Message Date
Alex Chau 194768420d Mark TaplTestsOverviewDesktop.enterDesktopViaOverviewMenu as postsubmit only
Fix: 358364342
Bug: 320313527
Test: TaplTestsOverviewDesktop
Flag: EXEMPT TEST_ONLY
Change-Id: I52f2db342ca75f66d5159a669cb8493caea0e88a
2024-08-09 10:39:03 +00:00
Liran Binyamin 5eeff8d1e3 Merge "Support expanding the bar while animating" into main 2024-08-08 12:44:42 +00:00
Treehugger Robot 3307f87b82 Merge "Implement e2e test for desktop windowing" into main 2024-08-08 11:32:10 +00:00
Alex Chau 1ceac5ddfe Implement e2e test for desktop windowing
Code changes:
- TaskView, GroupedTaskView and DesktopTaskView now uses different resId, so it can be differentiated by TAPL
- Extracted result handling of icon loading, so we can override in DesktopTaskView
- DesktopTaskView now load icons, so titleDescription can be loaded. When icons are loaded, contentDescription are applied to respective snapshotViews; icon unloading is ignored
- Track launchDesktopFromRecents and composeRecentsLaunchAnimator in TAPL events so we can test if the TaskView launch path is correct

Test changes:
- Added TaplTestsOverviewDesktop that move 2 TestActivities into Desktop, and launch the DesktopTaskView as static and live tile
- TaplTestsOverviewDesktop is limited to Tangor/cf_tablet only, and added LimitDeviceRule to AbstractLauncherUiTest to enable @AllowedDevices and @IgnoreLimit

TAPL changes (2 APIs added/modified):
- Changed TaskView matcher to use id/task_view_* to match all TaskView types
- When Overview is launcehd from Background, mark the currentTask after the launch as liveTile. When an OverviewTask has the same accessibility node as the liveTile, it'll expect different event when launching.
- [API change] BaseOverview.getTestActivityTask can now matches mutiple test activiites, useful for matching GroupedTaskView and DesktopTaskView; Fix a bug that getTestActivityTask wrongly use `getParent()` which is RecentsView to match activityName.
- In OverviewTask.open, we'll expect different events based on TaskView types and whether it's a live tile. Launching DesktopTaskView will in additional verify Desktop header is present on screen.
- [API change] In OverviewTaskMenu, support tapping Desktop menu and verify Desktop header is present on screen.
- Removed unused OverviewTaskMenuItem

Fix: 320313527
Test: TaplTestsOverviewDesktop
Flag: com.android.window.flags.enable_desktop_windowing_mode
Change-Id: I89261c787364901320f3acb18f01ddad5f62d17c
2024-08-08 10:37:40 +01:00
Liran Binyamin 46111b109e Support expanding the bar while animating
Update the BubbleBarAnimator to handle auto expanding bubbles as
well as expand signals that are received while animating the bubble
bar.

The expansion starts after the bar reaches its peak height. If the
hide animation starts before the expansion signal is received, we
ignore it.

Next step is to delay showing the expanded view until the bubble bar
starts expanding.

Flag: com.android.wm.shell.enable_bubble_bar
Fixes: 353644484
Fixes: 356415377
Bug: 339683389
Test: atest BubbleBarViewAnimatorTest
Change-Id: I79a63f0b8728abc1ab3345f0116cbfcba2918643
2024-08-08 03:46:07 -04:00
Jeremy Sim 5b3044a983 Merge "Fix problem with "Cancel" text not double-bolding" into main 2024-08-08 01:21:19 +00:00
Tracy Zhou eeb98c8e75 Merge "Set navbuttons_view width instead of height in landscape mode" into main 2024-08-07 21:04:51 +00:00
Tracy Zhou 26a3dc8d5c Set navbuttons_view width instead of height in landscape mode
Launcher tests fail in the first run in landscape mode. Somehow this is not reproducible locally or can be seen in production. After digging into hierarchy traces, found that the height of the nav buttons view (in landscape mode) is set to the task bar size (48). Then found where we had this logic historically and adjusted to width in phone landscape mode.

Fixes: 356156690
Test: https://android-build.corp.google.com/builds/abtd/run/L40800030005694733
Flag: com.android.wm.shell.enable_taskbar_on_phones
Change-Id: I170fe45375a63a2e1d2e63b1d680efb45ae0752e
2024-08-07 12:19:59 -07:00
Jagrut Desai 01d04c40dc Merge "Enable TaskbarEduTooltipControllerTests with rule ordering" into main 2024-08-07 17:55:02 +00:00
Treehugger Robot be48abdacf Merge "Separate TaplStartLauncherViaGestureTests test cases to prevent timeouts" into main 2024-08-07 17:49:51 +00:00
Jordan Silva 3645e88ae5 Merge "Add Jetpack Compose for Launcher3 and Quickstep behind a build flag (2/3)" into main 2024-08-07 17:08:39 +00:00
Ats Jenk a5fa9bc911 Merge "Update bubble a11y nav order in bubble bar" into main 2024-08-07 16:39:33 +00:00
Schneider Victor-tulias aa01b2e755 Separate TaplStartLauncherViaGestureTests test cases to prevent timeouts
Flag: EXEMPT test fix
Fixes: 348476703
Test: TaplStartLauncherViaGestureTests
Change-Id: I083bbf67b3079fce8fed3a3d6b4ea477e4fef300
2024-08-07 12:01:55 -04:00
Sam Cackett acf4cd1163 Merge "Add hover states to IconView and TaskThumbnailView in Overview" into main 2024-08-07 11:18:51 +00:00
Sam Cackett 5c2d50d901 Add hover states to IconView and TaskThumbnailView in Overview
- Hover over IconView passes to FastBitmapDrawable
- Hover over TaskThumbnailView bounds highlights the border
- Hover over TaskView outside of IconView or Thumbnail does nothing
(previously highlighted a border incorrectly)

Bug: 342594235
Test: OverviewTaskViewHoverImageTest, OverviewDesktopTaskImageTest
Flag: com.android.launcher3.enable_hover_of_child_elements_in_taskview
Change-Id: I5b0753bdec609a4a6658a35422e2823c4ed109fc
2024-08-07 08:22:44 +00:00
Treehugger Robot 0a432f919f [automerger skipped] Merge "Import translations. DO NOT MERGE ANYWHERE" into aosp-main-future am: 3bf8291ba8 -s ours
am skip reason: contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/28666566

Change-Id: I37ef4625530f7cc65823f72911f9b3ab621efe29
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-08-07 06:57:30 +00:00
Bill Yi 30ec1a9cc2 [automerger skipped] Import translations. DO NOT MERGE ANYWHERE am: f7947cd789 -s ours
am skip reason: contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/28666566

Change-Id: I17dbcabd9e0c21034c1204be89920860700efe1b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-08-07 06:57:26 +00:00
Treehugger Robot 9267cc3ddc [automerger skipped] Merge "Import translations. DO NOT MERGE ANYWHERE" into aosp-main-future am: 7e9c795f63 -s ours
am skip reason: contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/28666390

Change-Id: I085c1e25bcad6a870d2a71db6c8c5234a2d90762
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-08-07 06:57:22 +00:00
Bill Yi 74e71e6cb1 [automerger skipped] Import translations. DO NOT MERGE ANYWHERE am: 9d3826700d -s ours
am skip reason: contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/28666390

Change-Id: I15cb8dd768f95412a21a9e5c11543acc25e48abb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-08-07 06:57:18 +00:00
Bill Yi 2006481c7d [automerger skipped] Import translations. DO NOT MERGE ANYWHERE am: a4cae8c1fb -s ours
am skip reason: contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/28666389

Change-Id: Ibfafe62c53b2f8d49f2b0be6be0b08b60f8fff37
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-08-07 06:57:08 +00:00
Treehugger Robot 3bf8291ba8 Merge "Import translations. DO NOT MERGE ANYWHERE" into aosp-main-future 2024-08-07 06:31:14 +00:00
Treehugger Robot 7e9c795f63 Merge "Import translations. DO NOT MERGE ANYWHERE" into aosp-main-future 2024-08-07 06:31:14 +00:00
Bill Yi 9d3826700d Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: I8474e73e2714ee72633075aeb8de710f19f813fa
2024-08-06 18:09:46 -07:00
Bill Yi a4cae8c1fb Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: Iee699ea1a67b431069445d5fb8fae163fab99f2b
2024-08-06 18:09:19 -07:00
Bill Yi f7947cd789 Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: I072783efeadf4ca865d35d3a5b04f0e0c8170e40
2024-08-06 18:08:55 -07:00
Jagrut Desai 6b39f2d40e Merge "Ignoring TaskbarEduTooltipControllerTests" into main 2024-08-06 23:15:06 +00:00
Jeremy Sim 394f5d2b7f Fix problem with "Cancel" text not double-bolding
This CL changes the way the "Cancel" string is bolded, so that it can automatically react to the "Use bold text" accessibility setting and double-bold itself appropriately. (Previously the bolding was hard coded in XML, this change allows TextView to handle its own bolding.)

Fixes: 323111449
Test: Visually confirmed
Flag: EXEMPT bugfix
Change-Id: Ie50b5a1aab569cebd0101814b6ba896ad4151e7b
2024-08-06 16:10:20 -07:00
Jagrut Desai 5643f48bb8 Enable TaskbarEduTooltipControllerTests with rule ordering
Test: Presubmit
Bug: 356155191
Flag: TEST_ONLY
Change-Id: If4a03033424c07e37f2cb3f792e75a64a55fb67b
2024-08-06 14:11:38 -07:00
Ats Jenk cfb4e22996 Update bubble a11y nav order in bubble bar
When swiping left, a11y focus should move to the bubble shown on left.
Same for swiping right. This should happen regardless of the side bubble
bar is placed on.

Bubble views get added to the container based on recency. The most
recent bubble is placed as child at index 0.
For example if we have bubbles (1)(2)(3)(+) and (1) is the most recent,
then the child index for (1) is 0. This is always the same, regardless
of bubble bar location.

Bubble bar location does affect how bubbles appear on screen. If the bar
is on the left, most recent bubble is shown on the right.
The on screen order for the above bubbles would be: (+)(3)(2)(1).
If the same bubble bar is on the right, bubble order would be:
(1)(2)(3)(+).

For a11y navigation we want to follow the order that bubbles are shown
on the screen. Default navigation order follows how the child views are
added to the parent container. For bubbles the child view order may not
match what is shown on screen. Due to this, we override the default
navigation order. And set up the previous and next elements to navigate
to based on bubble bar location and bubble order.

Bug: 344674605
Flag: com.android.wm.shell.enable_bubble_bar
Test: have bubble bar expanded on the right, swipe left and check that
  bubble on the left is selected, swipe right and check that bubble on
  the right is selected
Test: have bubble bar expanded on the left, swipe left and check that
  bubble on the left is selected, swipe right and check that bubble on
  the right is selected
Change-Id: Iae63ac13d5477883952b836f6872e4c7c7fb88c1
2024-08-06 14:07:13 -07:00
Jagrut Desai 3baa8a7f70 Ignoring TaskbarEduTooltipControllerTests
Test: Presubmit
Bug: 356155191
Flag: TEST_ONLY

Change-Id: I2aa0c0822ea4458484d7a04e38004ddc60f7c982
2024-08-06 13:04:47 -07:00
Tracy Zhou 7a247fb2ac Merge "[Taskbar Performance] Avoid calling notifyUpdateLayoutParams in code logic specifically for unfolded taskbar when folded" into main 2024-08-06 19:14:26 +00:00
Jordan Silva 4afa195b5b Add Jetpack Compose for Launcher3 and Quickstep behind a build flag (2/3)
This CL adds a Soong build flag in Android.bp files to enable Compose code when building Launcher.
The flag is disabled by default, and it will be enabled once agreed with the System Health team. More details in go/launcher-enabling-compose-next-steps.

To turn this flag on, one simply has to `build-flag set RELEASE_ENABLE_COMPOSE_IN_LAUNCHER true` before compiling.

- When the flag is enabled, Launcher3 will use a ComposeFacade object that provides features implemented using Compose. This Facade also provides a function to check whether Compose is enabled or not.
- When the flag is disabled, Launcher3 will implement a ComposeFacade object that throws an exception if a feature using Compose is requested. Thus, it is important to always check isComposableAvailable function before requesting a Compose feature.

Bug: 346288480
Test: Builds
Flag: EXEMPT Build flag: RELEASE_ENABLE_COMPOSE_IN_LAUNCHER
Change-Id: I5f2703f74960aeb104d0386ed3ef49784ed85234
2024-08-06 18:47:22 +01:00
Riddle Hsu 9164534fb9 Merge "Use rotation hint to update layout" into main 2024-08-06 11:39:03 +00:00
Sebastián Franco 99a76f1f64 Merge "Convert testing classest to Kotlin" into main 2024-08-06 00:21:18 +00:00
Fengjiang Li 77be7410c3 Merge "Fix jank regression from AllAppsRecyclerViewPoolTest" into main 2024-08-05 23:17:22 +00:00
Mady Mellor 8c629fd8b5 Support optional bubble overflow in bubble bar
This is similar to the animations that add / remove a bubble at the
same time -- the overflow is generally added when a bubble is removed.
The overflow is generally removed when a bubble is added (i.e. user
promotes a bubble out of the overflow).

There are a couple of additional cases:
- when bubbles are first added to the bar -- if there were saved
  bubbles in the overflow, the view should be added
- an app could cancel its bubbles / remove its shortcuts and not have
  any in the stack but could have some in the overflow & it could
  become empty without an addition.

Flag: com.android.wm.shell.enable_optional_bubble_overflow
Flag: com.android.wm.shell.enable_bubble_bar
Test: manual - add bubbles to the bubble bar for first time
             => observe there is no overflow
             - dismiss a bubble
             => observe the overflow is added, tap on it, tap on the
                bubble in it
             => observe that bubble is added & the overflow disappears
             - dismiss all the bubbles
             - add a bubble
             => observe the overflow is there & has the previously
                dismissed bubbles
             - cancel all the bubbles that are in the overflow via
               adb
             => observe the overflow is remvoed
Bug: 334175587
Change-Id: I2b6e855e65520b4b2b1fde7757d46f00a468b4a6
2024-08-05 12:25:33 -07:00
Mady Mellor d9873c1039 Merge "Move bubble icon / content loading into its own controller class" into main 2024-08-05 17:23:28 +00:00
Treehugger Robot a879d68b59 Merge "Use onTaskThumbnailChanged as sourced of truth for thumnbail override" into main 2024-08-05 17:09:28 +00:00
Fengjiang Li ce638d69b7 Fix jank regression from AllAppsRecyclerViewPoolTest
Unit test ag/28323761 delays the preInflationCount check after creating ActivityContext on main thread, thus causing jank regression. This CL is a forward fix.

Fix: 354560500
Flag: NONE - jank fix
Test: Presubmit
Change-Id: I0e91dd765f1805b98895ce90804ec187e50285b4
2024-08-05 09:39:05 -07:00
Charlie Anderson 544592dcd3 Merge "Adds new bugfix flag for using new app archiving icon" into main 2024-08-05 14:24:58 +00:00
Alex Chau 67a1006f56 Use onTaskThumbnailChanged as sourced of truth for thumnbail override
- Both RecentsView.screenshotTask and RecentsView.updateThumbnail uses thumbnail that comes from recentsAnimationController.screenshotTask. recentsAnimationController.screenshotTask always results in TaskVisualsChangeListener.onTaskThumbnailChanged, which is a better source of truth to rely on rather than having 3 entry points for thumbnail override
- As a thumbnail objects from onTaskThumbnailChanged has the same snapshotId but are different instances, updated RecentsViewModel.waitForThumbnailsToUpdate to reflect that

Bug: 342560598
Test: RecentsViewModelTest
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Change-Id: I79b6e32224df4192e8df6930d87b222ed93bf8d8
2024-08-05 12:55:16 +01:00
Treehugger Robot f205266047 Merge "Fixes background color issue in private space" into main 2024-08-05 09:39:13 +00:00
Charlie Anderson 6b8e362247 Adds new bugfix flag for using new app archiving icon
Flag: com.android.launcher3.use_new_icon_for_archived_apps
Bug: 350758155
Test: locally
Change-Id: I7bacbacd85a8216e7975665e6d3c1ab98ed23235
2024-08-05 00:37:28 -04:00
Charlie Anderson e5ace06d81 Merge "Reapply "Handles Bold Text setting for inline icon by providing bolded cloud icon"" into main 2024-08-05 04:24:32 +00:00
Tracy Zhou 2cfc2e1b1c [Taskbar Performance] Avoid calling notifyUpdateLayoutParams in code logic specifically for unfolded taskbar when folded
Bug: 355968858
Test: https://android-build.corp.google.com/abtd/run/L59700030005634589/?referrer=email
Flag: com.android.wm.shell.enable_taskbar_on_phones
Change-Id: I27ee8aefa7dbb42028de4c2de617c0deac4452e8
2024-08-04 09:47:59 -07:00
Brandon Dayauon 785f8c1f03 Merge "Fix app install icon colors by "reverting" small color change that applies to the private install icon." into main 2024-08-03 04:17:02 +00:00
Mykola Podolian f34c84e99a Merge "Refactored TaskbarInsetsController" into main 2024-08-03 03:52:31 +00:00
Vinit Nayak 3d5c302f04 Merge "Remove non-shell transitions split code from SystemUiProxy" into main 2024-08-02 23:56:22 +00:00
Sebastian Franco ce4446c469 Convert testing classest to Kotlin
Bug: 324261526
Test: ImageTest
Test: FolderTest
Test: IntegrationReorderWidgets
Flag: TEST_ONLY
Change-Id: Ieb4e451cc44656fc98d87163203eaae379ec0512
2024-08-02 12:53:14 -07:00
Brandon Dayauon 766411813d Fix app install icon colors by "reverting" small color change that applies to the private install icon.
Original big color change for reference: ag/28129361

bug:355065774
Test manually:
after LT: https://drive.google.com/file/d/1Wi09fvakgGev_kbRso4LggXRb4GLYCsL/view?usp=sharing
after DT: https://drive.google.com/file/d/1g5NOeV50ekEJl0-7hiSWYLPKsCCGbndP/view?usp=sharing
Flag: NONE color fix

Change-Id: Ie078eefe2b4b2ecf6aa1a086242ba643f42c038b
2024-08-02 11:32:14 -07:00