Commit Graph

36166 Commits

Author SHA1 Message Date
Vinit Nayak 20102c3dd7 Merge "Save multiple RunningTaskInfo in GestureState" into sc-v2-dev 2021-12-16 00:03:20 +00:00
TreeHugger Robot f9f90d6dc2 Merge "Set navBarDarkIntensity based on dark theme in SUW" into sc-v2-dev 2021-12-15 23:42:06 +00:00
Tony Wickham 70d237d8f3 Set navBarDarkIntensity based on dark theme in SUW
- Also remove old tinting based on textColorPrimary, as it's no longer necessary with dark intensity tinting.

Test: Run SetupWizardTestActivity in both dark and light theme, ensure back button visible
Fixes: 204384193
Change-Id: I2dc2e94bc0318ded62419b9ae0eed719db289d7f
2021-12-15 21:37:15 +00:00
Vinit Nayak dcd7ac4011 Save multiple RunningTaskInfo in GestureState
* With new split screen running two active tasks for
a given gesture, we need to get all running task
infos instead of the single most recent used one
* TODO(b/210903248) for proper refactoring for
GestureState

Fixes: 205675364
Test: Swiping up on overview no longer crashes
Change-Id: Iea1f193149657182311a97f46007b4d43e8ad549
2021-12-15 13:11:11 -08:00
Jon Miranda 80aa8da7e3 Merge "Scale, crop, and translate window when swiping back to home." into sc-v2-dev 2021-12-15 20:29:59 +00:00
Winson Chung 2ecf688de6 Merge "Wait for the Launcher activity to bind to TIS before animating" into sc-v2-dev 2021-12-15 19:44:26 +00:00
Bill Yi 2a599f3eea Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: I0dfd8609046378398394e3eff496d783ade48a41
2021-12-15 06:58:05 +00:00
Bill Yi e115a8a46f Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: Iec90da5709f6fbee61798d61b6c6d0d50185220e
2021-12-15 06:57:23 +00:00
Bill Yi 439705b5a3 [automerged blank] Import translations. DO NOT MERGE ANYWHERE 2p: 384c30fa4c
Blank merge reason: commit message contains skip directive

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

Change-Id: I712a3fb9b233fb15846cbafc48e6970b3b659b96
2021-12-15 06:56:57 +00:00
Bill Yi 384c30fa4c Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: I195d5d5f10c8e93e1b26d58b2cdcf194fc3474f4
2021-12-15 06:56:43 +00:00
Bill Yi 0558d6a646 Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: I3cbff24108a4dac5b307095322c5aa7e716c7575
2021-12-15 06:54:30 +00:00
Bill Yi 8942bc90bf Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: Ia316d18fcb30161ddb2d288919c9aa4698d3d3af
2021-12-15 06:53:54 +00:00
Bill Yi a0cf7967db [automerged blank] Import translations. DO NOT MERGE ANYWHERE 2p: 189f1ce908
Blank merge reason: commit message contains skip directive

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

Change-Id: I46c505232b99fbe4b15fdb74acbae5658df23753
2021-12-15 06:53:38 +00:00
Bill Yi 189f1ce908 Import translations. DO NOT MERGE ANYWHERE
Auto-generated-cl: translation import
Change-Id: Ibdb9619f0643f4a1f3c32252e712248556c352a6
2021-12-15 06:53:19 +00:00
Tony Wickham f540e5caa2 Fix testStressSwipeToOverview
- Finish recents controller to app rather than to launcher, to ensure taskbar state uses in-app configuration
- Also fix an issue when a gesture completes before onLauncherStart, which happens in 3 button mode. The error I saw in the test was:
java.lang.AssertionError: http://go/tapl test failure: Failed to receive an event for the state change: expected [Overview], actual: [Background, Normal];
Context: want to switch from background to overview, clicking Recents button; now visible state is Background
(This also accurately describes what I saw on the device, where the LauncherState went to Normal but the task was still running in the live tile)

