Merge "Add displayId for WMS override pending transition APIs."
This commit is contained in:
committed by
Android (Google) Code Review
commit
6f4e271922
@@ -32940,8 +32940,8 @@ HSPLandroid/view/IWindowManager;->isViewServerRunning()Z
|
||||
HSPLandroid/view/IWindowManager;->isWindowTraceEnabled()Z
|
||||
HSPLandroid/view/IWindowManager;->lockNow(Landroid/os/Bundle;)V
|
||||
HSPLandroid/view/IWindowManager;->openSession(Landroid/view/IWindowSessionCallback;Lcom/android/internal/view/IInputMethodClient;Lcom/android/internal/view/IInputContext;)Landroid/view/IWindowSession;
|
||||
HSPLandroid/view/IWindowManager;->overridePendingAppTransitionMultiThumbFuture(Landroid/view/IAppTransitionAnimationSpecsFuture;Landroid/os/IRemoteCallback;Z)V
|
||||
HSPLandroid/view/IWindowManager;->overridePendingAppTransitionRemote(Landroid/view/RemoteAnimationAdapter;)V
|
||||
HSPLandroid/view/IWindowManager;->overridePendingAppTransitionMultiThumbFuture(Landroid/view/IAppTransitionAnimationSpecsFuture;Landroid/os/IRemoteCallback;Z;I)V
|
||||
HSPLandroid/view/IWindowManager;->overridePendingAppTransitionRemote(Landroid/view/RemoteAnimationAdapter;I)V
|
||||
HSPLandroid/view/IWindowManager;->prepareAppTransition(IZ)V
|
||||
HSPLandroid/view/IWindowManager;->reenableKeyguard(Landroid/os/IBinder;)V
|
||||
HSPLandroid/view/IWindowManager;->refreshScreenCaptureDisabled(I)V
|
||||
|
||||
@@ -147,8 +147,8 @@ Landroid/view/IWindowManager;->createInputConsumer(Landroid/os/IBinder;Ljava/lan
|
||||
Landroid/view/IWindowManager;->destroyInputConsumer(Ljava/lang/String;I)Z
|
||||
Landroid/view/IWindowManager;->endProlongedAnimations()V
|
||||
Landroid/view/IWindowManager;->getStableInsets(ILandroid/graphics/Rect;)V
|
||||
Landroid/view/IWindowManager;->overridePendingAppTransitionMultiThumbFuture(Landroid/view/IAppTransitionAnimationSpecsFuture;Landroid/os/IRemoteCallback;Z)V
|
||||
Landroid/view/IWindowManager;->overridePendingAppTransitionRemote(Landroid/view/RemoteAnimationAdapter;)V
|
||||
Landroid/view/IWindowManager;->overridePendingAppTransitionMultiThumbFuture(Landroid/view/IAppTransitionAnimationSpecsFuture;Landroid/os/IRemoteCallback;ZI)V
|
||||
Landroid/view/IWindowManager;->overridePendingAppTransitionRemote(Landroid/view/RemoteAnimationAdapter;I)V
|
||||
Landroid/view/IWindowManager;->setNavBarVirtualKeyHapticFeedbackEnabled(Z)V
|
||||
Lcom/android/ims/ImsConfigListener;->onSetFeatureResponse(IIII)V
|
||||
Lcom/android/ims/internal/IImsCallSessionListener;->callSessionConferenceStateUpdated(Lcom/android/ims/internal/IImsCallSession;Landroid/telephony/ims/ImsConferenceState;)V
|
||||
|
||||
@@ -96,8 +96,9 @@ interface IWindowManager
|
||||
*/
|
||||
void overridePendingAppTransitionMultiThumbFuture(
|
||||
IAppTransitionAnimationSpecsFuture specsFuture, IRemoteCallback startedCallback,
|
||||
boolean scaleUp);
|
||||
void overridePendingAppTransitionRemote(in RemoteAnimationAdapter remoteAnimationAdapter);
|
||||
boolean scaleUp, int displayId);
|
||||
void overridePendingAppTransitionRemote(in RemoteAnimationAdapter remoteAnimationAdapter,
|
||||
int displayId);
|
||||
void executeAppTransition();
|
||||
|
||||
/**
|
||||
|
||||
@@ -631,7 +631,8 @@ public class RecentsView extends FrameLayout {
|
||||
}
|
||||
};
|
||||
WindowManagerWrapper.getInstance().overridePendingAppTransitionMultiThumbFuture(
|
||||
future, animStartedListener, getHandler(), true /* scaleUp */);
|
||||
future, animStartedListener, getHandler(), true /* scaleUp */,
|
||||
getContext().getDisplayId());
|
||||
MetricsLogger.action(mContext, MetricsEvent.ACTION_WINDOW_DOCK_DRAG_DROP,
|
||||
event.task.getTopComponent().flattenToShortString());
|
||||
} else {
|
||||
|
||||
@@ -100,23 +100,23 @@ public class WindowManagerWrapper {
|
||||
* Overrides a pending app transition.
|
||||
*/
|
||||
public void overridePendingAppTransitionMultiThumbFuture(
|
||||
AppTransitionAnimationSpecsFuture animationSpecFuture,
|
||||
Runnable animStartedCallback, Handler animStartedCallbackHandler, boolean scaleUp) {
|
||||
AppTransitionAnimationSpecsFuture animationSpecFuture, Runnable animStartedCallback,
|
||||
Handler animStartedCallbackHandler, boolean scaleUp, int displayId) {
|
||||
try {
|
||||
WindowManagerGlobal.getWindowManagerService()
|
||||
.overridePendingAppTransitionMultiThumbFuture(animationSpecFuture.getFuture(),
|
||||
RecentsTransition.wrapStartedListener(animStartedCallbackHandler,
|
||||
animStartedCallback), scaleUp);
|
||||
animStartedCallback), scaleUp, displayId);
|
||||
} catch (RemoteException e) {
|
||||
Log.w(TAG, "Failed to override pending app transition (multi-thumbnail future): ", e);
|
||||
}
|
||||
}
|
||||
|
||||
public void overridePendingAppTransitionRemote(
|
||||
RemoteAnimationAdapterCompat remoteAnimationAdapter) {
|
||||
RemoteAnimationAdapterCompat remoteAnimationAdapter, int displayId) {
|
||||
try {
|
||||
WindowManagerGlobal.getWindowManagerService().overridePendingAppTransitionRemote(
|
||||
remoteAnimationAdapter.getWrapped());
|
||||
remoteAnimationAdapter.getWrapped(), displayId);
|
||||
} catch (RemoteException e) {
|
||||
Log.w(TAG, "Failed to override pending app transition (remote): ", e);
|
||||
}
|
||||
|
||||
@@ -18849,7 +18849,7 @@ PLcom/android/server/wm/WindowManagerService;->onRectangleOnScreenRequested(Land
|
||||
PLcom/android/server/wm/WindowManagerService;->onSystemUiStarted()V
|
||||
PLcom/android/server/wm/WindowManagerService;->openSession(Landroid/view/IWindowSessionCallback;Lcom/android/internal/view/IInputMethodClient;Lcom/android/internal/view/IInputContext;)Landroid/view/IWindowSession;
|
||||
PLcom/android/server/wm/WindowManagerService;->overridePendingAppTransition(Ljava/lang/String;IILandroid/os/IRemoteCallback;)V
|
||||
PLcom/android/server/wm/WindowManagerService;->overridePendingAppTransitionRemote(Landroid/view/RemoteAnimationAdapter;)V
|
||||
PLcom/android/server/wm/WindowManagerService;->overridePendingAppTransitionRemote(Landroid/view/RemoteAnimationAdapter;I)V
|
||||
PLcom/android/server/wm/WindowManagerService;->performBootTimeout()V
|
||||
PLcom/android/server/wm/WindowManagerService;->performEnableScreen()V
|
||||
PLcom/android/server/wm/WindowManagerService;->postWindowRemoveCleanupLocked(Lcom/android/server/wm/WindowState;)V
|
||||
|
||||
@@ -41,8 +41,8 @@ import static com.android.server.wm.WindowManagerDebugConfig.TAG_WM;
|
||||
|
||||
import android.app.ActivityManager.TaskSnapshot;
|
||||
import android.app.ActivityOptions;
|
||||
import android.content.Intent;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Intent;
|
||||
import android.content.res.CompatibilityInfo;
|
||||
import android.content.res.Configuration;
|
||||
import android.graphics.GraphicBuffer;
|
||||
@@ -846,7 +846,6 @@ public class AppWindowContainerController
|
||||
final IAppTransitionAnimationSpecsFuture specsFuture =
|
||||
pendingOptions.getSpecsFuture();
|
||||
if (specsFuture != null) {
|
||||
// TODO(multidisplay): Shouldn't be really used anymore from next CL.
|
||||
displayContent.mAppTransition.overridePendingAppTransitionMultiThumbFuture(
|
||||
specsFuture, pendingOptions.getOnAnimationStartListener(),
|
||||
animationType == ANIM_THUMBNAIL_ASPECT_SCALE_UP);
|
||||
@@ -875,7 +874,6 @@ public class AppWindowContainerController
|
||||
.overridePendingAppTransitionStartCrossProfileApps();
|
||||
break;
|
||||
case ANIM_REMOTE_ANIMATION:
|
||||
// TODO(multidisplay): Will pass displayId and adjust dependencies from next CL.
|
||||
displayContent.mAppTransition.overridePendingAppTransitionRemote(
|
||||
pendingOptions.getRemoteAnimationAdapter());
|
||||
break;
|
||||
|
||||
@@ -16,8 +16,6 @@
|
||||
|
||||
package com.android.server.wm;
|
||||
|
||||
import static android.view.Display.DEFAULT_DISPLAY;
|
||||
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.DEBUG_WINDOW_TRACE;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.SHOW_TRANSACTIONS;
|
||||
import static com.android.server.wm.WindowManagerDebugConfig.TAG_WITH_CLASS_NAME;
|
||||
@@ -260,8 +258,7 @@ public class WindowAnimator {
|
||||
if (DEBUG_WINDOW_TRACE) {
|
||||
Slog.i(TAG, "!!! animate: exit mAnimating=" + mAnimating
|
||||
+ " mBulkUpdateParams=" + Integer.toHexString(mBulkUpdateParams)
|
||||
+ " mPendingLayoutChanges(DEFAULT_DISPLAY)="
|
||||
+ Integer.toHexString(getPendingLayoutChanges(DEFAULT_DISPLAY)));
|
||||
+ " hasPendingLayoutChanges=" + hasPendingLayoutChanges);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2475,26 +2475,36 @@ public class WindowManagerService extends IWindowManager.Stub
|
||||
@Override
|
||||
public void overridePendingAppTransitionMultiThumbFuture(
|
||||
IAppTransitionAnimationSpecsFuture specsFuture, IRemoteCallback callback,
|
||||
boolean scaleUp) {
|
||||
boolean scaleUp, int displayId) {
|
||||
synchronized (mGlobalLock) {
|
||||
// TODO(multi-display): sysui using this api only support default display.
|
||||
mRoot.getDisplayContent(DEFAULT_DISPLAY)
|
||||
.mAppTransition.overridePendingAppTransitionMultiThumbFuture(specsFuture,
|
||||
final DisplayContent displayContent = mRoot.getDisplayContent(displayId);
|
||||
if (displayContent == null) {
|
||||
Slog.w(TAG, "Attempted to call overridePendingAppTransitionMultiThumbFuture"
|
||||
+ " for the display " + displayId + " that does not exist.");
|
||||
return;
|
||||
}
|
||||
displayContent.mAppTransition.overridePendingAppTransitionMultiThumbFuture(specsFuture,
|
||||
callback, scaleUp);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void overridePendingAppTransitionRemote(RemoteAnimationAdapter remoteAnimationAdapter) {
|
||||
public void overridePendingAppTransitionRemote(RemoteAnimationAdapter remoteAnimationAdapter,
|
||||
int displayId) {
|
||||
if (!checkCallingPermission(CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS,
|
||||
"overridePendingAppTransitionRemote()")) {
|
||||
throw new SecurityException(
|
||||
"Requires CONTROL_REMOTE_APP_TRANSITION_ANIMATIONS permission");
|
||||
}
|
||||
synchronized (mGlobalLock) {
|
||||
// TODO(multi-display): sysui using this api only support default display.
|
||||
mRoot.getDisplayContent(DEFAULT_DISPLAY)
|
||||
.mAppTransition.overridePendingAppTransitionRemote(remoteAnimationAdapter);
|
||||
final DisplayContent displayContent = mRoot.getDisplayContent(displayId);
|
||||
if (displayContent == null) {
|
||||
Slog.w(TAG, "Attempted to call overridePendingAppTransitionRemote"
|
||||
+ " for the display " + displayId + " that does not exist.");
|
||||
return;
|
||||
}
|
||||
displayContent.mAppTransition.overridePendingAppTransitionRemote(
|
||||
remoteAnimationAdapter);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user