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

Commit 24ad15ec authored by Robert Carr's avatar Robert Carr
Browse files

resolve merge conflicts of 6540c239 to master

Change-Id: I9557b4f7aae5bb64d256da26a290b326f39c9104
parents 7bdc0c21 6540c239
Loading
Loading
Loading
Loading
+0 −27
Original line number Diff line number Diff line
@@ -225,8 +225,6 @@ class WindowStateAnimator {
    int mAttrType;

    static final long PENDING_TRANSACTION_FINISH_WAIT_TIME = 100;
    long mDeferTransactionUntilFrame = -1;
    long mDeferTransactionTime = -1;

    boolean mForceScaleUntilResize;

@@ -1889,35 +1887,10 @@ class WindowStateAnimator {
        if (!mWin.isChildWindow()) {
            return;
        }
        mDeferTransactionUntilFrame = frameNumber;
        mDeferTransactionTime = System.currentTimeMillis();
        mSurfaceController.deferTransactionUntil(
                mWin.getParentWindow().mWinAnimator.mSurfaceController.getHandle(), frameNumber);
    }

    // Defer the current transaction to the frame number of the last saved transaction.
    // We do this to avoid shooting through an unsynchronized transaction while something is
    // pending. This is generally fine, as either we will get in on the synchronization,
    // or SurfaceFlinger will see that the frame has already occured. The only
    // potential problem is in frame number resets so we reset things with a timeout
    // every so often to be careful.
    void deferToPendingTransaction() {
        if (mDeferTransactionUntilFrame < 0) {
            return;
        }
        final WindowState parentWindow = mWin.getParentWindow();
        long time = System.currentTimeMillis();
        if (time > mDeferTransactionTime + PENDING_TRANSACTION_FINISH_WAIT_TIME) {
            mDeferTransactionTime = -1;
            mDeferTransactionUntilFrame = -1;
        } else if (parentWindow != null &&
                parentWindow.mWinAnimator.hasSurface()) {
            mSurfaceController.deferTransactionUntil(
                    mWin.getParentWindow().mWinAnimator.mSurfaceController.getHandle(),
                    mDeferTransactionUntilFrame);
        }
    }

    /**
     * Sometimes we need to synchronize the first frame of animation with some external event.
     * To achieve this, we prolong the start of the animation and keep producing the first frame of
+0 −4
Original line number Diff line number Diff line
@@ -739,10 +739,6 @@ class WindowSurfacePlacer {

                // Moved from updateWindowsAndWallpaperLocked().
                if (w.mHasSurface) {
                    // If we have recently synchronized a previous transaction for this
                    // window ensure we don't push through an unsynchronized one now.
                    winAnimator.deferToPendingTransaction();

                    // Take care of the window being ready to display.
                    final boolean committed = winAnimator.commitFinishDrawingLocked();
                    if (isDefaultDisplay && committed) {