Test: testStressSwipeToOverview
Fixes: 203577620
Change-Id: I19616f7921c9821f1b45a90a3e4bec4fb3b8a9d3
Merged-In: I19616f7921c9821f1b45a90a3e4bec4fb3b8a9d3
(cherry picked from commit ce6bf7dd7f)
2021-12-15 05:45:43 +00:00
Tony Wickham ee24e46a61 Fix issues with starting new recents animation before previous onRecentsAnimationStart
- Fix logic for canceling animation for continued quick switch, so that this case (starting a new gesture before onRecentsAnimationStart() of the previous gesture) instead goes to the STATE_FINISH_WITH_NO_END flow.
- Update the end target so that we go to that state instead of always overview state if swipe was past the halfway threshold when we call endLauncherTransitionController(). This is specifically so we don't use OverviewInputConsumer on the second gesture, given the first one was canceled and didn't actually go to overview.
- GestureState#isRecentsAnimationRunning() now checks for STATE_RECENTS_ANIMATION_STARTED rather than _INITIALIZED, to be consistent with its javadoc and TaskAnimationManager#isRecentsAnimationRunning(). This also ensures we can correctly calculate continued quick switch (see above).
- Call cleanUpRecentsAnimation() before creating a new one in TaskAnimationManager. This ensures that the previous listener doesn't immediately cleanup the new gesture when it gets onRecentsAnimationCanceled() due to the new recents animation starting.

Test: swipe to home twice from the app, locally ignoring the onRecentsAnimationStart() from the first one, and ensure the second one responds normally
Bug: 193851085
Change-Id: I76e27c96b54293805546c0d6c82e77f975c69d7a
Merged-In: I76e27c96b54293805546c0d6c82e77f975c69d7a
(cherry picked from commit 66ed0ff23e)
2021-12-15 05:44:27 +00:00
Jon Miranda 32ec4d52e1 Scale, crop, and translate window when swiping back to home.
This makes the animation consistent with what happens
when swiping up to home.

Bug: 208292857
Test: open app, swipe back to close, test on portrait and landscape
Change-Id: I096b20fe3d3398001e442d41981350e7b0321a46
2021-12-15 01:34:12 +00:00
Vinit Nayak 8581dfc218 Wait for the Launcher activity to bind to TIS before animating
- Mainly a test issue where we destroy the activity and immediately
  enter overview without preloading launcher.  In this case, the task
  bar does not animate due to the delayed cycled of activity create
  -> bind service -> service connected -> taskbar ui controller init.
  As a result, the bar can occlude content from Launcher preventing
  the test from finding the overview actions.

  Instead, in cases where we need to animate with launcher, we wait
  for Launcher to be created (generally already the case) and the
  service has bound before proceeding.

Bug: 189807374
Bug: 204891006
Test: atest NexusLauncherTests:com.android.quickstep.StartLauncherViaGestureTests
Change-Id: I2cfccae67ac0e5a591639c6c99df032451dae16d
2021-12-15 00:53:54 +00:00
Android Build Coastguard Worker 2f513216f6 Snap for 8000352 from 36e5f812d5 to sc-d2-release
Change-Id: I35462201fe8960bf3b8cb6bb3e80130ea3c23f41
2021-12-15 00:07:41 +00:00
TreeHugger Robot 9b3b2b9c7e Merge "Ensure some taskbar states are initialized correctly" into sc-v2-dev 2021-12-14 22:49:50 +00:00
Winson Chung 7f5e4ca06c Ensure some taskbar states are initialized correctly
- Update FLAG_IN_APP to account for setup state to ensure that the
  stashed state is correct. This needs to be done in the stash
  controller since SUW is the home activity on startup and the
  launcher state controller will not be initialized until after
  SUW finishes
- Initialize the launcher state and resumed flags in case Launcher
  restarts while another app is resumed

Bug: 204384193
Test: Run through SUW, ensure the background is not visible
Change-Id: I5ce061ad16e79226c8428339ccd0b5ac55c07205
2021-12-14 19:08:55 +00:00
Tony Wickham 36e5f812d5 Merge "Don't clobber in progress page transition in applyLoadPlan()" into sc-v2-dev 2021-12-14 16:18:39 +00:00
Ling Wo 361d8286cc Merge "delete appIcon from workspace via TAPL" into sc-v2-dev 2021-12-14 02:10:59 +00:00
Tony Wickham db34fba43f Don't clobber in progress page transition in applyLoadPlan()
Also only reloadIfNeeded() instead of always reloading in showCurrentTask(), which is called twice as the gesture starts and could contribute to jank.

Test: quickly quick switch from app A to B, ensure no jumpcut back to A
Bug: 205499708
Change-Id: I516020551d3f76eb4025df848bf4c88adf5499b7
2021-12-14 00:25:08 +00:00
TreeHugger Robot ed6cbbc9a6 Merge "Set default value for rank field in launcher logs to ItemInfo.rank." into sc-v2-dev 2021-12-13 18:48:09 +00:00
Siarhei Vishniakou 81ff81227e Add ALLOW_SLIPPERY_TOUCHES to make StatusBarTouchController slippery
LauncherActivity uses FLAG_SLIPPERY for certain interactions. For
example, when home screen is shown, and the user pulls down from not the
top of the screen, and notification shade is getting displayed, then the
touch should be getting transferred to the NotificationShade using
FLAG_SLIPPERY.

