Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 26b45954 authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Merge cherrypicks of ['googleplex-android-review.googlesource.com/29448106'] into 24Q4-release.

Change-Id: I5170bd8a2e5d325befdb5a1cc109370def233c61
parents d2ff4ead 172b287d
Loading
Loading
Loading
Loading
+5 −7
Original line number Diff line number Diff line
@@ -2641,7 +2641,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
            return true;
        }
        // Only do transfer after transaction has done when starting window exist.
        if (mStartingData != null && mStartingData.mWaitForSyncTransactionCommitCount > 0) {
        if (mStartingData != null && mStartingData.mWaitForSyncTransactionCommit) {
            mStartingData.mRemoveAfterTransaction = AFTER_TRANSACTION_COPY_TO_CLIENT;
            return true;
        }
@@ -2804,11 +2804,9 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A

    @Override
    void waitForSyncTransactionCommit(ArraySet<WindowContainer> wcAwaitingCommit) {
        // Only add once per transition.
        final boolean added = wcAwaitingCommit.contains(this);
        super.waitForSyncTransactionCommit(wcAwaitingCommit);
        if (!added && mStartingData != null) {
            mStartingData.mWaitForSyncTransactionCommitCount++;
        if (mStartingData != null) {
            mStartingData.mWaitForSyncTransactionCommit = true;
        }
    }

@@ -2819,7 +2817,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
            return;
        }
        final StartingData lastData = mStartingData;
        lastData.mWaitForSyncTransactionCommitCount--;
        lastData.mWaitForSyncTransactionCommit = false;
        if (lastData.mRemoveAfterTransaction == AFTER_TRANSACTION_REMOVE_DIRECTLY) {
            removeStartingWindowAnimation(lastData.mPrepareRemoveAnimation);
        } else if (lastData.mRemoveAfterTransaction == AFTER_TRANSACTION_COPY_TO_CLIENT) {
@@ -2849,7 +2847,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
        final boolean animate;
        final boolean hasImeSurface;
        if (mStartingData != null) {
            if (mStartingData.mWaitForSyncTransactionCommitCount > 0
            if (mStartingData.mWaitForSyncTransactionCommit
                    || mSyncState != SYNC_STATE_NONE) {
                mStartingData.mRemoveAfterTransaction = AFTER_TRANSACTION_REMOVE_DIRECTLY;
                mStartingData.mPrepareRemoveAnimation = prepareAnimation;
+2 −2
Original line number Diff line number Diff line
@@ -69,7 +69,7 @@ public abstract class StartingData {
     * Note this isn't equal to transition playing, the period should be
     * Sync finishNow -> Start transaction apply.
     */
    int mWaitForSyncTransactionCommitCount;
    boolean mWaitForSyncTransactionCommit;

    /**
     * For Shell transition.
@@ -112,7 +112,7 @@ public abstract class StartingData {
    public String toString() {
        return getClass().getSimpleName() + "{"
                + Integer.toHexString(System.identityHashCode(this))
                + " mWaitForSyncTransactionCommitCount=" + mWaitForSyncTransactionCommitCount
                + " waitForSyncTransactionCommit=" + mWaitForSyncTransactionCommit
                + " removeAfterTransaction= " + mRemoveAfterTransaction
                + "}";
    }