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

Commit 6a1ecf7c authored by Chris Li's avatar Chris Li Committed by Automerger Merge Worker
Browse files

Merge "Check okToAnimate for TaskFragment change transition" into sc-v2-dev...

Merge "Check okToAnimate for TaskFragment change transition" into sc-v2-dev am: ec0c08c7 am: 07423d6c

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16259578

Change-Id: Ie82e4aeda753dc10c674a2645ef6c348c24e24f2
parents db301d1d 07423d6c
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -1376,9 +1376,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
    /** Whether we should prepare a transition for this {@link ActivityRecord} parent change. */
    private boolean shouldStartChangeTransition(
            @Nullable TaskFragment newParent, @Nullable TaskFragment oldParent) {
        if (mWmService.mDisableTransitionAnimation
                || mDisplayContent == null || newParent == null || oldParent == null
                || getSurfaceControl() == null || !isVisible() || !isVisibleRequested()) {
        if (newParent == null || oldParent == null || !canStartChangeTransition()) {
            return false;
        }

+5 −14
Original line number Diff line number Diff line
@@ -4667,12 +4667,9 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp
        mWmService.requestTraversal();
    }

    @Override
    boolean okToDisplay() {
        return okToDisplay(false);
    }

    boolean okToDisplay(boolean ignoreFrozen) {
        return okToDisplay(ignoreFrozen, false /* ignoreScreenOn */);
        return okToDisplay(false /* ignoreFrozen */, false /* ignoreScreenOn */);
    }

    boolean okToDisplay(boolean ignoreFrozen, boolean ignoreScreenOn) {
@@ -4684,18 +4681,12 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp
        return mDisplayInfo.state == Display.STATE_ON;
    }

    boolean okToAnimate() {
        return okToAnimate(false);
    }

    boolean okToAnimate(boolean ignoreFrozen) {
        return okToAnimate(ignoreFrozen, false /* ignoreScreenOn */);
    }

    @Override
    boolean okToAnimate(boolean ignoreFrozen, boolean ignoreScreenOn) {
        return okToDisplay(ignoreFrozen, ignoreScreenOn)
                && (mDisplayId != DEFAULT_DISPLAY
                || mWmService.mPolicy.okToAnimate(ignoreScreenOn));
                || mWmService.mPolicy.okToAnimate(ignoreScreenOn))
                && getDisplayPolicy().isScreenOnFully();
    }

    static final class TaskForResizePointSearchResult implements Predicate<Task> {
+1 −4
Original line number Diff line number Diff line
@@ -2152,10 +2152,7 @@ class Task extends TaskFragment {
    }

    private boolean shouldStartChangeTransition(int prevWinMode, int newWinMode) {
        if (mWmService.mDisableTransitionAnimation
                || !isVisible()
                || getSurfaceControl() == null
                || !isLeafTask()) {
        if (!isLeafTask() || !canStartChangeTransition()) {
            return false;
        }
        // Only do an animation into and out-of freeform mode for now. Other mode
+1 −7
Original line number Diff line number Diff line
@@ -2121,13 +2121,7 @@ class TaskFragment extends WindowContainer<WindowContainer> {

    /** Whether we should prepare a transition for this {@link TaskFragment} bounds change. */
    private boolean shouldStartChangeTransition(Rect startBounds) {
        if (mWmService.mDisableTransitionAnimation
                || mDisplayContent == null
                || mTaskFragmentOrganizer == null
                || getSurfaceControl() == null
                // The change transition will be covered by display.
                || mDisplayContent.inTransition()
                || !isVisible()) {
        if (mTaskFragmentOrganizer == null || !canStartChangeTransition()) {
            return false;
        }

+8 −6
Original line number Diff line number Diff line
@@ -2543,6 +2543,13 @@ class WindowContainer<E extends WindowContainer> extends ConfigurationContainer<
        mSurfaceFreezer.unfreeze(getPendingTransaction());
    }

    /** Whether we can start change transition with this window and current display status. */
    boolean canStartChangeTransition() {
        return !mWmService.mDisableTransitionAnimation && mDisplayContent != null
                && getSurfaceControl() != null && !mDisplayContent.inTransition()
                && isVisible() && isVisibleRequested() && okToAnimate();
    }

    /**
     * Initializes a change transition. See {@link SurfaceFreezer} for more information.
     *
@@ -2891,12 +2898,7 @@ class WindowContainer<E extends WindowContainer> extends ConfigurationContainer<
    }

    boolean okToAnimate() {
        return okToAnimate(false /* ignoreFrozen */);
    }

    boolean okToAnimate(boolean ignoreFrozen) {
        final DisplayContent dc = getDisplayContent();
        return dc != null && dc.okToAnimate(ignoreFrozen);
        return okToAnimate(false /* ignoreFrozen */, false /* ignoreScreenOn */);
    }

    boolean okToAnimate(boolean ignoreFrozen, boolean ignoreScreenOn) {
Loading