Commit Graph

1420 Commits

Author SHA1 Message Date
Tony Wickham 045814a2c6 Don't invalidate swipe handler until parallel anim finishes
- When invalidateHandler() is called, it calls endRunningWindowAnim()
  which includes mParallelRunningAnim. This causes a jump if
  mParallelRunningAnim was not already finished, so we now wait to
  invalidate the handler after mParallelRunningAnim ends.

Flag: EXEMPT bugfix
Test: AbsSwipeUpHandlerTestCase (added two tests for this)
Fixes: 370208192
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:ee98cd4bdf739c2f93f7cf0a20764acb2a837b0c)
Merged-In: I37ed281a993b1d2fa3634754378314511f3295f0
Change-Id: I37ed281a993b1d2fa3634754378314511f3295f0
2024-10-08 22:55:35 +00:00
Liran Binyamin 7b0c32567f Merge "Update bubble bar flyout according to spec" into main 2024-09-20 16:42:34 +00:00
Anushree Ganjam f2c65c289b Merge "Make sandboxContext extend LauncherApplication (4/n)" into main 2024-09-19 23:22:56 +00:00
Anushree Ganjam 26a5f65afd Make sandboxContext extend LauncherApplication (4/n)
See
https://docs.google.com/drawings/d/1JHFi_nhmQt2xPT1N3FB_1mnaRK5TVqKZ9-fSl3EA7sU/edit?usp=sharing
and
https://docs.google.com/drawings/d/1bx4WURP4uHZGzZ1bWQgpw701jkTkVqlNfA02Yt-ZtSI/edit?usp=sharing&resourcekey=0-oySjsnaCsOSrNIPqqEa0gw
for design details.

We need to make SandboxContext extend LauncherApplication because we
want create MainThreadInitializedObjects in SandboxContext's
AppComponent scope. Since MainThreadInitiliazedObjects are closed in
SandboxContext's OnDestroy() , we need to replicate same thing using
dagger as well.

- DaggerSingletonObject is same as MainThreadInitializedObject but is
  used for fetching the dagger created singletons so that we can avoid
  major refactors for accessing singletons. This will be deleted soon.

- DaggerSingletonTracker to track dagger created singletons and call
  close() on those singleton objects created in SandboxContext scope.

- Annotate the singleton object SettingsChangeLogger constructor with @Inject and execute the statements in Main thread.
- Added createSandboxContextForTest(only for Test) to avoid creation of
  dagger component in test. As follow up, I will delete this method and
  introduce fakeDaggerComponents in test.

Bug: 361850561
Test: Manual
Flag: NONE Dagger Integration

Change-Id: I2d3762ea64e53baa4de190790568aec750b54201
2024-09-19 11:20:30 -07:00
Liran Binyamin 19a43fb7cf Update bubble bar flyout according to spec
Also add a triangle

Flag: com.android.wm.shell.enable_bubble_bar
Bug: 277815200
Test: atest BubbleBarFlyoutViewScreenshotTest
Test: atest BubbleBarFlyoutControllerTest
Change-Id: I1a16ba6c9e1a2ca4efe01524ba3ef1d049f81d68
2024-09-19 14:02:43 -04:00
Helen Cheuk e58dad0821 Merge "[Contextual Edu] Update Edu stats when going to overview and all apps from home" into main 2024-09-19 14:45:49 +00:00
Liran Binyamin c2c7913134 Merge "Create BubbleBarFlyoutView" into main 2024-09-18 14:21:26 +00:00
Treehugger Robot 545440327d Merge "Update out-of-date TODO comment" into main 2024-09-17 16:25:49 +00:00
Liran Binyamin 36b5ef2271 Create BubbleBarFlyoutView
Initial version of the flyout view for displaying bubble bar
notification.

