Commit Graph

49925 Commits

Author SHA1 Message Date
Brian Isganitis 1664c9f418 Refactor all apps to depend on activity context.
The current AllAppsContainerView has been split into a base class and a
subclass for activities. The base class allows using all apps with an
activity context. A-Z and work profile tabs are supported, but search
and the hotseat still require an Activity.

Test: Manual. All apps should work the same.
Bug: 204696617
Change-Id: I3b146714bc11b3b3555d97623aab5d78ac836482
2022-01-24 20:24:20 -05:00
Presubmit Automerger Backend 714c0bf1d6 [automerge] Update taskbar resume alignment anim if launcher state changes in the middle 2p: cd6abc19a8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16693156

Change-Id: I5fe6e2e1492df3467ae3bc6880ff308e03a401dd
Merged-In: Ie0c6140e14186e41c7e4748dc745f87349b084fe
2022-01-24 23:25:36 +00:00
Presubmit Automerger Backend acbd4852b9 [automerge] Add fallback for missing remote animation callbacks 2p: bb530e9058
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16688543

Bug: 194011186
Change-Id: I975ca18ca54c2ee061b0e8259e4091dc5b999e21
Merged-In: I1b1296fab316b979f441ebb474d1475e3fa68f95
2022-01-24 22:25:30 +00:00
Josh Tsuji 46728f6481 Merge "Adds Launcher in-window animations, and reworks how the unlock flow works." 2022-01-24 20:34:44 +00:00
Winson Chung bb530e9058 Add fallback for missing remote animation callbacks
- In some cases WM won't callback the remote animation callbacks (neither
  start nor cancel) and Launcher never finishes executing the pending
  command (preventing the subsequent commands from running).  For the time
  being, just cancel the current state to allow the commands to be
  processed.

Bug: 194011186
Test: Mash on overview and home buttons with a 3p launcher

Signed-off-by: Winson Chung <winsonc@google.com>
Change-Id: I1b1296fab316b979f441ebb474d1475e3fa68f95
Merged-In: I1b1296fab316b979f441ebb474d1475e3fa68f95
2022-01-24 20:11:04 +00:00
Alex Chau 0a1f7d5de5 Add ScreenRecord for a flaky test
Bug: 215673732
Test: none
Change-Id: I175031be50e37f7c14643475e3b44bfc514022e4
2022-01-24 18:56:40 +00:00
Alex Chau a42f658afa Merge "Add ScreenRecord for a flaky test" 2022-01-24 18:18:46 +00:00
Winson Chung a0c451008a Merge "Add fallback for missing remote animation callbacks" 2022-01-24 18:13:47 +00:00
Tony Wickham cd6abc19a8 Update taskbar resume alignment anim if launcher state changes in the middle
One way to reproduce this issue is to run `adb shell input keyevent KEYCODE_HOME`, which happens to pause and immediately resume launcher. For example, let's say we run this while in All Apps. Because the isResumed=true comes before the state transition to Normal, we behave as if we are still going to All Apps, specifically goingToUnstashedState = false (since we stash in All Apps). To fix this, we now listen to state changes while the resume alignment animation is playing, and update it if necessary.

Also did the same correction for the gesture alignment animation, though I don't have a specific repo for that.

Finally, because there are now more triggers for alignment animations to play, we add a check to only play them if it's not animating to the same value it's already animating towards. One notable experience this improves is swiping down from All Apps to home; if you do it quick enough, the state animation ends before the taskbar unstash animation, and thus the unstash animation would cancel and start again with the full duration, making it look laggy/disjointed (this behavior existed before this change as well).

