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

Commit edda401a authored by Andy Yu's avatar Andy Yu Committed by Android (Google) Code Review
Browse files

Merge "Set Game Default Frame Rate to 60 when sysprop not set" into main

parents ef448d6c e69b0afd
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -152,7 +152,6 @@ public final class GameManagerService extends IGameManagerService.Stub {
    private static final String GAME_MODE_INTERVENTION_LIST_FILE_NAME =
            "game_mode_intervention.list";


    private final Context mContext;
    private final Object mLock = new Object();
    private final Object mDeviceConfigLock = new Object();
@@ -184,6 +183,7 @@ public final class GameManagerService extends IGameManagerService.Stub {
    @GuardedBy("mUidObserverLock")
    private final Set<Integer> mForegroundGameUids = new HashSet<>();
    private final GameManagerServiceSystemPropertiesWrapper mSysProps;
    private float mGameDefaultFrameRateValue;

    @VisibleForTesting
    static class Injector {
@@ -1559,6 +1559,10 @@ public final class GameManagerService extends IGameManagerService.Stub {
        mPowerManagerInternal.setPowerMode(Mode.GAME_LOADING, false);
        Slog.v(TAG, "Game power mode OFF (game manager service start/restart)");
        mPowerManagerInternal.setPowerMode(Mode.GAME, false);

        mGameDefaultFrameRateValue = (float) mSysProps.getInt(
                PROPERTY_RO_SURFACEFLINGER_GAME_DEFAULT_FRAME_RATE, 60);
        Slog.v(TAG, "Game Default Frame Rate : " + mGameDefaultFrameRateValue);
    }

    private void sendUserMessage(int userId, int what, String eventForLog, int delayMillis) {
@@ -2217,8 +2221,7 @@ public final class GameManagerService extends IGameManagerService.Stub {
        }
        if (gameDefaultFrameRate()) {
            gameDefaultFrameRate = isGameDefaultFrameRateEnabled
                    ? (float) mSysProps.getInt(
                            PROPERTY_RO_SURFACEFLINGER_GAME_DEFAULT_FRAME_RATE, 0) : 0.0f;
                    ? mGameDefaultFrameRateValue : 0.0f;
        }
        return gameDefaultFrameRate;
    }
+8 −6
Original line number Diff line number Diff line
@@ -2423,6 +2423,14 @@ public class GameManagerServiceTests {
                            }
                        }));

        when(mSysPropsMock.getInt(
                ArgumentMatchers.eq(PROPERTY_RO_SURFACEFLINGER_GAME_DEFAULT_FRAME_RATE),
                anyInt())).thenReturn(60);
        when(mSysPropsMock.getBoolean(
                ArgumentMatchers.eq(PROPERTY_PERSISTENT_GFX_GAME_DEFAULT_FRAME_RATE_ENABLED),
                ArgumentMatchers.eq(true))).thenReturn(true);
        gameManagerService.onBootCompleted();

        // Set up a game in the foreground.
        String[] packages = {mPackageName};
        when(mMockPackageManager.getPackagesForUid(DEFAULT_PACKAGE_UID)).thenReturn(packages);
@@ -2430,12 +2438,6 @@ public class GameManagerServiceTests {
                DEFAULT_PACKAGE_UID, ActivityManager.PROCESS_STATE_TOP, 0, 0);

        // Toggle game default frame rate on.
        when(mSysPropsMock.getInt(
                ArgumentMatchers.eq(PROPERTY_RO_SURFACEFLINGER_GAME_DEFAULT_FRAME_RATE),
                anyInt())).thenReturn(60);
        when(mSysPropsMock.getBoolean(
                ArgumentMatchers.eq(PROPERTY_PERSISTENT_GFX_GAME_DEFAULT_FRAME_RATE_ENABLED),
                ArgumentMatchers.eq(true))).thenReturn(true);
        gameManagerService.toggleGameDefaultFrameRate(true);

        // Verify that: