Commit Graph

6667 Commits

Author SHA1 Message Date
TreeHugger Robot 8d25a0a363 Merge "Show Digital Wellbeing Banners for split tasks" into sc-v2-dev 2021-12-16 11:13:10 +00:00
Vinit Nayak ebf2cdd0f1 Show Digital Wellbeing Banners for split tasks
Fixes: 199936292
Change-Id: I38743d58f53a65ef717b1babc21ad1df2dc840a4
2021-12-15 22:19:02 -08:00
Vinit Nayak 84292da6c2 Merge "Save multiple RunningTaskInfo in GestureState" into sc-v2-dev am: 20102c3dd7 am: a51f394504
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16482597

Change-Id: If69bd5e02de59bdfe05a8f7fcc03a4ff235d4c41
2021-12-16 00:54:45 +00:00
TreeHugger Robot 368eb46da5 Merge "Set navBarDarkIntensity based on dark theme in SUW" into sc-v2-dev am: f9f90d6dc2 am: 5ebda13e05
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16482607

Change-Id: I8babe4bae067d8feab9d80c41b48994a33bf19df
2021-12-16 00:50:57 +00:00
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 78b12de4d2 Merge "Scale, crop, and translate window when swiping back to home." into sc-v2-dev am: 80aa8da7e3 am: e589eaded8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16470663

Change-Id: Id6d210fdcc9bda55a8666121bd5418a48da40c55
2021-12-15 20:35:18 +00:00
Winson Chung 1944ab39b9 Merge "Wait for the Launcher activity to bind to TIS before animating" into sc-v2-dev am: 2ecf688de6 am: 049a345cbe
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16420662

Change-Id: I12d9cbe53afd42cfade93d1c957f3f9aa1be520a
2021-12-15 20:33:32 +00: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
Brian Isganitis 3523b241cc Merge "Include border spacing to align tasbar icons with hotseat." 2021-12-15 20:17:35 +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
Shuming Hao 33e97f1ca4 Merge changes from topic "kingyo-new-buttons-master"
* changes:
  Toggle notification panel when new buttons are clicked in taskbar
  Add new buttons to taskbar
2021-12-15 16:49: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
Brian Isganitis 19ab3a5582 Include border spacing to align tasbar icons with hotseat.
The original calculation was including spacing in the the
hotseatCellSize, but that causes us to incorrectly compute the
hotseatIconCenter. If we take advantage of
DeviceProfile.calculateCellWidth, we get the width without the spacing.
Then we can add spacing for every icon to the left of the current one
when figuring out the center.

Test: Manual on tablet using device types tablet and multi display.
Fix: 210123477
Change-Id: Ie182718ad3a229ffa8bae031f3ac7f73f8539f49
2021-12-15 01:15:30 +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
TreeHugger Robot 3611e9d656 Merge "Ensure some taskbar states are initialized correctly" into sc-v2-dev am: 9b3b2b9c7e am: 4ab25b564e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16463952

Change-Id: I7bcf495a8774df2ac99dd6b9cf3c65f6d5f46461
2021-12-14 23:26:08 +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
Tracy Zhou bec00acf28 Delay showing task bar until the user releases their finger dragging from all apps to normal
Fixes: 208802276
Test: drag from all apps to normal, and the task bar doesn't stash until the user releases their finger
Change-Id: I53133cc80749bdc62e77d858b5714ae32facbd1d
2021-12-15 06:35:41 +08: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 ba19137cd8 Merge "Don't clobber in progress page transition in applyLoadPlan()" into sc-v2-dev am: 36e5f812d5 am: 19ce4e2586
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16459220

Change-Id: I0a9facc24dd47b4463a0b3872b3bdef7eb94def0
2021-12-14 16:53:39 +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
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 46643ab66d Merge "Add cheap aidl tracing suitable for always-on-tracing (3/3)" 2021-12-13 13:55:32 +00:00
Shawn Lin 39ada8ad58 Merge "Notify system to report the rounded corners that task bar draws" 2021-12-13 08:26:01 +00:00
shawnlin beae64cd95 Notify system to report the rounded corners that task bar draws
Task bar draws fake rouned corner above itself and it should notify
system to report that fake ones to apps.

