Merge "Fix some test-specific bubbles issues" into tm-qpr-dev

This commit is contained in:
Evan Rosky
2022-10-13 16:51:49 +00:00
committed by Android (Google) Code Review
2 changed files with 23 additions and 12 deletions

View File

@@ -126,18 +126,26 @@ class TransitionController {
mTransitionTracer = transitionTracer; mTransitionTracer = transitionTracer;
mTransitionPlayerDeath = () -> { mTransitionPlayerDeath = () -> {
synchronized (mAtm.mGlobalLock) { synchronized (mAtm.mGlobalLock) {
detachPlayer();
}
};
}
private void detachPlayer() {
if (mTransitionPlayer == null) return;
// Clean-up/finish any playing transitions. // Clean-up/finish any playing transitions.
for (int i = 0; i < mPlayingTransitions.size(); ++i) { for (int i = 0; i < mPlayingTransitions.size(); ++i) {
mPlayingTransitions.get(i).cleanUpOnFailure(); mPlayingTransitions.get(i).cleanUpOnFailure();
} }
mPlayingTransitions.clear(); mPlayingTransitions.clear();
if (mCollectingTransition != null) {
mCollectingTransition.abort();
}
mTransitionPlayer = null; mTransitionPlayer = null;
mTransitionPlayerProc = null; mTransitionPlayerProc = null;
mRemotePlayer.clear(); mRemotePlayer.clear();
mRunningLock.doNotifyLocked(); mRunningLock.doNotifyLocked();
} }
};
}
/** @see #createTransition(int, int) */ /** @see #createTransition(int, int) */
@NonNull @NonNull
@@ -193,7 +201,7 @@ class TransitionController {
if (mTransitionPlayer.asBinder() != null) { if (mTransitionPlayer.asBinder() != null) {
mTransitionPlayer.asBinder().unlinkToDeath(mTransitionPlayerDeath, 0); mTransitionPlayer.asBinder().unlinkToDeath(mTransitionPlayerDeath, 0);
} }
mTransitionPlayer = null; detachPlayer();
} }
if (player.asBinder() != null) { if (player.asBinder() != null) {
player.asBinder().linkToDeath(mTransitionPlayerDeath, 0); player.asBinder().linkToDeath(mTransitionPlayerDeath, 0);

View File

@@ -1136,10 +1136,13 @@ class WindowOrganizerController extends IWindowOrganizerController.Stub
final LauncherAppsServiceInternal launcherApps = LocalServices.getService( final LauncherAppsServiceInternal launcherApps = LocalServices.getService(
LauncherAppsServiceInternal.class); LauncherAppsServiceInternal.class);
launcherApps.startShortcut(caller.mUid, caller.mPid, callingPackage, final boolean success = launcherApps.startShortcut(caller.mUid, caller.mPid,
hop.getShortcutInfo().getPackage(), null /* default featureId */, callingPackage, hop.getShortcutInfo().getPackage(), null /* featureId */,
hop.getShortcutInfo().getId(), null /* sourceBounds */, launchOpts, hop.getShortcutInfo().getId(), null /* sourceBounds */, launchOpts,
hop.getShortcutInfo().getUserId()); hop.getShortcutInfo().getUserId());
if (success) {
effects |= TRANSACT_EFFECTS_LIFECYCLE;
}
break; break;
} }
case HIERARCHY_OP_TYPE_REPARENT_CHILDREN: { case HIERARCHY_OP_TYPE_REPARENT_CHILDREN: {