HandlerThread.getLooper blocks the current thread until.
the final thread is initialized. Updating RecentsModel to
use an executor instead of a handler thread to avoid this.
Change-Id: I3b2e82a375ea65bea1526af4a32c6a2488102541
The onSplitScreenInvoked was used to notify system ui to reset the
divider position before entering split screen. With
SplitScreenTaskOrganizer, WM Shell library could know the exact time
when entering/leaving split screen mode. Removes the legacy API and
resets divider position when leaving split screen mode.
Fix: 168869136
Test: atest WMShellTests
Test: atest SystemUITests
Test: manual check recents and split screen behavior
Change-Id: Id14925619d1ec7c014a3e306fd99ec3734f227da
(cherry picked from commit 44981eb88e)
Test: Set TaskView#EDGE_SCALE_DOWN_FACTOR = 0.2f, then swipe
down on the centermost TaskView; ensure it fills the screen.
Alternatively, touch and hold the nav bar and ensure there is
no jump in scale on the app window.
Fixes: 169259407
Change-Id: Ib3cfba6ebafbcb90de9c6b1ab79f53605d995321
Overview was being hidden when gesture was running, this is unnecessary as other hidden flags cover all the use cases.
Bug: 168565347
Change-Id: Ieab36783fccc0088f9cdbe0768a93c5c46b23def
The pivot is supposed to be at the center of the task view, hence why
we use width / 2, height / 2, but technically this is assuming that
translation == 0. This error isn't normally noticeable because scale
is 1 when the task is centered, so the pivot doesn't matter. By
scaling before translating, we ensure the pivot doesn't depend on
the translation.
Test: scroll side to side while swiping up from an app, ensure the
running window scales down properly; when you let go to enter recents
while the second task is centermost, the running window ends in the
exact position as the first TaskView that replaces it.
Fixes: 169103357
Change-Id: Ica53c6b6fb073304c29f26d30fb829bb9d282185
Previously we only allowed touches on the hotseat (due to it being
in the shelf in Overview); now we allow touches anywhere if we are
not in an overview state.
Test: enter overview, swipe up to home and scroll workspace or tap
a workspace icon during the transition
Bug: 169052350
Change-Id: I59ee695ba9cb6f5fddd8e41c5796cdba6b3d2112
- The canRecentsActivityRotate() also checks whether system rotation
is enabled which prevents us from using the right layout orientation
when home rotation is enabled while system rotation is disabled.
Bug: 168278832
Test: Tested menu visibility in combination of
Auto rotate setting x Home rotation setting X Device orientation
Change-Id: If74a38b1ec51abd2ea7f3ba3de23f0b2c4cab0ab
It is only used by NoButtonQuickSwitchTouchController. Also removed
the interpolator overrides that are no longer needed since we don't
animate the shelf into overview mode.
Change-Id: I358a6020caaee859c6b22179591ab1d11a432f1d
The shelf no longer exists in 0 button mode, so it's not necessary
to wait for workspace to be invisible before allowing the pause.
Change-Id: I202ed9991b18f5e7cb2e4f0aa6be7a0d66b8ffd7
- Compute velocities as px/ms from VelocityTracker, instead of
computing px/s and dividing by 1000 in various places
- Use quickstep_fling_threshold_speed in TriggerSwipeUpTouchTracker
instead of ViewConfiguration#getScaledMinimumFlingVelocity
- Check MotionPauseDetector to determine whether a fling is
sufficient to escape after pause, in additon to above threshold
Bug: 159089437
Change-Id: Ib0fae7804e1f008f3b6ab37d6c463352c224b0e4
- Update MotionPauseListener to have 2 methods: the existing
onMotionPauseChanged(isPaused) and onMotionPauseDetected()
- onMotionPauseDetected is the default as most listeners only
care about the first detected pause
- AbsSwipeUpHandler still listens to pause changes, to help
determine the end target at the end of the gesture
Bug: 159089437
Change-Id: I6d14f106cdcbe4e07d8dddba1cee909a963615b1
Fixes issue with jittery displaying of suggestion chip, when entering overview.
Merging into master manually as automerger failed.
Tested:Manual
Change-Id: I8228c51b22d550cb8f0aa559f997060b571763f1