Flag: com.android.wm.shell.enable_bubble_bar
Bug: 277815200
Test: atest BubbleBarFlyoutViewScreenshotTest
Test: atest BubbleBarFlyoutControllerTest
Change-Id: I5d0643fe5d2691ad2349b45eaaad6cd2660d9df0
2024-09-17 11:14:54 -04:00
helencheuk 5012640ab2 [Contextual Edu] Update Edu stats when going to overview and all apps from home
Update education stats when
- go overview and all apps by swiping up at homepage (AbstractStateChangeTouchController)
- go home from all apps by swiping down the all apps panel (AbstractStateChangeTouchController)
- go home from all apps or overview by swiping up from the bottom nav bar (NavBarToHomeTouchController)
- in 3 button navgiation mode (TaskbarNavButtonController)

NavBarToHomeTouchController does not inherit from AbstractStateChangeTouchController so logic are added separately.

Bug: 363480554
Test: TaskbarNavButtonControllerTest
Flag: com.android.systemui.keyboard_touchpad_contextual_education
Change-Id: I0662704a9093b9f5a4d2f086a8297429fbc49881
2024-09-17 16:00:24 +01:00
Schneider Victor-Tulias 0a815eae39 Update out-of-date TODO comment
These TODO comments will be adressed by b/342627272, so b/326565120 should be closed.

Flag: EXEMPT comment update
Bug: 326565120
Bug: 342627272
Test: none needed, comment update
Change-Id: I75637e1494a1abba5c542a292a8a1e8881cbedfc
2024-09-17 10:13:16 -04:00
Himanshu Gupta edebee564f Skipping testPrivateSpaceLockingBehaviour for LS devices.
Skipping the test until we fix the root cause of failure
on LS devices.
Also removing ScreenRecord from now passing tests.

Bug: 355466672, 367258373
Fix: 334946529
Test: atest NexusLauncherTests:com.android.quickstep.TaplPrivateSpaceTest#testPrivateSpaceLockingBehaviour
Flag: TEST_ONLY
Change-Id: Ia0d43386e70b8584b8c77d541abd16cbd5e64741
2024-09-17 09:19:58 +00:00
Treehugger Robot 34b535c76d Merge "Don't wait for thumbnails to update if updatedThumbnails are empty" into main 2024-09-16 12:57:12 +00:00
Treehugger Robot 196422d6cc Merge "Revert "Add screenrecording for testOverview"" into main 2024-09-16 11:47:52 +00:00
Alex Chau 88f4eb48b1 Revert "Add screenrecording for testOverview"
This reverts commit 01fc975288.

Reason for revert: b/355042336

Change-Id: I1a5038e1608624dc1bc774940d84aea09381da87
2024-09-16 09:59:01 +00:00
Alex Chau 8b692c356b Don't wait for thumbnails to update if updatedThumbnails are empty
Fix: 366205521
Test: Double tap recents button in -1 screen
Test: RecentsViewModelTest
Flag: com.android.launcher3.enable_refactor_task_thumbnail
Change-Id: I3eb854c8068fe70473bde32c5f7706af8d17a3cf
2024-09-16 10:39:23 +01:00
Treehugger Robot 41d2d507a3 Merge "Revert "Add screen recording to TaplTestsQuickstep#testQuickSwitchToPreviousAppForTablet"" into main 2024-09-13 23:57:50 +00:00
Ats Jenk 61d45eb8d2 Merge changes I3cfdb715,Ic194afdb into main
* changes:
  Fix initial alpha when unstashing bubble bar
  Set additional bubble translation during stash
2024-09-13 22:38:24 +00:00
Schneider Victor-tulias ef404a786e Revert "Add screen recording to TaplTestsQuickstep#testQuickSwitchToPreviousAppForTablet"
This reverts commit 600c508569.

Reason for revert: test no longer fails
Fixes: 358607191

Change-Id: Ie944a7d79dab03fcb61ca62926929b0b462c1ba6
2024-09-13 21:49:24 +00:00
Ats Jenk 9639315baa Fix initial alpha when unstashing bubble bar
For the stash and unstash animation we use separate timings for the
Bubble views and background. In other animations we animate the entire
bubble bar alpha as one.
To achieve this during unstash animation we set the bubble views and
background alpha to 0. And then set the bar alpha to 1.
Since alpha animation has a delay during unstash, we need to set the
initial values as the start of the entire animation and not just the
alpha part. Otherwise there are flickers in the animation.

