Commit Graph

4322 Commits

Author SHA1 Message Date
Tony Wickham 864f8d45b8 [RESTRICT AUTOMERGE] Ignore taskbar system gesture inset on Launcher
- Also have Taskbar report itself as MANDATORY_GESTURE_INSETS

Test: Able to drag bottom workspace items
Bug: 205493938
Change-Id: I014991b1cc6dbd66fa275a7766304ebd92171328
2022-03-30 23:57:16 +00:00
Jon Miranda 8f82208a5e Merge "Never look for matching view in All Apps when swiping up to go home." into sc-v2-dev 2022-03-15 18:13:29 +00:00
Jon Miranda f6365d5b85 Add debug logs for bad launcher state.
Bug: 223498680
Bug: 221658803
Bug: 223499269

Test: manual
Change-Id: I138a7ab031269009fa8ca492cd0bd48085aa4e68
(cherry picked from commit 7ebe209c21)
Merged-In: I138a7ab031269009fa8ca492cd0bd48085aa4e68
2022-03-11 03:35:17 +00:00
Jon Miranda b2068f2eda Never look for matching view in All Apps when swiping up to go home.
The swiping up gesture will never return an app in All Apps,
so we can ignore All Apps state in those cases.

This fixes an edge case where user swipes up and launcher state
is still in All Apps. This causes us to animate the icon to
where it would be in All Apps, even though by the time the
animation starts we are actually in Normal state.

Bug: 222124240
Test: open app from  all apps then quickly swipe up to go home
Change-Id: I756a870660a397d6629aec82e4f5ec4914ed0669
(cherry picked from commit b42e124f5b)
2022-03-10 20:31:11 +00:00
TreeHugger Robot ba297c19c2 Merge "Passing in the launch cookie for widget broadcast trampolines" into sc-v2-dev 2022-02-28 19:11:10 +00:00
Sunny Goyal 8e5a164e05 Removing unnecessary AM.getTasks() call on every touch
Bug: 220906427
Test: Verified on device
Change-Id: I58ed22c4d6069f10198ec30ec02fa8c2f7c55cbe
(cherry picked from commit d2ec834fac)
2022-02-24 17:40:54 +00:00
Selim Cinek c519538bca Passing in the launch cookie for widget broadcast trampolines
The launch cookie can now be transfered via the broadcast

Fixes: 220290671
Test: add Photos widget, return properly to widget
Merged-In: Ibfe9e5232317837f3111459212a4b016b5828ef4
Change-Id: Ibfe9e5232317837f3111459212a4b016b5828ef4
2022-02-21 23:07:57 +00:00
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