Loading libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java +3 −3 Original line number Diff line number Diff line Loading @@ -1130,16 +1130,16 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange boolean adjusted = false; if (mYOffsetForIme != 0) { if (dividerLeash != null) { mTempRect.set(mDividerBounds); getRefDividerBounds(mTempRect); mTempRect.offset(0, mYOffsetForIme); t.setPosition(dividerLeash, mTempRect.left, mTempRect.top); } mTempRect.set(mBounds1); getRefBounds1(mTempRect); mTempRect.offset(0, mYOffsetForIme); t.setPosition(leash1, mTempRect.left, mTempRect.top); mTempRect.set(mBounds2); getRefBounds2(mTempRect); mTempRect.offset(0, mYOffsetForIme); t.setPosition(leash2, mTempRect.left, mTempRect.top); adjusted = true; Loading libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java +2 −1 Original line number Diff line number Diff line Loading @@ -317,7 +317,8 @@ public class PipTransition extends PipTransitionController { } @Override public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted) { public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishT) { if (transition != mExitTransition) { return; } Loading libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java +5 −13 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ class SplitScreenTransitions { @NonNull WindowContainerToken topRoot) { mFinishCallback = finishCallback; mAnimatingTransition = transition; mFinishTransaction = finishTransaction; if (mPendingRemoteHandler != null) { mPendingRemoteHandler.startAnimation(transition, info, startTransaction, finishTransaction, mRemoteFinishCB); Loading @@ -107,8 +108,6 @@ class SplitScreenTransitions { private void playInternalAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction t, @NonNull WindowContainerToken mainRoot, @NonNull WindowContainerToken sideRoot, @NonNull WindowContainerToken topRoot) { mFinishTransaction = mTransactionPool.acquire(); // Play some place-holder fade animations for (int i = info.getChanges().size() - 1; i >= 0; --i) { final TransitionInfo.Change change = info.getChanges().get(i); Loading Loading @@ -287,16 +286,14 @@ class SplitScreenTransitions { return true; } void onTransitionConsumed(@NonNull IBinder transition, boolean aborted) { void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishT) { if (isPendingEnter(transition)) { if (!aborted) { // An enter transition got merged, appends the rest operations to finish entering // split screen. // TODO (b/238856352): Passed-in the proper finish transition to merge instead. if (mFinishTransaction == null) { mFinishTransaction = mTransactionPool.acquire(); } mStageCoordinator.finishEnterSplitScreen(mFinishTransaction); mStageCoordinator.finishEnterSplitScreen(finishT); mPendingRemoteHandler = null; } mPendingEnter.mCallback.onTransitionConsumed(aborted); Loading Loading @@ -339,11 +336,6 @@ class SplitScreenTransitions { mAnimatingTransition = null; mOnFinish.run(); if (mFinishTransaction != null) { mFinishTransaction.apply(); mTransactionPool.release(mFinishTransaction); mFinishTransaction = null; } if (mFinishCallback != null) { mFinishCallback.onTransitionFinished(wct /* wct */, wctCB /* wctCB */); mFinishCallback = null; Loading libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java +4 −2 Original line number Diff line number Diff line Loading @@ -233,6 +233,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, if (op.getType() == HIERARCHY_OP_TYPE_REORDER && op.getToTop() && (mMainStage.containsContainer(container) || mSideStage.containsContainer(container))) { updateSurfaceBounds(mSplitLayout, finishT, false /* applyResizingOffset */); setDividerVisibility(true, finishT); return; } Loading Loading @@ -1742,8 +1743,9 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } @Override public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted) { mSplitTransitions.onTransitionConsumed(transition, aborted); public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishT) { mSplitTransitions.onTransitionConsumed(transition, aborted, finishT); } @Override Loading libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultMixedHandler.java +3 −2 Original line number Diff line number Diff line Loading @@ -274,7 +274,8 @@ public class DefaultMixedHandler implements Transitions.TransitionHandler { } @Override public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted) { public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishT) { MixedTransition mixed = null; for (int i = mActiveTransitions.size() - 1; i >= 0; --i) { if (mActiveTransitions.get(i).mTransition != transition) continue; Loading @@ -283,7 +284,7 @@ public class DefaultMixedHandler implements Transitions.TransitionHandler { } if (mixed == null) return; if (mixed.mType == MixedTransition.TYPE_ENTER_PIP_FROM_SPLIT) { mPipHandler.onTransitionConsumed(transition, aborted); mPipHandler.onTransitionConsumed(transition, aborted, finishT); } } } Loading
libs/WindowManager/Shell/src/com/android/wm/shell/common/split/SplitLayout.java +3 −3 Original line number Diff line number Diff line Loading @@ -1130,16 +1130,16 @@ public final class SplitLayout implements DisplayInsetsController.OnInsetsChange boolean adjusted = false; if (mYOffsetForIme != 0) { if (dividerLeash != null) { mTempRect.set(mDividerBounds); getRefDividerBounds(mTempRect); mTempRect.offset(0, mYOffsetForIme); t.setPosition(dividerLeash, mTempRect.left, mTempRect.top); } mTempRect.set(mBounds1); getRefBounds1(mTempRect); mTempRect.offset(0, mYOffsetForIme); t.setPosition(leash1, mTempRect.left, mTempRect.top); mTempRect.set(mBounds2); getRefBounds2(mTempRect); mTempRect.offset(0, mYOffsetForIme); t.setPosition(leash2, mTempRect.left, mTempRect.top); adjusted = true; Loading
libs/WindowManager/Shell/src/com/android/wm/shell/pip/PipTransition.java +2 −1 Original line number Diff line number Diff line Loading @@ -317,7 +317,8 @@ public class PipTransition extends PipTransitionController { } @Override public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted) { public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishT) { if (transition != mExitTransition) { return; } Loading
libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/SplitScreenTransitions.java +5 −13 Original line number Diff line number Diff line Loading @@ -94,6 +94,7 @@ class SplitScreenTransitions { @NonNull WindowContainerToken topRoot) { mFinishCallback = finishCallback; mAnimatingTransition = transition; mFinishTransaction = finishTransaction; if (mPendingRemoteHandler != null) { mPendingRemoteHandler.startAnimation(transition, info, startTransaction, finishTransaction, mRemoteFinishCB); Loading @@ -107,8 +108,6 @@ class SplitScreenTransitions { private void playInternalAnimation(@NonNull IBinder transition, @NonNull TransitionInfo info, @NonNull SurfaceControl.Transaction t, @NonNull WindowContainerToken mainRoot, @NonNull WindowContainerToken sideRoot, @NonNull WindowContainerToken topRoot) { mFinishTransaction = mTransactionPool.acquire(); // Play some place-holder fade animations for (int i = info.getChanges().size() - 1; i >= 0; --i) { final TransitionInfo.Change change = info.getChanges().get(i); Loading Loading @@ -287,16 +286,14 @@ class SplitScreenTransitions { return true; } void onTransitionConsumed(@NonNull IBinder transition, boolean aborted) { void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishT) { if (isPendingEnter(transition)) { if (!aborted) { // An enter transition got merged, appends the rest operations to finish entering // split screen. // TODO (b/238856352): Passed-in the proper finish transition to merge instead. if (mFinishTransaction == null) { mFinishTransaction = mTransactionPool.acquire(); } mStageCoordinator.finishEnterSplitScreen(mFinishTransaction); mStageCoordinator.finishEnterSplitScreen(finishT); mPendingRemoteHandler = null; } mPendingEnter.mCallback.onTransitionConsumed(aborted); Loading Loading @@ -339,11 +336,6 @@ class SplitScreenTransitions { mAnimatingTransition = null; mOnFinish.run(); if (mFinishTransaction != null) { mFinishTransaction.apply(); mTransactionPool.release(mFinishTransaction); mFinishTransaction = null; } if (mFinishCallback != null) { mFinishCallback.onTransitionFinished(wct /* wct */, wctCB /* wctCB */); mFinishCallback = null; Loading
libs/WindowManager/Shell/src/com/android/wm/shell/splitscreen/StageCoordinator.java +4 −2 Original line number Diff line number Diff line Loading @@ -233,6 +233,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, if (op.getType() == HIERARCHY_OP_TYPE_REORDER && op.getToTop() && (mMainStage.containsContainer(container) || mSideStage.containsContainer(container))) { updateSurfaceBounds(mSplitLayout, finishT, false /* applyResizingOffset */); setDividerVisibility(true, finishT); return; } Loading Loading @@ -1742,8 +1743,9 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler, } @Override public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted) { mSplitTransitions.onTransitionConsumed(transition, aborted); public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishT) { mSplitTransitions.onTransitionConsumed(transition, aborted, finishT); } @Override Loading
libs/WindowManager/Shell/src/com/android/wm/shell/transition/DefaultMixedHandler.java +3 −2 Original line number Diff line number Diff line Loading @@ -274,7 +274,8 @@ public class DefaultMixedHandler implements Transitions.TransitionHandler { } @Override public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted) { public void onTransitionConsumed(@NonNull IBinder transition, boolean aborted, @Nullable SurfaceControl.Transaction finishT) { MixedTransition mixed = null; for (int i = mActiveTransitions.size() - 1; i >= 0; --i) { if (mActiveTransitions.get(i).mTransition != transition) continue; Loading @@ -283,7 +284,7 @@ public class DefaultMixedHandler implements Transitions.TransitionHandler { } if (mixed == null) return; if (mixed.mType == MixedTransition.TYPE_ENTER_PIP_FROM_SPLIT) { mPipHandler.onTransitionConsumed(transition, aborted); mPipHandler.onTransitionConsumed(transition, aborted, finishT); } } }