We also need to set initial values for the alpha animator that the
AnimatedFloat creates. AnimatedFloat uses the current values as the
start value. If we update it later, the animator was already created and
it won't have an effect. To fix this, we set the start and end values
for the alpha animators created by AnimatedFloat.

Bug: 345488489
Flag: com.android.wm.shell.enable_bubble_bar
Test: slow down animations and unstash bubble bar, check that bubbles
  alpha slowly animates in

Change-Id: I3cfdb715e1703bd2195c809fd77751a216558176
2024-09-13 10:51:11 -07:00
Liran Binyamin 6138138d99 Merge "Initial screenshot tests for bubble bar view" into main 2024-09-12 13:33:50 +00:00
Vinay Joglekar b3189d8404 Merge "Add keyboard navigation for all large tiles" into main 2024-09-12 09:09:02 +00:00
Treehugger Robot 206e15b286 Merge "Move DesktopVisibilityController to TouchInteractionService" into main 2024-09-12 02:32:00 +00:00
Ats Jenk aad71bc532 Set additional bubble translation during stash
Fixes bubbles stash translation not getting cleared up after stash
animation finishes.

Bubbles are clipped using an outline animator during the stash
animation. They need separate translation applied to keep them within
the bounds of the bubble bar that is also shrinking and moving.

Set the translation for the bubbles in the stash controller so we can
reset the translation after the animation has finished.

Bug: 365829293
Flag: com.android.wm.shell.enable_bubble_bar
Test: TransientBubbleStashControllerTest
Test: have bubbles in bubble bar, trigger a new auto expanding bubble,
  check translation for bubbles
Change-Id: Ic194afdb4d650fcd525355d8bae08dd651d1ea05
2024-09-11 16:29:22 -07:00
Schneider Victor-Tulias 2b46c945a7 Move DesktopVisibilityController to TouchInteractionService
Moved DesktopVisibilityController to TIS for 3P launcher support.

Flag: EXEMPT bug fix
Fixes: 338063030
Fixes: 357859025
Test: Launched overview and resumed desktop task from desktop mode on 1P and 3P launchers
Change-Id: I64e99a32ed13bcb6e4a81a18c29df2643373dc35
2024-09-11 09:56:35 -07:00
vinayjoglekar 941a9e4f98 Add keyboard navigation for all large tiles
Currently large tiles are excluded from adding into collection which is used for keyboard navigation. This cl adds them if desktop windowing tile is enabled.

Test: TaskGridNavHelperTest
BUG: 361070854
Flag: com.android.launcher3.enable_large_desktop_windowing_tile
Change-Id: I63fbb6867c34bbd80df926d750a7a392860b70a0
2024-09-11 16:02:18 +01:00
Ats Jenk d72a0400eb Merge changes I485f6346,I24b0c646 into main
* changes:
  Animate alpha for bubbles and background (3/n)
  Use a reveal animator for bubble icons (2/n)
2024-09-10 18:03:00 +00:00
Liran Binyamin 3a2a7685b0 Initial screenshot tests for bubble bar view
Flag: com.android.wm.shell.enable_bubble_bar
Bug: 355454021
Test: atest BubbleBarViewScreenshotTests
Change-Id: Id74c78d99a8b4528bb473c5a751edb19bda34007
2024-09-10 13:59:01 -04:00
Ats Jenk 4ea856ee2d Merge "Align bubble bar stash anim with taskbar (1/n)" into main 2024-09-10 00:45:36 +00:00
Ats Jenk 332828b340 Animate alpha for bubbles and background (3/n)
Use separate timings for bubble icons and bubble bar background when
stashing and unstashing.
Follows alpha timings applied to taskbar background and icons.

Bug: 345488489
Test: TransientBubbleStashControllerTest
Test: stash and unstash bubble bar in app by swiping up from taskbar
Test: expand and collapse bubble bar in app by swiping up on bar
Test: expand and collapse bubble bar on home screen by tapping on it
Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I485f6346539cb6c8ea6dd4d15f25a6421021fec1
2024-09-09 15:23:51 -07:00
Ats Jenk 9ca662a7f7 Use a reveal animator for bubble icons (2/n)
Use a similar animation for bubble bar icons as we use for taskbar. When
stashing or unstashing, use a reveal animator to show the icons.
Previously we were scaling the icons to the desired size.
New reveal animator matches what is used for taskbar.

