Commit Graph

4315 Commits

Author SHA1 Message Date
Vinit Nayak
a75f2ce2d2 Merge "Add null check for null task in getItemInfo()" into sc-v2-dev 2022-02-16 21:23:47 +00:00
Winson Chung
144b0504ad Merge "Prevent lingering divider animators in AbsSwipeUpHandler" into sc-v2-dev 2022-02-16 19:12:27 +00:00
Winson Chung
7faaffa56a Prevent lingering divider animators in AbsSwipeUpHandler
- Refactor the util method to create the animator and track the existing
  animation in AbsSwipeUpHandler to be able to cancel it if another call
  to change the visbility comes in.  Note that this doesn't address
  the case where the launch animation overlaps with swipe up (though that
  hopefully shouldn't happen in normal usage)

Bug: 213403679
Test: Tap in the gesture space while split
Change-Id: I078a7d0f22c2ef2ba847796ec79e740c789ce1ae
Merged-In: I078a7d0f22c2ef2ba847796ec79e740c789ce1ae
2022-02-16 17:13:48 +00:00
Vinit Nayak
73c6288038 Add null check for null task in getItemInfo()
* Pass back an empty WorkspaceItemInfo with correct
itemType set on it so at least it can be identified
if remaining fields are missing.

Fixes: 218625473
Test: Wasn't able to repro crash
Change-Id: If20d8fa648edf6c210ad5398905bf78e173b23a1
2022-02-09 15:59:13 -08:00
Vinit Nayak
90e0fe3923 Add null check for mRemoteTargetHandles for side task launch
* Other checks haven't changed, only pulled them out into
separate block

Fixes: 215699962
Test: Unable to repro the crash, I tried ending the
activity and starting via adb shell, but I was never
able to get into the original if-block that triggered the NPE

Change-Id: I83320634f1d059de610176f9031682ca287bd589
2022-02-09 15:30:19 -08:00
Schneider Victor-tulias
a8dae26d39 Fix taskbar icon dragging issues
- Fixed icons disappearing when initiating dragging
- Fixed incorrect icon location when initiating dragging after rotating the screen to an orientation other than what launcher started in

Fixes: 215418478
Fixes: 214025075
Fixes: 210460544
Test: dragged icons from the workspace and taskbar
Change-Id: I848138af28802f7d806708c77c25b8de307c70d8
(cherry picked from commit 312b68fde4)
Merged-In: I848138af28802f7d806708c77c25b8de307c70d8
2022-02-01 18:27:59 +00:00
Jon Miranda
b2e30bd4e9 Merge "Fix bug where back swipe to icon in All Apps search result." into sc-v2-dev 2022-01-29 00:07:23 +00:00
TreeHugger Robot
a9a7d9b5d9 Merge "Update taskbar resume alignment anim if launcher state changes in the middle" into sc-v2-dev 2022-01-25 18:31:32 +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
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
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
cda2b35971 Merge "Skip animation if there are no targets" into sc-v2-dev 2022-01-21 20:04:04 +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
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
Winson Chung
6751202328 Skip animation if there are no targets
Bug: 210118444
Test: Manual
Change-Id: I362ca30d0e00b647d84b5df38b35b924d5ccfb33
2022-01-20 21:32:45 +00:00
Tracy Zhou
0077caa15d 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
2022-01-19 18:30:29 +00:00
Lucas Dupin
c518932f74 Merge "Directly assign mDepth" into sc-v2-dev 2022-01-13 23:19:20 +00:00
TreeHugger Robot
c0a6d3fc8f Merge "TalkBack doesn't announce when a task has being closed." into sc-v2-dev 2022-01-13 20:36:44 +00:00
Lucas Dupin
03064a1e60 Directly assign mDepth
A request to set a new depth is ignored if the surface is currently
invalid. We should cache what was the requested value, so it will be
applied once the surface is valid again.

Test: manual
Fixes: 209028986
Change-Id: I812816da4b0139c7ea7b53a9fb00f11265ecdea8
2022-01-13 12:01:11 -08:00
Winson Chung
b92c4e2319 Merge "Revert "Add logs for null task list"" into sc-v2-dev 2022-01-12 23:00:00 +00:00
Jerry Chang
f6086e74e3 Merge "Fix NPE when consuming snapshots for recent animation" into sc-v2-dev 2022-01-12 01:21:14 +00:00
Winson Chung
08126d915c Revert "Add logs for null task list"
This reverts commit a46d36240b.

Reason for revert: Reverting logs for release

Change-Id: I65ae1ea691d5fb3d70a2db4beba08d7460b99e2b
2022-01-11 20:06:16 +00:00
Vinit Nayak
2c97c4ab19 Remove code that assumes single GroupedTaskView
* Old code assumes there will only be a single
GroupedTaskView, removing those code paths helps
consolidate single and grouped task code flows
* Correctly check when we need to add a stub
taskView for GroupedTaskViews by checking each
individual taskId

Test: Swiping with multiple split pairs doesn't
cause a cycle
Fixes: 213355942

Change-Id: Ibb98ae0dfcd4f52b762685aec9d2ee6445b9ef54
2022-01-10 15:59:33 -08:00
Jerry Chang
7f8e57ed68 Fix NPE when consuming snapshots for recent animation
Fix: 207716265
Test: no exception throws after recent animation
Change-Id: Ic35aea2285fb120f7d0b5215137ad9450518702f
2022-01-10 18:48:16 +08:00
TreeHugger Robot
d873788275 Merge "Add null check when logging quick switch" into sc-v2-dev 2022-01-07 22:13:12 +00:00
Tony Wickham
688148ac69 Add null check when logging quick switch
Test: none
Fixes: 209993127
Change-Id: I927f8969cf5ef3759b501fe1ada4d3b061b53d06
2022-01-07 18:32:14 +00:00
TreeHugger Robot
19b3b93e5c Merge "Don't show split option if device in "Lock task mode"" into sc-v2-dev 2022-01-06 23:20:54 +00:00
Vinit Nayak
c09012766b Don't show split option if device in "Lock task mode"
fixes: 199342537
Change-Id: Id212cce20b792fb8b16e9fa8eca4635773ae5ea7
2022-01-06 13:37:46 -08:00
TreeHugger Robot
5735251c33 Merge "Use list instead of array when filtering non-app leashes" into sc-v2-dev 2022-01-06 00:25:34 +00:00
TreeHugger Robot
3a6a0f5a31 Merge "Handle split selection when animation is disabled" into sc-v2-dev 2022-01-05 22:56:01 +00:00
Vinit Nayak
d25fb5bd0b Use list instead of array when filtering non-app leashes
* Non-apps leashes can contain non-divider targets, which
was creating null elements in the array when an index didn't
get assigned.
* With a list we don't have to worry about empty index gaps
* Also remove the animation for the divider for certain
gestures because the surface isn't always valid for the
full duration of the animation. We probably would need to
synchronize with rest of recents animation

Fixes: 212218930
Test: No longer crashes when swipe up, hold, then swipe down
Change-Id: Ia1fc4d66e73f21b55fdbfe59342af025e2a525d9
2022-01-05 14:43:43 -08:00
Vinit Nayak
1465a5af7b Handle split selection when animation is disabled
* Consolidate setState() and setStateWithAnimation()
to be handled in the same manner
* If no animation, we run the created
PendingAnimation right away

Fixes: 209935590
Test: Tested w/ and w/o animation
Change-Id: I1d6fdba21761b6721e6bd52234016178547cd437
2022-01-05 12:19:11 -08:00
Hyunyoung Song
d96e07035c Merge "Apply scrim protection to atomic state transition ALLAPPS -> NORMAL" into sc-v2-dev 2022-01-05 19:27:04 +00:00
Hyunyoung Song
153cd69d14 Apply scrim protection to atomic state transition ALLAPPS -> NORMAL
Bug: 209480401

Test: manual, video attached on the bug

TL;DR;; minimized the delta for sc-v2

Change-Id: If8c9281bb4366540b9a4ea10a9b363ce82d78daf
2022-01-04 21:55:14 -08:00
TreeHugger Robot
59ebc0c3c9 Merge "Add ALLOW_SLIPPERY_TOUCHES to make StatusBarTouchController slippery" into sc-dev am: c0231f8d0f am: f58691ae42
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16444734

Change-Id: Idd834fc5a587e2cdb3425612514efe54ece792cc
2021-12-23 07:15:54 +00:00
TreeHugger Robot
f58691ae42 Merge "Add ALLOW_SLIPPERY_TOUCHES to make StatusBarTouchController slippery" into sc-dev am: c0231f8d0f
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16444734

Change-Id: I405e4c79cc91ccbeb0472870ad1395eccaa8b64b
2021-12-23 06:55:10 +00:00
TreeHugger Robot
c0231f8d0f Merge "Add ALLOW_SLIPPERY_TOUCHES to make StatusBarTouchController slippery" into sc-dev 2021-12-23 06:40:12 +00:00
TreeHugger Robot
5181163070 Merge "Fix testStressSwipeToOverview" into sc-dev am: aabead2db8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16471550

Change-Id: Id7353bbafe62f70b0b1659455e731bc3ecf85de2
2021-12-22 20:23:47 +00:00
TreeHugger Robot
925768d35a Merge "Fix issues with starting new recents animation before previous onRecentsAnimationStart" into sc-dev am: 1a453f1547
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/16471461

Change-Id: Ia6ddad23a2ebaa5737ffe12ce91501ec23dc8489
2021-12-22 20:23:45 +00:00
TreeHugger Robot
092c90c55e Merge "Log launcher settings whenever launcher layout is logged using pull atom." into sc-v2-dev 2021-12-22 19:55:44 +00:00
Tony Huang
fc6fc6d651 Merge "Animate split divider" into sc-v2-dev 2021-12-22 02:47:05 +00:00
TreeHugger Robot
aabead2db8 Merge "Fix testStressSwipeToOverview" into sc-dev 2021-12-22 01:50:59 +00:00
Thiru Ramasamy
7d04782532 Log launcher settings whenever launcher layout is logged using pull atom.
* Whenever launcher setting is changed, only log the changed setting instead of all

Bug: 181703659
Test: wwdebug && wwlogcat AND statsd_testdrive 10108

Change-Id: I9c6b7a17d653038a91f885df455e5ebbb401b49a
Merged-In: I9c6b7a17d653038a91f885df455e5ebbb401b49a
(cherry picked from commit f7ebfb9a7f)
2021-12-21 19:58:15 +00:00
Vinit Nayak
d0b4d10f0e Merge "Use all targets passed back for recents animation" into sc-v2-dev 2021-12-21 17:10:00 +00:00
Vinit Nayak
f421ad2ef8 Use all targets passed back for recents animation
* Previously we were removing all targets except for
the app that was to be animated. That caused issues
because we look for the home app to determine if the
app leashes need to be drawn underneath or not.
* Now (assuming at most two non-home app leashes will
be sent) we add all the non-home targets along with
the desired app target by excluding 1 of the 2 non-home
apps

Bug: 199936292
Merged-In: I252d6c663e9ca145ef394ac08d9a32da02d4a03b
Change-Id: I252d6c663e9ca145ef394ac08d9a32da02d4a03b
2021-12-21 05:45:00 +00:00
Winson Chung
a46d36240b Add logs for null task list
Bug: 206648922
Test: Adding logs
Change-Id: I23b8a9fadd1e555f1c3f7a75940bd7faa56b777b
2021-12-20 22:49:10 +00:00
Winson Chung
75867ae0ba Merge "Fix some small related to back button alpha" into sc-v2-dev 2021-12-16 21:59:27 +00:00
Winson Chung
361f82b237 Temporarily disable SUW specific insets logic
Bug: 204384193
Test: Check that SUW is inset

Change-Id: Id00f10f51b52ef8ec375f650fd44bb2c6eb31e09
2021-12-16 18:45:25 +00:00
Winson Chung
e62a1996b7 Fix some small related to back button alpha
- Skip updating nav button dark intensity if we're setting it manually
  while SUW is running
- There should only be one alpha StatePropertyHolder for the same view
  otherwise when updating the properties it can clobber a previous state

Bug: 204384193
Test: Disable dark mode on SUW and verify nav buttons show
Change-Id: I450c3a5697954d9b464bdd622847beb2d01f3802
2021-12-16 17:47:53 +00:00
TreeHugger Robot
8d25a0a363 Merge "Show Digital Wellbeing Banners for split tasks" into sc-v2-dev 2021-12-16 11:13:10 +00:00