Skip to content

Commit

Permalink
Remove renderer option if the device does not support GLES 3.2
Browse files Browse the repository at this point in the history
  • Loading branch information
rafaelvcaetano committed Jan 3, 2024
1 parent 63b8f37 commit cae2fcb
Showing 1 changed file with 20 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package me.magnum.melonds.ui.settings.fragments

import android.app.ActivityManager
import android.os.Bundle
import androidx.core.content.getSystemService
import androidx.preference.ListPreference
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
Expand All @@ -19,6 +21,10 @@ import javax.inject.Inject
@AndroidEntryPoint
class VideoPreferencesFragment : PreferenceFragmentCompat(), PreferenceFragmentTitleProvider {

private companion object {
const val GLES_3_2 = 0x30002
}

private val helper by lazy { PreferenceFragmentHelper(this, uriPermissionManager, directoryAccessValidator) }
@Inject lateinit var uriPermissionManager: UriPermissionManager
@Inject lateinit var directoryAccessValidator: DirectoryAccessValidator
Expand All @@ -42,10 +48,21 @@ class VideoPreferencesFragment : PreferenceFragmentCompat(), PreferenceFragmentT
val dsiCameraSourcePreference = findPreference<ListPreference>("dsi_camera_source")!!
val dsiCameraImagePreference = findPreference<StoragePickerPreference>("dsi_camera_static_image")!!

rendererPreference.setOnPreferenceChangeListener { _, newValue ->
onRendererPreferenceChanged(newValue as String)
true
val activityManager = requireContext().getSystemService<ActivityManager>()

rendererPreference.apply {
val deviceGlesVersion = activityManager?.deviceConfigurationInfo?.reqGlEsVersion ?: 0
if (deviceGlesVersion >= GLES_3_2) {
setOnPreferenceChangeListener { _, newValue ->
onRendererPreferenceChanged(newValue as String)
true
}
} else {
// GLES 3.2 is not supported. Remove the preference
isVisible = false
}
}

dsiCameraSourcePreference.setOnPreferenceChangeListener { _, newValue ->
updateDsiCameraImagePreference(dsiCameraImagePreference, newValue as String)
true
Expand Down

0 comments on commit cae2fcb

Please sign in to comment.