Bug: 345488489
Test: TransientBubbleStashControllerTest
Test: stash and unstash bubble bar in app by swiping up from taskbar
Test: expand and collapse bubble bar in app by swiping up on bar
Test: expand and collapse bubble bar on home screen by tapping on it

Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: I24b0c64673d6becfa2ed68993bb95fe78e105670
2024-09-09 15:23:51 -07:00
Ats Jenk 9eadd68e01 Align bubble bar stash anim with taskbar (1/n)
Only scale bubble bar background during stash and unstash animation.
Follows the logic used for taskbar. We scale only the background and
clip the icons separately.

Bug: 345488489
Test: PersistentBubbleStashControllerTest
Test: TransientBubbleStashControllerTest
Test: BubbleBarViewAnimatorTest
Test: stash and unstash bubble bar in app by swiping up from taskbar
Test: expand and collapse bubble bar in app by swiping up on bar
Test: expand and collapse bubble bar on home screen by tapping on it

Flag: com.android.wm.shell.enable_bubble_bar
Change-Id: Ifc7922c444f2179fc49643424815e5e7dde519cc
2024-09-09 15:23:48 -07:00
Mykola Podolian 5feb4a969a Merge "Fix falling tapl tests" into main 2024-09-09 17:19:12 +00:00
mpodolian 39383dd5b3 Fix falling tapl tests
Fix the root cause of falling tests.

Bug: 359277238
Flag: TEST_ONLY
Test: TaplTestsQuickstep,TaplTestPersistentTaskbar
Change-Id: I1e3138e26d0ab253dff7a64cbb3253c220a7db1a
2024-09-07 09:13:53 -07:00
Treehugger Robot 9a01a9f584 Merge "Add constant DEFAULT_LPNH_TIMEOUT_MS in client code." into main 2024-09-06 18:08:10 +00:00
Liam Lee Pong Lam c17b7d4464 Merge "Refactor SettingsChangeLoggerTest imports" into main 2024-09-06 17:38:14 +00:00
Jordan Silva ad3c422f6c Adds a timeout for OverviewCommandHelper commands (3/3)
We had several bugs in the past months related to recents button not displaying Overview when using 3 button navigation. For some of the bug reports, we noticed the OverviewCommandHelper pending commands list got stuck and stopped processing the next commands in the list. Sometimes, the pending commands list was cleared while some command was being processed, allowing newer commands to be executed while another command is already running. This resulted in the second callback never returning and inconsistent states for OverviewCommandHelper and RecentsView.

Our logs showed OverviewCommandHelper often got stuck and didn't finish the commands correctly.

To mitigate these issues we updated the following behaviors:
- Implemented a timeout to process the commands in the queue. If the callback doesn't return in a given time, it will drop that execution and process the next one in the queue.
- Fix clearPendingCommands to clear only the pending commands from the queue, and not the running command.

Bug: 352046797
Fix: 351122926
Fix: 361768912
Flag: EXEMPT bugfix.
Test: OverviewCommandHelperTest
Change-Id: I47adf0c54dcbaef63d9b72055e000c26114e96e1
2024-09-06 13:58:10 +01:00
Anushree Ganjam 3b5afe2854 Add constant DEFAULT_LPNH_TIMEOUT_MS in client code.
Bug: 364389624
Test: Manual
Flag: NONE Bugfix
Change-Id: I7410227835012e7f608d6619c2e792120c484c26
2024-09-05 14:36:20 -07:00
Liam, Lee Pong Lam f83a6e8001 Refactor SettingsChangeLoggerTest imports
Bug: 364938368
Test: Unit test
Flag: EXEMPT bugfix
Change-Id: I91e48c1effdb8a0f5252c3f3c6b38407e44fd917
2024-09-05 20:35:39 +00:00
Alex Chau 09623dd5e5 Merge "Fix talkback in split mode" into main 2024-09-03 17:02:04 +00:00
vinayjoglekar 3359fa7f32 Fix talkback in split mode
1. Announce description of both snapshot in GroupedTaskView.
2. Announce them in correct order.

