Browse Source

Fix a permission state in the dialog for Android 12

merge-requests/2174/head
Nicolas Pomepuy 1 year ago
committed by Duncan McNamara
parent
commit
a3c8b604b2
  1. 7
      application/vlc-android/src/org/videolan/vlc/gui/dialogs/PermissionListDialog.kt

7
application/vlc-android/src/org/videolan/vlc/gui/dialogs/PermissionListDialog.kt

@ -40,6 +40,7 @@ import com.google.android.material.bottomsheet.BottomSheetBehavior.STATE_EXPANDE
import kotlinx.coroutines.launch
import org.videolan.resources.AndroidDevices
import org.videolan.resources.SCHEME_PACKAGE
import org.videolan.resources.util.isExternalStorageManager
import org.videolan.tools.dp
import org.videolan.tools.setGone
import org.videolan.tools.setInvisible
@ -193,7 +194,7 @@ class PermissionListDialog : VLCBottomSheetDialogFragment() {
}
binding.manageAllPermsCheck.setOnClickListener {
if (Permissions.hasAnyFileFineAccess(requireActivity())) {
if (!Permissions.hasAllAccess(requireActivity()) && Permissions.hasAnyFileFineAccess(requireActivity())) {
(it as RadioButton).isChecked = false
binding.manageMediaPermsCheck.background = ContextCompat.getDrawable(requireActivity(), R.drawable.rounded_corners_permissions_warning)
showWarning()
@ -221,10 +222,10 @@ class PermissionListDialog : VLCBottomSheetDialogFragment() {
}
binding.manageMediaPermsCheck.setOnClickListener {
if (Permissions.hasAnyFileFineAccess(requireActivity())) {
if (!isExternalStorageManager() && Permissions.hasAnyFileFineAccess(requireActivity())) {
Permissions.showAppSettingsPage(requireActivity())
(it as RadioButton).isChecked = false
} else if (Permissions.canReadStorage(requireActivity())) {
} else if (!isExternalStorageManager() && Permissions.canReadStorage(requireActivity())) {
Permissions.showAppSettingsPage(requireActivity())
(it as RadioButton).isChecked = false
} else if (Permissions.hasAllAccess(requireActivity())) {

Loading…
Cancel
Save