Skip to content
Commit 652bf9fe authored by Ming-Shin Lu's avatar Ming-Shin Lu
Browse files

Fix the split divider position being shifted during animating

When swiping up the split-task to the overview with the recents
transition, the split divider will have 2 layers leash:

    Transition leash
        divider leash
	    divider surface

The issue happens when the transition leash created by transition,
TransitionUtil will init its position with the current divider
leash requested position, and set the divider leash position with
(0, 0). Even it's OK if there is no other divider position chaning
during the transition, but when split-screen with IME showing case,
swiping up to the overview will make the IME hidden and
onImePositionChaning will let divider leash modify its position to
take down position, which causes the divider position ends up being
double offseted from the transition and the divider leash.

Fix this double offset issue with
- initial divider transition leash with (0, 0)
- avoid setting divider leash position when creating the target.

See: http://recall/-/f4Af82nZWqQjebShRA9NM9/dOJACJwL8QrnDdUSuta17z

Fix: 286349215
Test: manual with issue steps:
  0) open 2 apps with entering to split-screen
  1) tap the navigation bar to trigger the recents transition, observe
     the divider position stays the same without being shifted.
  2) Show IME, verify the divider hidden and the task position adjusted
  3) Swipe up split-screen task with IME to the overview, expects IME
     hidden and the task positon adjusted back.
  4) Bring the split-screen task back to foreground.
  5) Obeserve the divider position if it stays in the right place.
Change-Id: I5762ccf96645aeb8b9fd07ae3ffa1044a56548c5
parent 75024846
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment