Test: swipe up from an app in landscape, seascape, and portrait,
and verify the window tracks with the finger 1:1 until pullback
Bug: 149934536
Change-Id: Ia469877e7152c8135e0b9153f69c191ba86cbd14
(cherry picked from commit f0a1b2ccd8)
Also fixed another bug where the wrong layout
orientation was being applied when overview rotated
when launcher was in fixed portrait orientation.
Fixes: 160182914
Test: Tested w/ PIP, split screen,
w/o split screen w/ and w/o home rotation
Change-Id: Iccffb637ae5c22d07745f2108facd4de716dc8d3
Transfer functionality of choosing
task menu layout to PortraitPageHandler,
which is what it should have been to
begin with.
Fixes: 158484000
Change-Id: Iadda53e7e1f796c063a111823f7f6278f3fdbf58
Fixes: 154928106
Test: AppIcon and clear all button
shows up as expected in LTR and RTL
configuration.
Change-Id: Idcf367b8aff53002e63a03b64b96e3602127707e
This still shows up a bit strange with
notched phones because we are using
RecentsView padding to give ClearAll the
right amount of spacing. However, we're only
adding padding to the left and right and not
the top/bottom.
That's captured here: b/154436527
Fixes: 150389833
Test: Tested landscape/portrait/seascape
launcher, w/ RTL as well
Change-Id: I49defd58048e609a1f7a821abb97374bcbb94b9f
Fixes: 153371258
Test: Tap on icon in portrait,
landscape and seascape. Open menu
then rotate phone.
Change-Id: I38b018371561b502fe211a3c2ddea4ff7fde4274
1. Tanslating contents of RecentsView instead of recentsView itself. When
translating, we keep the current TaskView from moving. This allows
the remoteTarget to follow an individual taskView.
2. Removing translationY in recentsView and setting the pivot instead
3. Using TaskViewSimulator for swipe handler. This allows using similar
animation creation as Launcher window animation.
Change-Id: I0b7b16c367d9d8cd8dd0ed59061e46853e2f8c83
Launcher home screen rotation now works with fixed
transform. When using Quickstep while holding
the phone from an orientation different than
the orientation of the touch, the overview
shown will be that of the phone orientation,
not the touch orientation.
Easier to see this be quickswitching from
portrait to landscape app, turning phone, then
going to overview from the original region you
swiped.
Fixes: 150214193
Test: Created test apps and fixed them
to various rotations to test.
Change-Id: Ic6565cd0ed33c951f45ccb97278045c6070e438e
- ag/10936255 replaced getViewCenterPosition() with getChildStart(),
meaning getTranslationX() was no longer included.
- This change goes back to using getViewCenterPosition() and renames
it to getChildStartWithTranslation().
- Update typo with parameter in getCurveProperties being mInsets
instead of insets.
Bug: 153574162
Change-Id: I9b46daecf3ee6dbefe0270e70fdc5e6d9d0b0c00
Floating icon animation runs entirely in portrait
since that's what orienation launcher starts in.
Current app window target rects are in landscape to
be able animate to Overview correctly (which is not
in portrait since the leash from WM is in the same
orientation as that of foreground app).
Invert that rect as the animation from app window
to floating icon progresses.
Fixes: 148528795
Change-Id: Ie1149a1a8904afc80bd1986f8d67b6f2d88c49f2
WM is making changes which allows apps to maintain
their orientation independent of the orientation of
the foreground app. This allows recents to always start
in portrait even when the app currently running is in
landscape. This means we have to give the illusion of
a landscape oriented overview when user swipes up in
gesterual nav when launcher is started in portrait
configuration.
PagedOrientationHandler abstracts all coordinate specific
logic from Paged/RecentsView primarily, but also all
other dynamic calculations throughout launcher.
PagedViewOrientationState is the single point of exposure
to other classes that depend on those changes. The goal
is to also minimize holding state to allow for default
implementations of PagedOrientationHandler for all the
3p/Fallback classes. PagedViewOrientationState also
holds other data around rotation that isn't
specifically tied to view logic.
The fake landscape overview can be toggled with:
adb shell settings put global forced_rotation [0/1]
Fixes: 146176182
Change-Id: I65d8d4e9f92b93931cbe0053ccaf0cda8d2ffd6c