After setting right content description for both the apps in split mode, announcement order was reverse. Seems that order of the node tree which android sees was wrong. Also order did not change even in RTL mode.

see here https://paste.googleplex.com/6492038621298688.

The correct order is manually set using addChildrenForAccessibility in GroupedTaskView. (similarly being used in RecentsView since we use reverse order for overview). Also considered RTL.
See order after fix here
https://paste.googleplex.com/6492038621298688

https://drive.google.com/file/d/1BA1YKkcNsovEu4us9cvq5xOdXviTR1OV/view?usp=drive_link

Other alternatives tried were fixing order using android:accessibilityTraversalAfter and android:accessibilityTraversalBefore, both in layout and programatically which doesn't seem to work.

Test: Manual - Using Node tree debugging of talkback developer options.(Print and filter by tag TreeDebug)
BUG: 330424779
Flag: EXEMPT bugfix
Change-Id: If3c360277bd951d2d2b223bab7844e078e9c7d27
2024-09-03 15:22:30 +01:00
Alex Chau e6eca9c195 Promote TaplTestsQuickstep.testBackground to presubmit
- http://android-build/test_hub/search/?filter=&invfilter=unhealthyInvocations&invfilter=staleInvocations&query=test%3Acom.android.quickstep.TaplTestsQuickstep%23testBackground
- Latest result is <0.5% flaky

Bug: 364036214
Test: presubmit
Flag: EXEMPT TEST_ONLY
Change-Id: I97315a23e09c75a5f72cd3f6c959607598d9222d
2024-09-02 19:08:59 +01:00
Luca Zuccarini d75eacf30d 3/3 Move some Shell utils to the Shared package.
Bug: 322791067
Flag: EXEMPT move only
Test: NA
Change-Id: Iabc42e4c1d9c13667e9d91be5789cf295f3332e1
2024-09-02 09:23:34 +00:00
Ats Jenk ba6c9f06ed Merge "Scale bubble bar to the width of the handle" into main 2024-08-30 23:06:43 +00:00
Schneider Victor-tulias a4ce092bea Merge "Add a test base for AbsSwipeUpHandler and its subclasses" into main 2024-08-30 20:48:09 +00:00
Ats Jenk dff855e702 Merge "Update bubble bar stash and unstash animation" into main 2024-08-30 19:30:14 +00:00
Mady Mellor 669445f707 Merge "Don't show the app badge on app bubbles" into main 2024-08-30 19:08:24 +00:00
Schneider Victor-tulias f5035847b1 Add a test base for AbsSwipeUpHandler and its subclasses
- Added a few basic tests for scenarios that should be contant across subclasses. These tests will not run on their own, they will only run when a subclass' test suite is run.
- Added test suites for LauncherSwipeHandlerV2 and FallbackSwipeHandler

Flag: EXEMPT adding tests
Bug: 353763639
Test: LauncherSwipeHandlerV2Test, FallbackSwipeHandlerTest
Change-Id: Ib44199f5d5281a544b433649d6ed49ae2a65ed70
2024-08-30 14:14:03 -04:00
Ats Jenk da9e36e4e7 Scale bubble bar to the width of the handle
When animating bubble bar from the stash handle, scale the width to the
handle.
Bubble bar is already almost the size of the handle, but a small scale
is still added.

Bug: 345488489
Flag: com.android.wm.shell.enable_bubble_bar
Test: atest TransientBubbleStashControllerTest
Test: slow animations down and unstash and stash bubble bar, observe
  that the width of the bubble bar scales down to the handle
Change-Id: I54dc228fa41d4d494bfb15e191d2ba563c0970c7
2024-08-30 10:17:29 -07:00
Mady Mellor 3808adc58c Don't show the app badge on app bubbles
Flag: com.android.wm.shell.enable_bubble_anything
Test: manual - add an app bubble to bubble bar, observe it's not
               badged (with sysui CL)
Bug: 342245211
Change-Id: I768fa9bb478eeaba587b90d478f32f8c2ee88be1
2024-08-30 09:52:45 -07:00