Merge "Fix pip or bubbles is under split divider" into sc-v2-dev am: dded85a1bd
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15527614 Change-Id: I9282ae77b7c4facb8a4eeb3c2d80874a3f43d158
This commit is contained in:
@@ -209,4 +209,41 @@ public interface WindowManagerPolicyConstants {
|
||||
return Integer.toString(why);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* How much to multiply the policy's type layer, to reserve room
|
||||
* for multiple windows of the same type and Z-ordering adjustment
|
||||
* with TYPE_LAYER_OFFSET.
|
||||
*/
|
||||
int TYPE_LAYER_MULTIPLIER = 10000;
|
||||
|
||||
/**
|
||||
* Offset from TYPE_LAYER_MULTIPLIER for moving a group of windows above
|
||||
* or below others in the same layer.
|
||||
*/
|
||||
int TYPE_LAYER_OFFSET = 1000;
|
||||
|
||||
/**
|
||||
* How much to increment the layer for each window, to reserve room
|
||||
* for effect surfaces between them.
|
||||
*/
|
||||
int WINDOW_LAYER_MULTIPLIER = 5;
|
||||
|
||||
/**
|
||||
* Animation thumbnail is as far as possible below the window above
|
||||
* the thumbnail (or in other words as far as possible above the window
|
||||
* below it).
|
||||
*/
|
||||
int LAYER_OFFSET_THUMBNAIL = WINDOW_LAYER_MULTIPLIER - 1;
|
||||
|
||||
int SPLIT_DIVIDER_LAYER = TYPE_LAYER_MULTIPLIER * 3;
|
||||
int WATERMARK_LAYER = TYPE_LAYER_MULTIPLIER * 100;
|
||||
int STRICT_MODE_LAYER = TYPE_LAYER_MULTIPLIER * 101;
|
||||
int WINDOW_FREEZE_LAYER = TYPE_LAYER_MULTIPLIER * 200;
|
||||
|
||||
/**
|
||||
* Layers for screen rotation animation. We put these layers above
|
||||
* WINDOW_FREEZE_LAYER so that screen freeze will cover all windows.
|
||||
*/
|
||||
int SCREEN_FREEZE_LAYER_BASE = WINDOW_FREEZE_LAYER + TYPE_LAYER_MULTIPLIER;
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@ package com.android.wm.shell.apppairs;
|
||||
import static android.app.ActivityTaskManager.INVALID_TASK_ID;
|
||||
import static android.app.WindowConfiguration.WINDOWING_MODE_MULTI_WINDOW;
|
||||
import static android.app.WindowConfiguration.WINDOWING_MODE_UNDEFINED;
|
||||
import static android.view.WindowManagerPolicyConstants.SPLIT_DIVIDER_LAYER;
|
||||
|
||||
import static com.android.wm.shell.common.split.SplitLayout.SPLIT_POSITION_BOTTOM_OR_RIGHT;
|
||||
import static com.android.wm.shell.common.split.SplitLayout.SPLIT_POSITION_TOP_OR_LEFT;
|
||||
@@ -181,7 +182,7 @@ class AppPair implements ShellTaskOrganizer.TaskListener, SplitLayout.SplitLayou
|
||||
|
||||
// TODO: Is there more we need to do here?
|
||||
mSyncQueue.runInSync(t -> {
|
||||
t.setLayer(dividerLeash, Integer.MAX_VALUE)
|
||||
t.setLayer(dividerLeash, SPLIT_DIVIDER_LAYER)
|
||||
.setPosition(mTaskLeash1, mTaskInfo1.positionInParent.x,
|
||||
mTaskInfo1.positionInParent.y)
|
||||
.setPosition(mTaskLeash2, mTaskInfo2.positionInParent.x,
|
||||
|
||||
@@ -23,6 +23,7 @@ import static android.view.WindowManager.DOCKED_INVALID;
|
||||
import static android.view.WindowManager.DOCKED_LEFT;
|
||||
import static android.view.WindowManager.DOCKED_RIGHT;
|
||||
import static android.view.WindowManager.DOCKED_TOP;
|
||||
import static android.view.WindowManagerPolicyConstants.SPLIT_DIVIDER_LAYER;
|
||||
|
||||
import static com.android.internal.policy.DividerSnapAlgorithm.SnapTarget.FLAG_DISMISS_END;
|
||||
import static com.android.internal.policy.DividerSnapAlgorithm.SnapTarget.FLAG_DISMISS_START;
|
||||
@@ -365,7 +366,7 @@ public final class SplitLayout {
|
||||
if (dividerLeash != null) {
|
||||
t.setPosition(dividerLeash, mDividerBounds.left, mDividerBounds.top);
|
||||
// Resets layer of divider bar to make sure it is always on top.
|
||||
t.setLayer(dividerLeash, Integer.MAX_VALUE);
|
||||
t.setLayer(dividerLeash, SPLIT_DIVIDER_LAYER);
|
||||
}
|
||||
t.setPosition(leash1, mBounds1.left, mBounds1.top)
|
||||
.setWindowCrop(leash1, mBounds1.width(), mBounds1.height());
|
||||
|
||||
@@ -25,6 +25,7 @@ import static android.view.WindowManager.TRANSIT_OPEN;
|
||||
import static android.view.WindowManager.TRANSIT_TO_BACK;
|
||||
import static android.view.WindowManager.TRANSIT_TO_FRONT;
|
||||
import static android.view.WindowManager.transitTypeToString;
|
||||
import static android.view.WindowManagerPolicyConstants.SPLIT_DIVIDER_LAYER;
|
||||
|
||||
import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__APP_DOES_NOT_SUPPORT_MULTIWINDOW;
|
||||
import static com.android.internal.util.FrameworkStatsLog.SPLITSCREEN_UICHANGED__EXIT_REASON__APP_FINISHED;
|
||||
@@ -88,7 +89,6 @@ import com.android.wm.shell.common.SyncTransactionQueue;
|
||||
import com.android.wm.shell.common.TransactionPool;
|
||||
import com.android.wm.shell.common.split.SplitLayout;
|
||||
import com.android.wm.shell.common.split.SplitLayout.SplitPosition;
|
||||
import com.android.wm.shell.common.split.SplitWindowManager;
|
||||
import com.android.wm.shell.protolog.ShellProtoLogGroup;
|
||||
import com.android.wm.shell.transition.Transitions;
|
||||
|
||||
@@ -696,7 +696,7 @@ class StageCoordinator implements SplitLayout.SplitLayoutHandler,
|
||||
|
||||
if (mDividerVisible) {
|
||||
t.show(dividerLeash)
|
||||
.setLayer(dividerLeash, Integer.MAX_VALUE)
|
||||
.setLayer(dividerLeash, SPLIT_DIVIDER_LAYER)
|
||||
.setPosition(dividerLeash,
|
||||
mSplitLayout.getDividerBounds().left,
|
||||
mSplitLayout.getDividerBounds().top);
|
||||
@@ -1133,7 +1133,7 @@ class StageCoordinator implements SplitLayout.SplitLayoutHandler,
|
||||
// Be default, make it visible. The remote animator can adjust alpha if it plans to animate.
|
||||
if (show) {
|
||||
t.setAlpha(leash, 1.f);
|
||||
t.setLayer(leash, Integer.MAX_VALUE);
|
||||
t.setLayer(leash, SPLIT_DIVIDER_LAYER);
|
||||
t.setPosition(leash, bounds.left, bounds.top);
|
||||
t.show(leash);
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@ package com.android.wm.shell.transition;
|
||||
import static android.hardware.HardwareBuffer.RGBA_8888;
|
||||
import static android.hardware.HardwareBuffer.USAGE_PROTECTED_CONTENT;
|
||||
import static android.util.RotationUtils.deltaRotation;
|
||||
import static android.view.WindowManagerPolicyConstants.SCREEN_FREEZE_LAYER_BASE;
|
||||
|
||||
import static com.android.wm.shell.transition.DefaultTransitionHandler.startSurfaceAnimation;
|
||||
import static com.android.wm.shell.transition.Transitions.TAG;
|
||||
@@ -81,19 +82,6 @@ import java.util.Arrays;
|
||||
* </ul>
|
||||
*/
|
||||
class ScreenRotationAnimation {
|
||||
|
||||
/** How much to multiply the policy's type layer, to reserve room
|
||||
* for multiple windows of the same type and Z-ordering adjustment
|
||||
* with TYPE_LAYER_OFFSET. */
|
||||
static final int TYPE_LAYER_MULTIPLIER = 10000;
|
||||
static final int WINDOW_FREEZE_LAYER = TYPE_LAYER_MULTIPLIER * 200;
|
||||
|
||||
/*
|
||||
* Layers for screen rotation animation. We put these layers above
|
||||
* WINDOW_FREEZE_LAYER so that screen freeze will cover all windows.
|
||||
*/
|
||||
private static final int SCREEN_FREEZE_LAYER_BASE = WINDOW_FREEZE_LAYER + TYPE_LAYER_MULTIPLIER;
|
||||
|
||||
static final int MAX_ANIMATION_DURATION = 10 * 1000;
|
||||
|
||||
private final Context mContext;
|
||||
|
||||
@@ -88,6 +88,7 @@ import android.view.SurfaceControl;
|
||||
import android.view.ViewConfiguration;
|
||||
import android.view.WindowInfo;
|
||||
import android.view.WindowManager;
|
||||
import android.view.WindowManagerPolicyConstants;
|
||||
import android.view.animation.DecelerateInterpolator;
|
||||
import android.view.animation.Interpolator;
|
||||
|
||||
@@ -1200,7 +1201,7 @@ final class AccessibilityController {
|
||||
final SurfaceControl.Transaction t = mService.mTransactionFactory.get();
|
||||
final int layer =
|
||||
mService.mPolicy.getWindowLayerFromTypeLw(TYPE_MAGNIFICATION_OVERLAY) *
|
||||
WindowManagerService.TYPE_LAYER_MULTIPLIER;
|
||||
WindowManagerPolicyConstants.TYPE_LAYER_MULTIPLIER;
|
||||
t.setLayer(mSurfaceControl, layer).setPosition(mSurfaceControl, 0, 0);
|
||||
InputMonitor.setTrustedOverlayInputInfo(mSurfaceControl, t,
|
||||
mDisplayContent.getDisplayId(), "Magnification Overlay");
|
||||
|
||||
@@ -30,6 +30,7 @@ import android.util.Slog;
|
||||
import android.view.InputApplicationHandle;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.WindowManager;
|
||||
import android.view.WindowManagerPolicyConstants;
|
||||
|
||||
import com.android.internal.util.function.pooled.PooledLambda;
|
||||
import com.android.server.input.InputManagerService;
|
||||
@@ -181,8 +182,8 @@ final class InputManagerCallback implements InputManagerService.WindowManagerCal
|
||||
@Override
|
||||
public int getPointerLayer() {
|
||||
return mService.mPolicy.getWindowLayerFromTypeLw(WindowManager.LayoutParams.TYPE_POINTER)
|
||||
* WindowManagerService.TYPE_LAYER_MULTIPLIER
|
||||
+ WindowManagerService.TYPE_LAYER_OFFSET;
|
||||
* WindowManagerPolicyConstants.TYPE_LAYER_MULTIPLIER
|
||||
+ WindowManagerPolicyConstants.TYPE_LAYER_OFFSET;
|
||||
}
|
||||
|
||||
/** Callback to get pointer display id. */
|
||||
|
||||
@@ -18,6 +18,7 @@ package com.android.server.wm;
|
||||
|
||||
import static android.os.Trace.TRACE_TAG_WINDOW_MANAGER;
|
||||
import static android.util.RotationUtils.deltaRotation;
|
||||
import static android.view.WindowManagerPolicyConstants.SCREEN_FREEZE_LAYER_BASE;
|
||||
|
||||
import static com.android.internal.protolog.ProtoLogGroup.WM_DEBUG_ORIENTATION;
|
||||
import static com.android.internal.protolog.ProtoLogGroup.WM_SHOW_SURFACE_ALLOC;
|
||||
@@ -30,8 +31,6 @@ import static com.android.server.wm.ScreenRotationAnimationProto.STARTED;
|
||||
import static com.android.server.wm.SurfaceAnimator.ANIMATION_TYPE_SCREEN_ROTATION;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
|
||||
import static com.android.server.wm.WindowManagerService.TYPE_LAYER_MULTIPLIER;
|
||||
import static com.android.server.wm.WindowStateAnimator.WINDOW_FREEZE_LAYER;
|
||||
|
||||
import android.animation.ArgbEvaluator;
|
||||
import android.content.Context;
|
||||
@@ -91,13 +90,6 @@ import java.io.PrintWriter;
|
||||
class ScreenRotationAnimation {
|
||||
private static final String TAG = TAG_WITH_CLASS_NAME ? "ScreenRotationAnimation" : TAG_WM;
|
||||
|
||||
/*
|
||||
* Layers for screen rotation animation. We put these layers above
|
||||
* WINDOW_FREEZE_LAYER so that screen freeze will cover all windows.
|
||||
*/
|
||||
private static final int SCREEN_FREEZE_LAYER_BASE = WINDOW_FREEZE_LAYER + TYPE_LAYER_MULTIPLIER;
|
||||
private static final int SCREEN_FREEZE_LAYER_ENTER = SCREEN_FREEZE_LAYER_BASE;
|
||||
|
||||
private final Context mContext;
|
||||
private final DisplayContent mDisplayContent;
|
||||
private final float[] mTmpFloats = new float[9];
|
||||
@@ -423,7 +415,7 @@ class ScreenRotationAnimation {
|
||||
finalWidth * 2, finalHeight * 2);
|
||||
Rect inner = new Rect(0, 0, finalWidth, finalHeight);
|
||||
mEnteringBlackFrame = new BlackFrame(mService.mTransactionFactory, t, outer, inner,
|
||||
SCREEN_FREEZE_LAYER_ENTER, mDisplayContent, false, mEnterBlackFrameLayer);
|
||||
SCREEN_FREEZE_LAYER_BASE, mDisplayContent, false, mEnterBlackFrameLayer);
|
||||
} catch (OutOfResourcesException e) {
|
||||
Slog.w(TAG, "Unable to allocate black surface", e);
|
||||
}
|
||||
|
||||
@@ -27,6 +27,7 @@ import android.graphics.Rect;
|
||||
import android.view.Surface;
|
||||
import android.view.Surface.OutOfResourcesException;
|
||||
import android.view.SurfaceControl;
|
||||
import android.view.WindowManagerPolicyConstants;
|
||||
|
||||
class StrictModeFlash {
|
||||
private static final String TAG = TAG_WITH_CLASS_NAME ? "StrictModeFlash" : TAG_WM;
|
||||
@@ -52,7 +53,7 @@ class StrictModeFlash {
|
||||
.build();
|
||||
|
||||
// one more than Watermark? arbitrary.
|
||||
t.setLayer(ctrl, WindowManagerService.TYPE_LAYER_MULTIPLIER * 101);
|
||||
t.setLayer(ctrl, WindowManagerPolicyConstants.STRICT_MODE_LAYER);
|
||||
t.setPosition(ctrl, 0, 0);
|
||||
t.show(ctrl);
|
||||
// Ensure we aren't considered as obscuring for Input purposes.
|
||||
|
||||
@@ -32,6 +32,7 @@ import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_BEHIND;
|
||||
import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_UNSET;
|
||||
import static android.content.pm.ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED;
|
||||
import static android.content.res.Configuration.ORIENTATION_LANDSCAPE;
|
||||
import static android.view.WindowManagerPolicyConstants.SPLIT_DIVIDER_LAYER;
|
||||
|
||||
import static com.android.internal.protolog.ProtoLogGroup.WM_DEBUG_ORIENTATION;
|
||||
import static com.android.server.wm.ActivityRecord.State.RESUMED;
|
||||
@@ -112,7 +113,6 @@ final class TaskDisplayArea extends DisplayArea<WindowContainer> {
|
||||
private final ArrayList<WindowContainer> mTmpNormalChildren = new ArrayList<>();
|
||||
private final ArrayList<WindowContainer> mTmpHomeChildren = new ArrayList<>();
|
||||
private final IntArray mTmpNeedsZBoostIndexes = new IntArray();
|
||||
private int mTmpLayerForSplitScreenDividerAnchor;
|
||||
private int mTmpLayerForAnimationLayer;
|
||||
|
||||
private ArrayList<Task> mTmpTasks = new ArrayList<>();
|
||||
@@ -855,26 +855,23 @@ final class TaskDisplayArea extends DisplayArea<WindowContainer> {
|
||||
layer = adjustRootTaskLayer(t, mTmpHomeChildren, layer, false /* normalRootTasks */);
|
||||
// The home animation layer is between the root home tasks and the normal root tasks.
|
||||
final int layerForHomeAnimationLayer = layer++;
|
||||
mTmpLayerForSplitScreenDividerAnchor = layer++;
|
||||
mTmpLayerForAnimationLayer = layer++;
|
||||
layer = adjustRootTaskLayer(t, mTmpNormalChildren, layer, true /* normalRootTasks */);
|
||||
|
||||
// The boosted animation layer is between the normal root tasks and the always on top
|
||||
// root tasks.
|
||||
final int layerForBoostedAnimationLayer = layer++;
|
||||
// Always on top tasks layer should higher than split divider layer so set it as start.
|
||||
layer = SPLIT_DIVIDER_LAYER + 1;
|
||||
adjustRootTaskLayer(t, mTmpAlwaysOnTopChildren, layer, false /* normalRootTasks */);
|
||||
|
||||
t.setLayer(mHomeAppAnimationLayer, layerForHomeAnimationLayer);
|
||||
t.setLayer(mAppAnimationLayer, mTmpLayerForAnimationLayer);
|
||||
t.setLayer(mSplitScreenDividerAnchor, mTmpLayerForSplitScreenDividerAnchor);
|
||||
t.setLayer(mSplitScreenDividerAnchor, SPLIT_DIVIDER_LAYER);
|
||||
t.setLayer(mBoostedAppAnimationLayer, layerForBoostedAnimationLayer);
|
||||
}
|
||||
|
||||
private int adjustNormalRootTaskLayer(WindowContainer child, int layer) {
|
||||
if (child.asTask() != null && child.inSplitScreenWindowingMode()) {
|
||||
// The split screen divider anchor is located above the split screen window.
|
||||
mTmpLayerForSplitScreenDividerAnchor = layer++;
|
||||
}
|
||||
if ((child.asTask() != null && child.asTask().isAnimatingByRecents())
|
||||
|| child.isAppTransitioning()) {
|
||||
// The animation layer is located above the highest animating root task and no
|
||||
|
||||
@@ -31,6 +31,7 @@ import android.util.TypedValue;
|
||||
import android.view.Surface;
|
||||
import android.view.Surface.OutOfResourcesException;
|
||||
import android.view.SurfaceControl;
|
||||
import android.view.WindowManagerPolicyConstants;
|
||||
|
||||
/**
|
||||
* Displays a watermark on top of the window manager's windows.
|
||||
@@ -117,7 +118,7 @@ class Watermark {
|
||||
.setFormat(PixelFormat.TRANSLUCENT)
|
||||
.setCallsite(TITLE)
|
||||
.build();
|
||||
t.setLayer(ctrl, WindowManagerService.TYPE_LAYER_MULTIPLIER * 100)
|
||||
t.setLayer(ctrl, WindowManagerPolicyConstants.WATERMARK_LAYER)
|
||||
.setPosition(ctrl, 0, 0)
|
||||
.show(ctrl);
|
||||
// Ensure we aren't considered as obscuring for Input purposes.
|
||||
|
||||
@@ -85,6 +85,7 @@ import static android.view.WindowManagerGlobal.ADD_OKAY;
|
||||
import static android.view.WindowManagerGlobal.RELAYOUT_RES_BLAST_SYNC;
|
||||
import static android.view.WindowManagerGlobal.RELAYOUT_RES_SURFACE_CHANGED;
|
||||
import static android.view.WindowManagerPolicyConstants.NAV_BAR_INVALID;
|
||||
import static android.view.WindowManagerPolicyConstants.TYPE_LAYER_MULTIPLIER;
|
||||
import static android.view.displayhash.DisplayHashResultCallback.DISPLAY_HASH_ERROR_MISSING_WINDOW;
|
||||
import static android.view.displayhash.DisplayHashResultCallback.DISPLAY_HASH_ERROR_NOT_VISIBLE_ON_SCREEN;
|
||||
import static android.window.WindowProviderService.isWindowProviderService;
|
||||
@@ -340,27 +341,6 @@ public class WindowManagerService extends IWindowManager.Stub
|
||||
|
||||
static final boolean PROFILE_ORIENTATION = false;
|
||||
|
||||
/** How much to multiply the policy's type layer, to reserve room
|
||||
* for multiple windows of the same type and Z-ordering adjustment
|
||||
* with TYPE_LAYER_OFFSET. */
|
||||
static final int TYPE_LAYER_MULTIPLIER = 10000;
|
||||
|
||||
/** Offset from TYPE_LAYER_MULTIPLIER for moving a group of windows above
|
||||
* or below others in the same layer. */
|
||||
static final int TYPE_LAYER_OFFSET = 1000;
|
||||
|
||||
/** How much to increment the layer for each window, to reserve room
|
||||
* for effect surfaces between them.
|
||||
*/
|
||||
static final int WINDOW_LAYER_MULTIPLIER = 5;
|
||||
|
||||
/**
|
||||
* Animation thumbnail is as far as possible below the window above
|
||||
* the thumbnail (or in other words as far as possible above the window
|
||||
* below it).
|
||||
*/
|
||||
static final int LAYER_OFFSET_THUMBNAIL = WINDOW_LAYER_MULTIPLIER - 1;
|
||||
|
||||
/** The maximum length we will accept for a loaded animation duration:
|
||||
* this is 10 seconds.
|
||||
*/
|
||||
|
||||
@@ -107,6 +107,8 @@ import static android.view.WindowManager.LayoutParams.isSystemAlertWindowType;
|
||||
import static android.view.WindowManagerGlobal.RELAYOUT_RES_DRAG_RESIZING_DOCKED;
|
||||
import static android.view.WindowManagerGlobal.RELAYOUT_RES_DRAG_RESIZING_FREEFORM;
|
||||
import static android.view.WindowManagerGlobal.RELAYOUT_RES_FIRST_TIME;
|
||||
import static android.view.WindowManagerPolicyConstants.TYPE_LAYER_MULTIPLIER;
|
||||
import static android.view.WindowManagerPolicyConstants.TYPE_LAYER_OFFSET;
|
||||
|
||||
import static com.android.internal.protolog.ProtoLogGroup.WM_DEBUG_ADD_REMOVE;
|
||||
import static com.android.internal.protolog.ProtoLogGroup.WM_DEBUG_APP_TRANSITIONS;
|
||||
@@ -153,8 +155,6 @@ import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
|
||||
import static com.android.server.wm.WindowManagerService.H.WINDOW_STATE_BLAST_SYNC_TIMEOUT;
|
||||
import static com.android.server.wm.WindowManagerService.MAX_ANIMATION_DURATION;
|
||||
import static com.android.server.wm.WindowManagerService.TYPE_LAYER_MULTIPLIER;
|
||||
import static com.android.server.wm.WindowManagerService.TYPE_LAYER_OFFSET;
|
||||
import static com.android.server.wm.WindowManagerService.UPDATE_FOCUS_NORMAL;
|
||||
import static com.android.server.wm.WindowManagerService.UPDATE_FOCUS_REMOVING_FOCUS;
|
||||
import static com.android.server.wm.WindowManagerService.UPDATE_FOCUS_WILL_PLACE_SURFACES;
|
||||
|
||||
@@ -41,7 +41,6 @@ import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_VISIBILITY;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.SHOW_LIGHT_TRANSACTIONS;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
|
||||
import static com.android.server.wm.WindowManagerService.TYPE_LAYER_MULTIPLIER;
|
||||
import static com.android.server.wm.WindowManagerService.logWithStack;
|
||||
import static com.android.server.wm.WindowStateAnimatorProto.DRAW_STATE;
|
||||
import static com.android.server.wm.WindowStateAnimatorProto.SURFACE;
|
||||
@@ -71,7 +70,6 @@ import java.io.PrintWriter;
|
||||
**/
|
||||
class WindowStateAnimator {
|
||||
static final String TAG = TAG_WITH_CLASS_NAME ? "WindowStateAnimator" : TAG_WM;
|
||||
static final int WINDOW_FREEZE_LAYER = TYPE_LAYER_MULTIPLIER * 200;
|
||||
static final int PRESERVED_SURFACE_LAYER = 1;
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user