Test: TaplTestsQuickstep
Test: Go to All Apps, run `adb shell input keyevent KEYCODE_HOME`, open an app and ensure taskbar icons are visible
Test: Quick switch from home when taskbar is present in apps, but instead go to overview; ensure no jump when taskbar stashes
Test: Swipe down quickly from All Apps, ensure taskbar unstashing doesn't slow down when reaching the end of the state transition
Fixes: 214562370
Change-Id: Ie0c6140e14186e41c7e4748dc745f87349b084fe
Merged-In: Ie0c6140e14186e41c7e4748dc745f87349b084fe
(cherry picked from commit 5fa2ed27bf)
2022-01-24 16:56:12 +00:00
Sunny Goyal fcb9182336 Merge "Updating logic to check if icon needs badging" 2022-01-24 16:20:34 +00:00
Alex Chau 1a9ef83988 Add ScreenRecord for a flaky test
Bug: 215672979
Test: none
Change-Id: I3bfd0275a4d551c0b6d614a7a76d696f14ce3ca3
2022-01-24 15:16:24 +00:00
Wei Sheng Shih 1234813d1c Merge "Fix NPE crash when merge transition to remote transition." 2022-01-24 01:38:58 +00:00
Android Build Coastguard Worker af3034c3ce Merge cherrypicks of [16591950] into sc-v2-release.
Change-Id: I637b089db1894fd8da178028ba4ad582cc94e513
2022-01-23 20:57:08 +00:00
Tracy Zhou 684b2b77cf End live tile when notification panel is pulled down for the first time in Overview.
Fixes: 211556489
Test: Go to overview with live tile. Turn on dark theme. Pull the panel back up. Make sure everything looks fine (live tile is ended).

Change-Id: I51cb81718a489ad7568c5e05ace0b3dbc6ca5443
(cherry picked from commit 0077caa15d)
Merged-In:I51cb81718a489ad7568c5e05ace0b3dbc6ca5443
2022-01-23 20:56:32 +00:00
Android Build Coastguard Worker 7c5b054303 Snap for 8107231 from a84f86f254 to sc-qpr3-release
Change-Id: I51a4954c66c93c8e42a538a8f80a789ebba7a842
2022-01-22 22:07:45 +00:00
Vadim Tryshev 21720c9a2c Revert "Revert "Removing unused tracing""
This reverts commit 827335f209.

Reason for revert: Problem solved

Bug: 195319692
Test: presubmit
Change-Id: I084c8a6b6acdaa3ee4697fc752e817d292ba0665
2022-01-22 02:46:02 +00:00
Android Build Coastguard Worker 23c6072710 Snap for 8104874 from cda2b35971 to sc-qpr3-release
Change-Id: I06710fa18f0c21c5eee48d0383494a6529a6632d
2022-01-22 02:07:43 +00:00
TreeHugger Robot 7582887025 Merge "Add log to help debug crash during bindItems." 2022-01-22 01:46:02 +00:00
Winson Chung 3b5e42d926 Merge "Dispatch hover events through the input consumer proxy" into sc-v2-dev am: a84f86f254 am: 4d548bbf6f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16685428

Change-Id: I149f87d2ce0b08a9e7fa07b479ee0c2e45f5dd78
2022-01-21 22:54:40 +00:00
Winson Chung 4d548bbf6f Merge "Dispatch hover events through the input consumer proxy" into sc-v2-dev am: a84f86f254
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16685428

Change-Id: Ie2133958457a088f53b4e32c76fc03463023e37d
2022-01-21 22:49:20 +00:00
Winson Chung efb80ec588 Merge changes from topic "presubmit-am-cf03cdfdc7444d7faac91b866c05eae8" into sc-v2-dev-plus-aosp am: b7225856ad
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16685428

Change-Id: I5595a2cf4bdc179c74d20a01e9249de7c14199ce
2022-01-21 22:48:54 +00:00
Winson Chung a84f86f254 Merge "Dispatch hover events through the input consumer proxy" into sc-v2-dev 2022-01-21 22:29:43 +00:00
Winson Chung b7225856ad Merge changes from topic "presubmit-am-cf03cdfdc7444d7faac91b866c05eae8" into sc-v2-dev-plus-aosp
* changes:
  [automerge] Dispatch hover events through the input consumer proxy 2p: eff9a120c6
  Dispatch hover events through the input consumer proxy
2022-01-21 22:29:43 +00:00
Jon Miranda 0aff1151c3 Add log to help debug crash during bindItems.
Bug: 198115560
Test: can't repo, need to catch in wild
Change-Id: I9d457fce4903c5df33833a5e4817f8a32ed260e2
2022-01-21 22:07:48 +00:00
Winson Chung 3b38293e2f Merge "Skip animation if there are no targets" into sc-v2-dev am: cda2b35971 am: e8e9906ec0
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16683595

