Merge "Fix some test-specific bubbles issues" into tm-qpr-dev
This commit is contained in:
@@ -126,19 +126,27 @@ class TransitionController {
|
|||||||
mTransitionTracer = transitionTracer;
|
mTransitionTracer = transitionTracer;
|
||||||
mTransitionPlayerDeath = () -> {
|
mTransitionPlayerDeath = () -> {
|
||||||
synchronized (mAtm.mGlobalLock) {
|
synchronized (mAtm.mGlobalLock) {
|
||||||
// Clean-up/finish any playing transitions.
|
detachPlayer();
|
||||||
for (int i = 0; i < mPlayingTransitions.size(); ++i) {
|
|
||||||
mPlayingTransitions.get(i).cleanUpOnFailure();
|
|
||||||
}
|
|
||||||
mPlayingTransitions.clear();
|
|
||||||
mTransitionPlayer = null;
|
|
||||||
mTransitionPlayerProc = null;
|
|
||||||
mRemotePlayer.clear();
|
|
||||||
mRunningLock.doNotifyLocked();
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void detachPlayer() {
|
||||||
|
if (mTransitionPlayer == null) return;
|
||||||
|
// Clean-up/finish any playing transitions.
|
||||||
|
for (int i = 0; i < mPlayingTransitions.size(); ++i) {
|
||||||
|
mPlayingTransitions.get(i).cleanUpOnFailure();
|
||||||
|
}
|
||||||
|
mPlayingTransitions.clear();
|
||||||
|
if (mCollectingTransition != null) {
|
||||||
|
mCollectingTransition.abort();
|
||||||
|
}
|
||||||
|
mTransitionPlayer = null;
|
||||||
|
mTransitionPlayerProc = null;
|
||||||
|
mRemotePlayer.clear();
|
||||||
|
mRunningLock.doNotifyLocked();
|
||||||
|
}
|
||||||
|
|
||||||
/** @see #createTransition(int, int) */
|
/** @see #createTransition(int, int) */
|
||||||
@NonNull
|
@NonNull
|
||||||
Transition createTransition(int type) {
|
Transition createTransition(int type) {
|
||||||
@@ -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);
|
||||||
|
|||||||
@@ -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: {
|
||||||
|
|||||||
Reference in New Issue
Block a user