Bug: 196387239
Test: make

Change-Id: I1d9732de71fbe653ed56e468e211b1bfb4dd2b37
2021-12-13 13:33:59 +08:00
Winson Chung 1d85bd4130 Merge "Account for early display rotation for gestures with shell transitions" 2021-12-13 05:29: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
TreeHugger Robot 434d537725 Merge "Report contentInsets only based on what they will be inside apps" into sc-v2-dev am: be0360c6d8 am: 86be069897
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16442237

Change-Id: I848ee10d672d713b326fafbe2fdf789ababe1dd2
2021-12-11 02:09:07 +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
Shuming Hao 22fbc854ea Toggle notification panel when new buttons are clicked in taskbar
This CL adds toggle notification panel function for new buttons in Kingyo taskbar.

Bug: 199333223
Test: m, verify that clicking the new buttons will expand/collapse quick settings and notification panel

Recall: http://recall/clips/993bc14b-98a7-4d7d-98c4-17ba271d4da9
Change-Id: I8c7383d2efa6f15de10a50173cfff86ab20ebb4c
2021-12-10 16:52:47 -08:00
Daichi Hirono db5960de5e Add new buttons to taskbar
Cherry picked from commit 53db50dd0b2bd6ed1842b25396c9c52b7abe1157
after resolving conflicts

The CL adds two new buttons for desktop usage.
No listeners are registered yet.

Recall: http://recall/clips/f52b70ed-c437-4374-a492-e4b7c802520a

Bug: 198355239
Test: m, verify that new buttons are added

Change-Id: I1d4a12da3041e113a978c37c9e36ec085d15e8b3
2021-12-10 16:24:24 -08: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
Tony Wickham a38bcacf05 Merge "Fix taskbar being empty" into sc-v2-dev am: 0e0e1cef09 am: 8dedf2f6bc
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16439570

Change-Id: I103a05b42d340653aec6d1328402037fcf7db783
2021-12-10 22:44:40 +00:00
Tony Wickham 0e0e1cef09 Merge "Fix taskbar being empty" into sc-v2-dev 2021-12-10 22:11:17 +00:00
Alex Chau 58f1b7f77e Don't snap to focused task in split select am: 9ef8e2dcee am: abc325df91
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16440098

Change-Id: I6ddd47521b21868e7c70d724aedcb42f791d9b32
2021-12-10 18:24:47 +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 1ced59acb4 Allow snapping to focused task in overview grid am: b6ad9dfaf5 am: 17a0eec015
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16378986

Change-Id: Id925b44f6a324e821150efe1b3e1cc001497c69e
2021-12-10 15:28:44 +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 d35c6f97fe Merge "Add split support for 3P launcher" into sc-v2-dev am: 42cbdee25c am: 809cef23a5
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16416933

Change-Id: I6305941be879350ab192cf3be0fa0a4edf8ffe99
2021-12-10 10:25:32 +00:00
Alex Chau 42cbdee25c Merge "Add split support for 3P launcher" into sc-v2-dev 2021-12-10 09:55:00 +00:00
Hongwei Wang aa6393be02 Merge "Do not start auto-pip transition when swiping from split" into sc-v2-dev am: 293b5bc836 am: 51786b1084
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16418447

Change-Id: I182a048c3a0ae10e630ad87fe9ce37de4b7a0f13
2021-12-10 09:01:08 +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
TreeHugger Robot 86afc595d1 Merge "Only inset IME by 48dp instead of 60dp when taskbar is present" into sc-v2-dev am: 5692501806 am: 1b578f3b71
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16433862

Change-Id: Idc3d1364d374fb33e5845f249be80ba3408c9b0c
2021-12-10 00:24:54 +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