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

Commit 39a49fa9 authored by Automerger Merge Worker's avatar Automerger Merge Worker
Browse files

Merge "Merge "Reduce jittering while dragging divider bar" into tm-dev am:...

Merge "Merge "Reduce jittering while dragging divider bar" into tm-dev am: 19885f1c am: 95c73637 am: f416c3f9" into tm-qpr-dev-plus-aosp am: 95dda19a

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



Change-Id: I85df3e96aecf63a7414b3f6aee777db5dc67a40d
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents e4125c0b 95dda19a
Loading
Loading
Loading
Loading
+15 −7
Original line number Diff line number Diff line
@@ -77,6 +77,7 @@ import android.os.IBinder;
import android.os.RemoteException;
import android.util.Log;
import android.util.Slog;
import android.view.Choreographer;
import android.view.IRemoteAnimationFinishedCallback;
import android.view.IRemoteAnimationRunner;
import android.view.RemoteAnimationAdapter;
@@ -1116,6 +1117,7 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,
                    mDividerFadeInAnimator.cancel();
                    return;
                }
                transaction.setFrameTimelineVsync(Choreographer.getInstance().getVsyncId());
                transaction.setAlpha(dividerLeash, (float) animation.getAnimatedValue());
                transaction.apply();
            });
@@ -1210,17 +1212,23 @@ public class StageCoordinator implements SplitLayout.SplitLayoutHandler,

    @Override
    public void onLayoutPositionChanging(SplitLayout layout) {
        mSyncQueue.runInSync(t -> updateSurfaceBounds(layout, t, false /* applyResizingOffset */));
        final SurfaceControl.Transaction t = mTransactionPool.acquire();
        t.setFrameTimelineVsync(Choreographer.getInstance().getVsyncId());
        updateSurfaceBounds(layout, t, false /* applyResizingOffset */);
        t.apply();
        mTransactionPool.release(t);
    }

    @Override
    public void onLayoutSizeChanging(SplitLayout layout) {
        mSyncQueue.runInSync(t -> {
        final SurfaceControl.Transaction t = mTransactionPool.acquire();
        t.setFrameTimelineVsync(Choreographer.getInstance().getVsyncId());
        setResizingSplits(true /* resizing */);
        updateSurfaceBounds(layout, t, true /* applyResizingOffset */);
        mMainStage.onResizing(getMainStageBounds(), t);
        mSideStage.onResizing(getSideStageBounds(), t);
        });
        t.apply();
        mTransactionPool.release(t);
    }

    @Override