Merge "Do not freeze window in WM Core if Shell transition is enabled" into tm-qpr-dev am: 8129e9da51
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19033527 Change-Id: Ia7bde837c2d710707c1b98f52c54e5e1ce1851f4 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -43,6 +43,7 @@ import android.os.Bundle;
|
|||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
import android.os.Looper;
|
import android.os.Looper;
|
||||||
|
import android.os.SystemProperties;
|
||||||
import android.util.ArraySet;
|
import android.util.ArraySet;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.util.Pair;
|
import android.util.Pair;
|
||||||
@@ -70,6 +71,8 @@ import java.util.function.Consumer;
|
|||||||
public class SplitController implements JetpackTaskFragmentOrganizer.TaskFragmentCallback,
|
public class SplitController implements JetpackTaskFragmentOrganizer.TaskFragmentCallback,
|
||||||
ActivityEmbeddingComponent {
|
ActivityEmbeddingComponent {
|
||||||
static final String TAG = "SplitController";
|
static final String TAG = "SplitController";
|
||||||
|
static final boolean ENABLE_SHELL_TRANSITIONS =
|
||||||
|
SystemProperties.getBoolean("persist.wm.debug.shell_transit", false);
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
@GuardedBy("mLock")
|
@GuardedBy("mLock")
|
||||||
@@ -332,6 +335,11 @@ public class SplitController implements JetpackTaskFragmentOrganizer.TaskFragmen
|
|||||||
* bounds is large enough for at least one split rule.
|
* bounds is large enough for at least one split rule.
|
||||||
*/
|
*/
|
||||||
private void updateAnimationOverride(@NonNull TaskContainer taskContainer) {
|
private void updateAnimationOverride(@NonNull TaskContainer taskContainer) {
|
||||||
|
if (ENABLE_SHELL_TRANSITIONS) {
|
||||||
|
// TODO(b/207070762): cleanup with legacy app transition
|
||||||
|
// Animation will be handled by WM Shell with Shell transition enabled.
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (!taskContainer.isTaskBoundsInitialized()
|
if (!taskContainer.isTaskBoundsInitialized()
|
||||||
|| !taskContainer.isWindowingModeInitialized()) {
|
|| !taskContainer.isWindowingModeInitialized()) {
|
||||||
// We don't know about the Task bounds/windowingMode yet.
|
// We don't know about the Task bounds/windowingMode yet.
|
||||||
|
|||||||
@@ -2814,6 +2814,10 @@ class WindowContainer<E extends WindowContainer> extends ConfigurationContainer<
|
|||||||
* snapshot from {@link #getFreezeSnapshotTarget()}.
|
* snapshot from {@link #getFreezeSnapshotTarget()}.
|
||||||
*/
|
*/
|
||||||
void initializeChangeTransition(Rect startBounds, @Nullable SurfaceControl freezeTarget) {
|
void initializeChangeTransition(Rect startBounds, @Nullable SurfaceControl freezeTarget) {
|
||||||
|
if (mDisplayContent.mTransitionController.isShellTransitionsEnabled()) {
|
||||||
|
// TODO(b/207070762): request shell transition for activityEmbedding change.
|
||||||
|
return;
|
||||||
|
}
|
||||||
mDisplayContent.prepareAppTransition(TRANSIT_CHANGE);
|
mDisplayContent.prepareAppTransition(TRANSIT_CHANGE);
|
||||||
mDisplayContent.mChangingContainers.add(this);
|
mDisplayContent.mChangingContainers.add(this);
|
||||||
// Calculate the relative position in parent container.
|
// Calculate the relative position in parent container.
|
||||||
|
|||||||
Reference in New Issue
Block a user