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
- 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
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
- 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
Instead of having only one switch to enable all binder tracing,
we seperate between stack tracking and tracing. Stack tracking
still works as before. However, the more lightweight option,
tracing using android.os.Trace, is toggleable separately and will
work on the receiver side without dumping the entire stack trace.
We also make the tracing more efficient by caching
getTransactionName and concatting the class name.
Also, enable this selectively for SysUI+Launcher, which is
currently the focus of always-on-tracing effort to figure out
what kind of binder calls these processes are calling which seems
to contribute a huge amount of jank (long binder calls are in
>= 50% of janky traces).
Test: external/perfetto/tools/record_android_trace gfx view freq sched wm am aidl
Test: atest aidl_unittest
Bug: 202278427
Change-Id: Ia555740400808e0a467d00e305b6743931d3af0a
* Copied logic mostly from
Base/RecentsViewStateController
* There's one KI crash specific to 3P
(b/209694087)
* Swipe to home animation is TODO, but
then again it also seems incorrect for
full-screen app. 3P has many cosmetic issues
throughout.
Bug: 195607777
Test: Tested w/ Nova launcher with grid
and non-grid, able to invoke split screen with
same animations as 1P launcher
Change-Id: I35a1bc92a51caccac4214289e614000cd47bb503
Adding announceForAccessibility() in createTaskDismissAnimation()
to announce the task has being closed.
Test: Manually tested
Fix: 186744160
Change-Id: I71f57e7ba03a61b2ced7e338da4251637e89bd16
* 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
- Ensure the events are in a consistent coordinate frame from the start
of the gesture
- Now that the display rotation happens at the start of the gesture, we
need to use the rotation at the start of the gesture in some cases
- Use the pre-rotation screenspace bounds when calculating the thumbnail
matrix
Bug: 197687032
Test: Enable shell transitions and swipe up from a landscape app into
force-portrait Launcher
Change-Id: I61ebe9947a55937c59a47336aa92561e7e3e8b66
Always draw background for task thumbnail because the task snapshot
might be translucent or partially empty.
For example, when drag-to-dismiss split screen, it will reparent tasks
from dismissing split root to the bottom of display. Task thumbnail of
those tasks might be partially empty because the snapshot was taken in
new bounds inherits from display but with split screen content.
Fix: 200096421
Test: drag to dismiss split, observed task thumbnail no longger been
cropped.
Change-Id: I5d04daa55a558f79ccf5127080088bd0698d06d8
* changes:
Improve quick switch from home to taskbar
Cleanup some taskbar/hotseat handoff issues
Fix taskbar stash misalignment when going from app to overview
- Update floatingTaskView, apply splitsSelectTranslation and splitPrimaryScorllOffest when rotating while in split select
- Moved getSplitSelectTranslation to RecentsView
- When in portrait, treat STAGE_POSITION_BOTTOM_OR_RIGHT as STAGE_POSITION_TOP_OR_LEFT in split translation calculation
- Apply splitsSelectTranslation for portrait grid too
Fix: 201721153
Test: manual
Change-Id: I768a3b15de4d434674058b274c368798f5852917