The newly introduced permission is added to launcher in order for this
flag to be applied to the window.

Bug: 206188649
Bug: 157929241
Test: reviewed logs, ensure that NexusLauncherActivity has FLAG_SLIPPERY
Test: re-ran the performance regression test
Change-Id: I8d05fa3663687b5382a59b0d47cdac404844c3b7
2021-12-12 06:22:08 +00:00
Android Build Coastguard Worker b20c300442 Snap for 7992035 from be0360c6d8 to sc-d2-release
Change-Id: Id5af91c6842c544d68d0f80b50b7ce9034984199
2021-12-11 22:07:42 +00:00
Ling WO 85336c23fb delete appIcon from workspace via TAPL
1. Create a new class for DropBar icon.
2. Implement function to delete appIcon from workspace.
3. Add testDeleteFromWorkspace to TaplTestsLauncher3.

Bug: 205593009
Test: Launcher3Tests:com.android.launcher3.ui.TaplTestsLauncher3#testDeleteFromWorkspace

Change-Id: I259b909aebcdcc1c73af63a9970db43dab3e86eb
2021-12-10 18:14:41 -08:00
Android Build Coastguard Worker 90cc86c7cf Snap for 7989966 from 7ac2a71b94 to sc-d2-release
Change-Id: Ie1633686915d88c513c5f972c3bd903c38bbe32c
2021-12-11 02:07:29 +00:00
TreeHugger Robot be0360c6d8 Merge "Report contentInsets only based on what they will be inside apps" into sc-v2-dev 2021-12-11 01:30:26 +00:00
TreeHugger Robot 953873dd18 Merge "DeviceProfile.overviewRowSpacing should exclude extra top margin on grid tasks" into sc-v2-dev 2021-12-11 01:12:57 +00:00
TreeHugger Robot 5599b02141 Merge "Allow restore across form factors" into sc-v2-dev 2021-12-11 00:11:56 +00:00
Tony Wickham c7b8957bbb Report contentInsets only based on what they will be inside apps
This avoids changing them when going from an app to launcher (most obvious when going to overview).

This also allows us to not change insets on apps when opening/closing IME, which reduces potential jumpiness.

Finally, also use this logic for 3P launchers by calling directly from TaskbarDragLayerController instead of TaskbarUIController (which was only overridden by LauncherTaskbarUIController). This fixes some bad issues like sending fullscreen insets when opening a folder from taskbar.

Test: Open Calculator, unstash taskbar, go to overview and ensure no jump as taskbar stashes.
Fixes: 200805319
Change-Id: I4f1cc187398d0051863ff44ea90b7ab9c6aaa8f9
2021-12-10 23:47:18 +00:00
Alex Chau 4c98374d99 DeviceProfile.overviewRowSpacing should exclude extra top margin on grid tasks
Bug: 207350366
Bug: 210158657
Test: manual
Change-Id: I28116407c4267259a75fd39637104cea9db73fe3
2021-12-10 23:29:08 +00:00
Jon Miranda b788f9f7f7 Merge "Display in-memory icon for app close while AdaptiveIcon loads." into sc-v2-dev 2021-12-10 23:20:42 +00:00
Tony Wickham 0e0e1cef09 Merge "Fix taskbar being empty" into sc-v2-dev 2021-12-10 22:11:17 +00:00
Alex Chau ab26c62c4a Allow restore across form factors
- Removed deviceTypeCompatible check and allow restore across for mfactors
- In AOSP default device_profile, mark 3x3, 4x4, and 5x5 as phone only. On tablets they'll reflow to 6x5.

Bug: 198575341
Bug: 210129187
Test: Only 3x3, 4x4 and 5x5 are enabled on phone
Test: Only 6x5 is enabled on tablet
Test: Phone backup of 4x4 get restored and reflow to 6x5 on tablet
Change-Id: I36a641d47fcee86ace0fea3d9194d61d12517f13
2021-12-10 22:00:49 +00:00
Jon Miranda 0c2f0faef1 Display in-memory icon for app close while AdaptiveIcon loads.
- We already display the BubbleTextView icon during app close
  since we need the shadows to ensure a clean handoff.
- Previously, we waited until the icon and the AdaptiveIcon were
  both loaded to show the FloatingIconView.
- This change immediately shows the BubbleTextView icon so that
  we can have something displayed in the cases where AdaptiveIcon
  is slow to load (ie. immediately after killing/restarting launcher).