Change-Id: I010892a454450581811d31a7297f40b87c5b35c4
2022-01-21 20:39:28 +00:00
Winson Chung e8e9906ec0 Merge "Skip animation if there are no targets" into sc-v2-dev am: cda2b35971
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16683595

Change-Id: I98e4a9b18513fa7731a077b28a8ff231623fafdd
2022-01-21 20:33:52 +00:00
Winson Chung 92d66a4d2a Merge changes from topic "presubmit-am-eb42a70960e740e988dfbddc552edcae" into sc-v2-dev-plus-aosp am: 4f9711c182
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16683595

Change-Id: Iaa54adbb00484f99272212781bdedd84a1d8ecfc
2022-01-21 20:33:38 +00:00
Winson Chung cda2b35971 Merge "Skip animation if there are no targets" into sc-v2-dev 2022-01-21 20:04:04 +00:00
Winson Chung 4f9711c182 Merge changes from topic "presubmit-am-eb42a70960e740e988dfbddc552edcae" into sc-v2-dev-plus-aosp
* changes:
  [automerge] Skip animation if there are no targets 2p: 6751202328
  Skip animation if there are no targets
2022-01-21 20:04:04 +00:00
Presubmit Automerger Backend 2ec4b4bdf4 [automerge] Dispatch hover events through the input consumer proxy 2p: eff9a120c6
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16685428

Bug: 197043796
Change-Id: Ic29524b5310cfa89ef9a45e8201fa95e2f873648
2022-01-21 19:40:41 +00:00
Winson Chung eff9a120c6 Dispatch hover events through the input consumer proxy
- Touch explore uses hover events to focus views for accessibility, but
  we were dropping these events when handling them through the input
  consumer proxy.  The reason this changed is that in sc-v2 we moved the
  recents input consumer to the top of the task display area to ensure
  that it was always above any of the tasks in splitscreen, but by doing
  so, it was always above launcher even after settling in overview.  The
  existing path for handling motion events is heavily tied to touch
  handling (action down/move/up) so we just add a separate path for
  dispatching hover events through the normal mechanism to launcher via
  the consumer.

Bug: 197043796
Change-Id: I5f8cfd357ff13971fe172ce1d0179535479cd26c
2022-01-21 19:40:01 +00:00
TreeHugger Robot 987b62eca5 Merge "Align OverviewActionsView for 3 button taskbar" 2022-01-21 19:31:18 +00:00
Tony Wickham e586ad2dda Merge "Defer gesture when IME is currently rendering nav buttons" 2022-01-21 18:43:27 +00:00
Thales Lima a1012904bb Make hotseat fit one line on tablets
When running on tablets in landscape, the QSB should inline with the hotseat icons. This does that and fixes small bugs that didn't account for the new hotseatBorderSpace.

Bug: 210118169
Test: atest Launcher3Tests:DeviceProfileTest
Test: visual, using HSV and Window
Change-Id: I5a89c5449bf59fde736618151eceaacca443ef67
2022-01-21 17:42:48 +00:00
Winson Chung 3f40a17e54 Add fallback for missing remote animation callbacks
- In some cases WM won't callback the remote animation callbacks (neither
  start nor cancel) and Launcher never finishes executing the pending
  command (preventing the subsequent commands from running).  For the time
  being, just cancel the current state to allow the commands to be
  processed.

Bug: 194011186
Test: Mash on overview and home buttons with a 3p launcher

Signed-off-by: Winson Chung <winsonc@google.com>
Change-Id: I1b1296fab316b979f441ebb474d1475e3fa68f95
2022-01-21 16:34:49 +00:00
Vinit Nayak c9676e20d3 Align OverviewActionsView for 3 button taskbar
Bug: 189807374
Change-Id: I529dba5d4df3d0c3366c111e70991a36bec4bfc3
(cherry picked from commit 0bd0733ef4)
2022-01-21 15:51:47 +00:00
Josh Tsuji 231c9229bf Adds Launcher in-window animations, and reworks how the unlock flow works.
Bug: 197636887
Test: atest SystemUITests
Change-Id: Idab7249e4a761040863578d546f0831794efaf4a
2022-01-21 10:41:00 -05:00
TreeHugger Robot 3e25f29128 Merge "Add log dumps for taskbar state" 2022-01-21 15:05:32 +00:00
TreeHugger Robot 072b1f013c Merge "[AA+ Search] Update "All apps" to use Google Sans." 2022-01-21 14:40:40 +00:00
wilsonshih 68c38e40c4 Fix NPE crash when merge transition to remote transition.
After enable shell transition, the opening/closing target is for the
app.
In legacy RecentsAnimationController, the mode of the new
RemoteAnimationTarget is decide based on the recents activity type, so
basically the mode for all non-home/recents activity is closing.
So while create the recents window animator, the target apps will be
filter out in RemoteAnimationTargets#ctor because the mode is changed.
To make the remote animation targets compatible with shell transition,
there should only need to check the opening apps as target.

