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

Commit 7b237a48 authored by Jian-Syuan (Shane) Wong's avatar Jian-Syuan (Shane) Wong Committed by Android (Google) Code Review
Browse files

Merge "Update toolkit dVRR update frame rate logic" into main

parents 0c037c2b 17a8dbe2
Loading
Loading
Loading
Loading
+5 −9
Original line number Diff line number Diff line
@@ -4085,6 +4085,7 @@ public final class ViewRootImpl implements ViewParent,
        setPreferredFrameRate(mPreferredFrameRate);
        setPreferredFrameRateCategory(mPreferredFrameRateCategory);
        mPreferredFrameRateCategory = FRAME_RATE_CATEGORY_NO_PREFERENCE;
        mPreferredFrameRate = -1;
    }
    private void createSyncIfNeeded() {
@@ -12296,7 +12297,8 @@ public final class ViewRootImpl implements ViewParent,
        }
        try {
            if (mLastPreferredFrameRate != preferredFrameRate) {
            if (mLastPreferredFrameRate != preferredFrameRate
                    && preferredFrameRate >= 0) {
                if (Trace.isTagEnabled(Trace.TRACE_TAG_VIEW)) {
                    Trace.traceBegin(
                            Trace.TRACE_TAG_VIEW, "ViewRootImpl#setFrameRate "
@@ -12368,13 +12370,7 @@ public final class ViewRootImpl implements ViewParent,
            return;
        }
        if (mPreferredFrameRate == 0) {
            mPreferredFrameRate = frameRate;
        } else if (frameRate > 60 || mPreferredFrameRate > 60) {
        mPreferredFrameRate = Math.max(mPreferredFrameRate, frameRate);
        } else if (mPreferredFrameRate != frameRate) {
            mPreferredFrameRate = 60;
        }
        mHasInvalidation = true;
        mHandler.removeMessages(MSG_FRAME_RATE_SETTING);
@@ -12403,7 +12399,7 @@ public final class ViewRootImpl implements ViewParent,
     */
    @VisibleForTesting
    public float getPreferredFrameRate() {
        return mPreferredFrameRate;
        return mPreferredFrameRate >= 0 ? mPreferredFrameRate : mLastPreferredFrameRate;
    }
    /**
+2 −0
Original line number Diff line number Diff line
@@ -699,6 +699,8 @@ public class ViewRootImplTest {
            viewRootImpl.votePreferredFrameRate(24);
            assertEquals(viewRootImpl.getPreferredFrameRate(), 24, 0.1);
            viewRootImpl.votePreferredFrameRate(30);
            assertEquals(viewRootImpl.getPreferredFrameRate(), 30, 0.1);
            viewRootImpl.votePreferredFrameRate(60);
            assertEquals(viewRootImpl.getPreferredFrameRate(), 60, 0.1);
            viewRootImpl.votePreferredFrameRate(120);
            assertEquals(viewRootImpl.getPreferredFrameRate(), 120, 0.1);