aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/ui/src/main/java/com/wireguard/android/preference
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2020-09-16 16:08:15 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2020-09-16 18:01:06 +0200
commit746ab00794fc1d3e9fd053418b9aeb0ddb23df8d (patch)
tree90229757529c9e8c29e5d5bcca01db84c2554539 /ui/src/main/java/com/wireguard/android/preference
parentlibwg-go: use PeekLookAtSocketFd6(), not PeekLookAtSocketFd4() (diff)
downloadwireguard-android-746ab00794fc1d3e9fd053418b9aeb0ddb23df8d.tar.xz
wireguard-android-746ab00794fc1d3e9fd053418b9aeb0ddb23df8d.zip
ZipExporterPreference: don't ask for storage permissions on newer android
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'ui/src/main/java/com/wireguard/android/preference')
-rw-r--r--ui/src/main/java/com/wireguard/android/preference/ZipExporterPreference.kt13
1 files changed, 9 insertions, 4 deletions
diff --git a/ui/src/main/java/com/wireguard/android/preference/ZipExporterPreference.kt b/ui/src/main/java/com/wireguard/android/preference/ZipExporterPreference.kt
index d943c89f..623e272f 100644
--- a/ui/src/main/java/com/wireguard/android/preference/ZipExporterPreference.kt
+++ b/ui/src/main/java/com/wireguard/android/preference/ZipExporterPreference.kt
@@ -82,11 +82,16 @@ class ZipExporterPreference(context: Context, attrs: AttributeSet?) : Preference
when (it) {
// When we have successful authentication, or when there is no biometric hardware available.
is BiometricAuthenticator.Result.Success, is BiometricAuthenticator.Result.HardwareUnavailableOrDisabled -> {
- activity.ensurePermissions(arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE)) { _, grantResults ->
- if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
- isEnabled = false
- exportZip()
+ if (DownloadsFileSaver.needsWriteExternalStoragePermission) {
+ activity.ensurePermissions(arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE)) { _, grantResults ->
+ if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
+ isEnabled = false
+ exportZip()
+ }
}
+ } else {
+ isEnabled = false
+ exportZip()
}
}
is BiometricAuthenticator.Result.Failure -> {