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

Commit 7c0ef3ea authored by Oleg Blinnikov's avatar Oleg Blinnikov
Browse files

Remove: enable_user_refresh_rate_for_external_display

It is time to remove the flag.

Bug: 409611167
Test: atest DisplayObserverTest
Flag: EXEMPT removing flag does not require flag
Change-Id: Idc893cc12d45d6327339bf5b04561f19ba27bb9f
parent b7169a7d
Loading
Loading
Loading
Loading
+0 −13
Original line number Diff line number Diff line
@@ -194,10 +194,6 @@ public class DisplayManagerFlags {
            Flags.FLAG_BLOCK_AUTOBRIGHTNESS_CHANGES_ON_STYLUS_USAGE,
            Flags::blockAutobrightnessChangesOnStylusUsage
    );
    private final FlagState mIsUserRefreshRateForExternalDisplayEnabled = new FlagState(
            Flags.FLAG_ENABLE_USER_REFRESH_RATE_FOR_EXTERNAL_DISPLAY,
            Flags::enableUserRefreshRateForExternalDisplay
    );

    private final FlagState mEnableApplyDisplayChangedDuringDisplayAdded = new FlagState(
            Flags.FLAG_ENABLE_APPLY_DISPLAY_CHANGED_DURING_DISPLAY_ADDED,
@@ -523,14 +519,6 @@ public class DisplayManagerFlags {
        return mBlockAutobrightnessChangesOnStylusUsage.isEnabled();
    }

    /**
     * @return {@code true} if need to use user refresh rate settings for
     * external displays.
     */
    public boolean isUserRefreshRateForExternalDisplayEnabled() {
        return mIsUserRefreshRateForExternalDisplayEnabled.isEnabled();
    }

    /**
     * @return {@code true} if hasArrSupport API is enabled.
     */
@@ -694,7 +682,6 @@ public class DisplayManagerFlags {
        pw.println(" " + mEnableBatteryStatsForAllDisplays);
        pw.println(" " + mEnableApplyDisplayChangedDuringDisplayAdded);
        pw.println(" " + mBlockAutobrightnessChangesOnStylusUsage);
        pw.println(" " + mIsUserRefreshRateForExternalDisplayEnabled);
        pw.println(" " + mHasArrSupport);
        pw.println(" " + mAutoBrightnessModeBedtimeWearFlagState);
        pw.println(" " + mGetSupportedRefreshRatesFlagState);
+0 −11
Original line number Diff line number Diff line
@@ -330,17 +330,6 @@ flag {
    is_fixed_read_only: true
}

flag {
    name: "enable_user_refresh_rate_for_external_display"
    namespace: "display_manager"
    description: "Apply refresh rate from user preferred display mode to external displays"
    bug: "370657357"
    is_fixed_read_only: true
    metadata {
      purpose: PURPOSE_BUGFIX
    }
}

flag {
    name: "enable_has_arr_support"
    namespace: "core_graphics"
+0 −1
Original line number Diff line number Diff line
@@ -1620,7 +1620,6 @@ public class DisplayModeDirector {
            }

            if (info.type == Display.TYPE_EXTERNAL
                    && mDisplayManagerFlags.isUserRefreshRateForExternalDisplayEnabled()
                    && !isRefreshRateSynchronizationEnabled()) {
                mVotesStorage.updateVote(info.displayId,
                        Vote.PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE,
+4 −47
Original line number Diff line number Diff line
@@ -185,56 +185,10 @@ public class DisplayObserverTest {
                .isEqualTo(null);
    }

    /** Vote for user preferred mode */
    @Test
    public void testExternalDisplay_voteUserPreferredMode() {
        when(mDisplayManagerFlags.isUserPreferredModeVoteEnabled()).thenReturn(true);
        when(mDisplayManagerFlags.isUserRefreshRateForExternalDisplayEnabled()).thenReturn(false);
        var preferredMode = mExternalDisplayModes[5];
        mExternalDisplayUserPreferredModeId = preferredMode.getModeId();
        var expectedVote = Vote.forSize(
                        preferredMode.getPhysicalWidth(),
                        preferredMode.getPhysicalHeight());
        init();
        assertThat(getVote(EXTERNAL_DISPLAY, PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE))
                .isEqualTo(null);
        mObserver.onDisplayAdded(EXTERNAL_DISPLAY);
        assertThat(getVote(DEFAULT_DISPLAY, PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE))
                .isEqualTo(null);
        assertThat(getVote(EXTERNAL_DISPLAY, PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE))
                .isEqualTo(expectedVote);

        mExternalDisplayUserPreferredModeId = INVALID_MODE_ID;
        mObserver.onDisplayChanged(EXTERNAL_DISPLAY);
        assertThat(getVote(DEFAULT_DISPLAY, PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE))
                .isEqualTo(null);
        assertThat(getVote(EXTERNAL_DISPLAY, PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE))
                .isEqualTo(null);

        preferredMode = mExternalDisplayModes[4];
        mExternalDisplayUserPreferredModeId = preferredMode.getModeId();
        expectedVote = Vote.forSize(
                        preferredMode.getPhysicalWidth(),
                        preferredMode.getPhysicalHeight());
        mObserver.onDisplayChanged(EXTERNAL_DISPLAY);
        assertThat(getVote(DEFAULT_DISPLAY, PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE))
                .isEqualTo(null);
        assertThat(getVote(EXTERNAL_DISPLAY, PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE))
                .isEqualTo(expectedVote);

        // Testing that the vote is removed.
        mObserver.onDisplayRemoved(EXTERNAL_DISPLAY);
        assertThat(getVote(DEFAULT_DISPLAY, PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE))
                .isEqualTo(null);
        assertThat(getVote(EXTERNAL_DISPLAY, PRIORITY_USER_SETTING_DISPLAY_PREFERRED_SIZE))
                .isEqualTo(null);
    }

    /** Vote for user preferred mode */
    @Test
    public void testDefaultDisplay_voteUserPreferredMode() {
        when(mDisplayManagerFlags.isUserPreferredModeVoteEnabled()).thenReturn(true);
        when(mDisplayManagerFlags.isUserRefreshRateForExternalDisplayEnabled()).thenReturn(true);
        var preferredMode = mInternalDisplayModes[5];
        mInternalDisplayUserPreferredModeId = preferredMode.getModeId();
        var expectedVote = Vote.forSize(
@@ -283,7 +237,6 @@ public class DisplayObserverTest {
    public void testExternalDisplay_voteUserPreferredMode_withRefreshRate() {
        when(mDisplayManagerFlags.isUserPreferredModeVoteEnabled()).thenReturn(true);
        when(mDisplayManagerFlags.isDisplaysRefreshRatesSynchronizationEnabled()).thenReturn(false);
        when(mDisplayManagerFlags.isUserRefreshRateForExternalDisplayEnabled()).thenReturn(true);
        var preferredMode = mExternalDisplayModes[5];
        mExternalDisplayUserPreferredModeId = preferredMode.getModeId();
        var expectedVote = Vote.forSizeAndPhysicalRefreshRatesRange(
@@ -335,6 +288,7 @@ public class DisplayObserverTest {
    /** External display: Do not apply limit to user preferred mode */
    @Test
    public void testExternalDisplay_doNotApplyLimitToUserPreferredMode() {
        when(mDisplayManagerFlags.isDisplaysRefreshRatesSynchronizationEnabled()).thenReturn(true);
        when(mDisplayManagerFlags.isUserPreferredModeVoteEnabled()).thenReturn(true);
        when(mDisplayManagerFlags.isExternalDisplayLimitModeEnabled()).thenReturn(true);
        when(mResources.getInteger(R.integer.config_externalDisplayPeakRefreshRate))
@@ -343,6 +297,9 @@ public class DisplayObserverTest {
                .thenReturn(MAX_WIDTH);
        when(mResources.getInteger(R.integer.config_externalDisplayPeakHeight))
                .thenReturn(MAX_HEIGHT);
        // synchronization must be enabled, to avoid refresh rate range vote.
        when(mResources.getBoolean(R.bool.config_refreshRateSynchronizationEnabled))
                .thenReturn(true);

        var preferredMode = mExternalDisplayModes[5];
        mExternalDisplayUserPreferredModeId = preferredMode.getModeId();