diff options
| author | 2024-08-30 07:48:20 +0000 | |
|---|---|---|
| committer | 2024-09-01 06:58:14 +0000 | |
| commit | 11b470d4783f58d032241ea2a0784ab3ca0355ed (patch) | |
| tree | 82c4a155f5fc1c3fbc2e5c369105e97b35cc8d15 | |
| parent | 6995c93398db84261e3a976ee2460d91cd6dcc83 (diff) | |
Check if Shell Transition is enabled for auto
Bug: 362992157
Bug: 339562797
Flag: EXEMPT with config flag
Test: atest CtsWindowManagerJetpackTestCases
Change-Id: I24a8ea18181ce9d949008460a9df399252e5353c
| -rw-r--r-- | libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java index 5657647ff5c0..9e91845f1ca6 100644 --- a/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java +++ b/libs/WindowManager/Jetpack/src/androidx/window/extensions/embedding/SplitController.java @@ -58,18 +58,22 @@ import android.app.Activity; import android.app.ActivityClient; import android.app.ActivityOptions; import android.app.ActivityThread; +import android.app.AppGlobals; import android.app.Application; import android.app.Instrumentation; import android.app.servertransaction.ClientTransactionListenerController; import android.content.ComponentName; import android.content.Context; import android.content.Intent; +import android.content.pm.PackageManager; import android.content.res.Configuration; import android.graphics.Rect; import android.os.Bundle; import android.os.Handler; import android.os.IBinder; import android.os.Looper; +import android.os.RemoteException; +import android.os.SystemProperties; import android.util.ArrayMap; import android.util.ArraySet; import android.util.Log; @@ -116,7 +120,7 @@ import java.util.function.BiConsumer; public class SplitController implements JetpackTaskFragmentOrganizer.TaskFragmentCallback, ActivityEmbeddingComponent, DividerPresenter.DragEventCallback { static final String TAG = "SplitController"; - static final boolean ENABLE_SHELL_TRANSITIONS = true; + static final boolean ENABLE_SHELL_TRANSITIONS = getShellTransitEnabled(); // TODO(b/243518738): Move to WM Extensions if we have requirement of overlay without // association. It's not set in WM Extensions nor Wm Jetpack library currently. @@ -3308,4 +3312,17 @@ public class SplitController implements JetpackTaskFragmentOrganizer.TaskFragmen transactionRecord.apply(false /* shouldApplyIndependently */); } } + + // TODO(b/207070762): cleanup with legacy app transition + private static boolean getShellTransitEnabled() { + try { + if (AppGlobals.getPackageManager().hasSystemFeature( + PackageManager.FEATURE_AUTOMOTIVE, 0)) { + return SystemProperties.getBoolean("persist.wm.debug.shell_transit", true); + } + } catch (RemoteException re) { + Log.w(TAG, "Error getting system features"); + } + return true; + } } |