Also fix that the topMostSimulators can be null if the size of
remoteTargetHandles is zero.

Bug: 207297486
Test: Enable shell transition, run
atest TaplTestsQuickstep#testQuickSwitchFromApp
Test: Enable shell transition, enter recents, swipe to right-most page(
the page shows "Clear all"), then click the task and verify Launcher
won't crash. Test on both NexusLauncher and 3rd-party Launcher.

Change-Id: I9bde3d7864d3edd54145c66acae0cd1013d89c6b
2022-01-21 17:32:11 +08:00
Tracy Zhou d38320eeb6 End live tile when notification panel is pulled down for the first time in Overview. am: 0077caa15d am: b5e6dbc91e
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16591950

Change-Id: Ib2148b38ffbd3edbb5f80bea4b10aaf9de5dcfdd
2022-01-21 02:12:24 +00:00
Presubmit Automerger Backend 0d388f277a [automerge] Fix bug where back swipe to icon in All Apps search result. 2p: db767aa575
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16684091

Bug: 213306709
Change-Id: Id202b84a430c1e812537afecbf72233a806e7099
2022-01-21 02:08:54 +00:00
Jon Miranda db767aa575 Fix bug where back swipe to icon in All Apps search result.
Issue is that All Apps is scaling during the animation, so when
FloatingIconView looks for it in the view hierarchy,
it's not in its final position.

This would be the cleanest approach for a scv2 fix

Bug: 213306709
Test: manual
Change-Id: Iaec77d15c9533edccd9c82164143af8fa522158f
Merged-In: Iaec77d15c9533edccd9c82164143af8fa522158f
2022-01-21 02:08:18 +00:00
Jon Miranda fbdb6ac51f Merge "Fix bug where back swipe to icon in All Apps search result." 2022-01-21 02:08:08 +00:00
Tracy Zhou b5e6dbc91e End live tile when notification panel is pulled down for the first time in Overview. am: 0077caa15d
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16591950

Change-Id: Ibb334ad989b707213dc9038123312b15b31bfdf0
2022-01-21 02:01:05 +00:00
TreeHugger Robot e97f05f25b Merge "Log display size and bounds returned from each dispaly" 2022-01-21 01:37:54 +00:00
Alex Chau dfa4424d4f Merge "Put AllApps in bottom sheet for tablets" 2022-01-21 00:34:03 +00:00
TreeHugger Robot 11d317228c Merge "Update taskbar resume alignment anim if launcher state changes in the middle" 2022-01-21 00:17:04 +00:00
Tony Wickham 27c41677b1 Don't create new nav bar layer when IME is rendering nav buttons
Test: Edit folder name in taskbar, ensure we don't create a new window
Fixes: 214571910
Change-Id: I9a1385dbed2df7a4ee141485c8bbfb521457d853
2022-01-21 00:08:19 +00:00
Tony Wickham da84bcad57 Defer gesture when IME is currently rendering nav buttons
Normally we only defer when touching the nav buttons themselves, but that will be difficult to propagate when IME is hosting the nav buttons. So just defer no matter what if IME is currently showing and rendering the nav buttons, ignoring the touch region.

Test: Enabled "persist.sys.ime.can_render_gestural_nav_buttons", ensure RecentsAnimationDeviceState#isImeRenderingNavButtons() returns true iff IME is showing in gesture nav.
Fixes: 215593010
Change-Id: I265cc042f9e24eb060f090febfbccebd3ba4d3c2
2022-01-20 23:49:34 +00:00