Currently there are cases where we defer some BubbleTextView drawing to
ClipIconView. We can refactor in master so that ClipIconView is only used
when drawable is an AdaptiveIcon.

Bug: 207389002
Test: manual
Change-Id: Ie54642fef4258862a155ab0aba6e49cea9c9ead0
2021-12-10 13:25:39 -08:00
Jon Miranda 7ac2a71b94 Merge "Clear all DragView in onSaveInstanceState" into sc-v2-dev 2021-12-10 18:36:15 +00:00
Tony Wickham 0606773905 Fix taskbar being empty
We set mIconAlignmentForResumedState in endGestureStateOverride(), but then we call applyState() which might aniamte mIAFRS to a different value. To avoid this, set it after applyState() instead.

Specific repro:
1. Open Calculator
2. Go to Overview
3. Dismiss Calculator
  3a. This calls endGestureStateOverride() because the running tile ends
  3b. Previously, we called mIAFRS.updateValue(1) but then applyState() animated it to 0 because we're still in Overview which is an unstashed state. Now the animation to 0 is before setting explicitly to 1.
4. Go home (this sets mIconAlignmentForLauncherState = 1)
5. Open Calculator again. Previously, mIAFRS was already 0 so animating to 0 was ignored. Now, mIAFRS starts at 1 (which is right since launcher is resumed).

Test: see above
Fixes: 210109500
Change-Id: I13f40908f8636291d63ef4b885ac9d08bbf4d393
2021-12-10 18:20:13 +00:00
Alex Chau 9ef8e2dcee Don't snap to focused task in split select
- In split select there is no overview actions, and focused task's snappign position is not centered, it's weird to snap so avoid it
- Follow-up of ag/16378986

Bug: 208644826
Test: manual
Change-Id: I260b5c6164db562717346396b1830af02d408944
2021-12-10 15:27:17 +00:00
Alex Chau b6ad9dfaf5 Allow snapping to focused task in overview grid
Fix: 208644826
Test: manual
Change-Id: Ia6fb2ae44209042f6d40bf8db5d1f43b3b6a27ee
2021-12-10 12:07:21 +00:00
Alex Chau 42cbdee25c Merge "Add split support for 3P launcher" into sc-v2-dev 2021-12-10 09:55:00 +00:00
Alex Chau eea4379a5d Merge "Improving memory dump diag" into sc-v2-dev 2021-12-10 09:52:53 +00:00
Hongwei Wang 293b5bc836 Merge "Do not start auto-pip transition when swiping from split" into sc-v2-dev 2021-12-10 08:25:28 +00:00
Hongwei Wang 8274cb287e Do not start auto-pip transition when swiping from split
Also, pass a PictureInPictureSurfaceTransaction to hide the tasks in
split-screen from Launcher to WM to avoid flicker when any one of the
tasks enters PiP.

Bug: 190855091
Bug: 205894095
Video: http://recall/-/aaaaaabFQoRHlzixHdtY/42RWtayanp2qG0mHSf4Q5
Test: manual, enter PiP from split-screen, see Video
Change-Id: Ia8b6243c0d95c2be8007beeefa2083acc856e404
2021-12-09 20:26:23 -08:00
Android Build Coastguard Worker fe07046a66 Snap for 7985315 from 5b2bbe7e20 to sc-d2-release
Change-Id: Ia34d54f60e027be6629fcfe85d3c1be65769d561
2021-12-10 00:08:37 +00:00
TreeHugger Robot 5692501806 Merge "Only inset IME by 48dp instead of 60dp when taskbar is present" into sc-v2-dev 2021-12-09 23:48:27 +00:00
Tony Wickham 1a2d581cf0 Only inset IME by 48dp instead of 60dp when taskbar is present
- Update providedInternalImeInsets whenever taskbar height changes, since the insets are subtracted from the taskbar window height. This ensures the IME always has the same bottom inset (48dp) regardless of taskbar's window size
- Also translate nav buttons down to center in the new size when IME is showing

Test: Open IME from home and in apps, both in gesture nav and 3 button mode. Ensure IME bottom inset is always 48dp and nav buttons center within that space
Fixes: 201115344
Change-Id: I5ed25b0ffc08145b2221cc5c960e669cc21b2aa7
2021-12-09 22:17:21 +00:00
vadimt bc1da4ca98 Improving memory dump diag
atest deletes artifacts directory on the device, but saves artifacts at the host machine.

Bug: 187761685
Test: presubmit
Change-Id: I1f5244ebfe6b606c4891f5fca003541b27cc944c
2021-12-09 21:58:45 +00:00