revert all refresh rate changes

This commit is contained in:
Chloe committed 2025-01-23 20:14:52 -07:00
1 parent 986e33ce03
commit 34e324c54d
3 files changed
+18 -17

No files matched your search

@@ -70,7 +70,7 @@ class GeometryDashActivity : AppCompatActivity(), Cocos2dxHelper.Cocos2dxHelperL
private var mHasWindowFocus = false
private var displayMode = DisplayMode.DEFAULT
private var mChosenDisplayRate: Float? = null
private var mForceRefreshRate = false
private var mLimitedRefreshRate: Int? = null
private var mAspectRatio = 0.0f
private var mScreenZoom = 1.0f
@@ -428,7 +428,7 @@ class GeometryDashActivity : AppCompatActivity(), Cocos2dxHelper.Cocos2dxHelperL
val renderer = Cocos2dxRenderer(glSurfaceView)
glSurfaceView.setCocos2dxRenderer(renderer)
renderer.setFrameRate = mChosenDisplayRate
renderer.setFrameRate = mForceRefreshRate
val frameRate = mLimitedRefreshRate
if (frameRate != null) {
@@ -457,15 +457,16 @@ class GeometryDashActivity : AppCompatActivity(), Cocos2dxHelper.Cocos2dxHelperL
val limitedRefreshRate = preferenceUtils.getInt(PreferenceUtils.Key.LIMIT_FRAME_RATE).takeIf { it != 0 }
mLimitedRefreshRate = limitedRefreshRate
val forceRefreshRate = preferenceUtils.getBoolean(PreferenceUtils.Key.FORCE_HRR)
if (forceRefreshRate && Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
mForceRefreshRate = preferenceUtils.getBoolean(PreferenceUtils.Key.FORCE_HRR)
if (mForceRefreshRate && Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
val chosenDisplay = display.supportedModes?.maxByOrNull { it.refreshRate }
if (chosenDisplay != null) {
var chosenRefreshRate = chosenDisplay.refreshRate
println("Forcing a refresh rate of $chosenRefreshRate (display ${chosenDisplay.modeId})")
println("setupUIState: Forcing a refresh rate of $chosenRefreshRate (display ${chosenDisplay.modeId})")
window.attributes.preferredRefreshRate = chosenRefreshRate
mChosenDisplayRate = chosenRefreshRate
} else {
println("setupUIState could not find a display to select refresh rate of...")
}
}
@@ -120,17 +120,18 @@ class Cocos2dxGLSurfaceView(context: Context) : GLSurfaceView(context) {
}
@RequiresApi(Build.VERSION_CODES.R)
fun updateRefreshRate(refreshRate: Float) {
var chosenRefreshRate = refreshRate
fun updateRefreshRate() {
val chosenDisplay = display.supportedModes?.maxByOrNull { it.refreshRate }
if (chosenDisplay != null && chosenDisplay.refreshRate > refreshRate) {
println("updateRefreshRate found a higher refresh rate (${chosenDisplay.modeId}: ${chosenDisplay.refreshRate} > $refreshRate)")
chosenRefreshRate = chosenDisplay.refreshRate
if (chosenDisplay == null) {
println("updateRefreshRate failed to find a display to maximize refresh rate...")
return
}
holder.surface.setFrameRate(chosenRefreshRate, Surface.FRAME_RATE_COMPATIBILITY_DEFAULT)
val chosenRefreshRate = chosenDisplay.refreshRate
println("updateRefreshRate: selecting refresh rate of ${chosenDisplay.refreshRate} (display ${chosenDisplay.modeId})")
holder.surface.setFrameRate(chosenRefreshRate, Surface.FRAME_RATE_COMPATIBILITY_DEFAULT)
if (isAttachedToWindow) {
(context as Activity).window.attributes.preferredRefreshRate = chosenRefreshRate
}
@@ -64,7 +64,7 @@ class Cocos2dxRenderer(private var handler: Cocos2dxGLSurfaceView) : GLSurfaceVi
private var screenWidth = 0
private var screenHeight = 0
var sendResizeEvents = false
var setFrameRate: Float? = null
var setFrameRate = false
private var mAnimationInterval: Long? = null
fun limitFrameRate(rate: Int) {
@@ -82,9 +82,8 @@ class Cocos2dxRenderer(private var handler: Cocos2dxGLSurfaceView) : GLSurfaceVi
}
override fun onSurfaceChanged(gl10: GL10?, width: Int, height: Int) {
val chosenRefreshRate = setFrameRate
if (chosenRefreshRate != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
handler.updateRefreshRate(chosenRefreshRate)
if (setFrameRate && Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
handler.updateRefreshRate()
}
println("renderer surfaceChanged: ${width}x${height}@${handler.display.refreshRate}fps")