diff options
author | Harsh Shandilya <msfjarvis@gmail.com> | 2020-04-13 00:31:25 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-04-13 00:31:25 +0530 |
commit | 4f20c49abb500c6b74558119675314a6210c4221 (patch) | |
tree | 95b850b4a299e83bd21ab386b7069c892f9acb60 | |
parent | f21b6426af0182691d9df697768cdcf16a368652 (diff) |
Request WRITE_EXTERNAL_STORAGE for external password repository (#698)
* PasswordStore: request WRITE_EXTERNAL_STORAGE permission instead
We wish to be able to write to our password store directory as well.
Fixes #697
Fixes #365
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
* Reword changelog entry
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
-rw-r--r-- | CHANGELOG.md | 1 | ||||
-rw-r--r-- | app/src/main/java/com/zeapo/pwdstore/PasswordStore.kt | 10 |
2 files changed, 6 insertions, 5 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 14cfa052..2308cce8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ All notable changes to this project will be documented in this file. ### Fixed - Text input box theming +- Password repository held in non-hidden storage no longer fails ## [1.6.0] - 2020-03-20 diff --git a/app/src/main/java/com/zeapo/pwdstore/PasswordStore.kt b/app/src/main/java/com/zeapo/pwdstore/PasswordStore.kt index 9844d5a2..f1283538 100644 --- a/app/src/main/java/com/zeapo/pwdstore/PasswordStore.kt +++ b/app/src/main/java/com/zeapo/pwdstore/PasswordStore.kt @@ -107,7 +107,7 @@ class PasswordStore : AppCompatActivity() { var savedInstance = savedInstanceState if (savedInstanceState != null && (!settings.getBoolean("git_external", false) || ContextCompat.checkSelfPermission( - activity, Manifest.permission.READ_EXTERNAL_STORAGE) + activity, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED)) { savedInstance = null } @@ -129,9 +129,9 @@ class PasswordStore : AppCompatActivity() { super.onResume() // do not attempt to checkLocalRepository() if no storage permission: immediate crash if (settings.getBoolean("git_external", false)) { - if (ContextCompat.checkSelfPermission(activity, Manifest.permission.READ_EXTERNAL_STORAGE) + if (ContextCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { - if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.READ_EXTERNAL_STORAGE)) { + if (ActivityCompat.shouldShowRequestPermissionRationale(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE)) { val snack = Snackbar.make( findViewById(R.id.main_layout), getString(R.string.access_sdcard_text), @@ -139,7 +139,7 @@ class PasswordStore : AppCompatActivity() { .setAction(R.string.dialog_ok) { ActivityCompat.requestPermissions( activity, - arrayOf(Manifest.permission.READ_EXTERNAL_STORAGE), + arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE), REQUEST_EXTERNAL_STORAGE) } snack.show() @@ -151,7 +151,7 @@ class PasswordStore : AppCompatActivity() { // No explanation needed, we can request the permission. ActivityCompat.requestPermissions( activity, - arrayOf(Manifest.permission.READ_EXTERNAL_STORAGE), + arrayOf(Manifest.permission.WRITE_EXTERNAL_STORAGE), REQUEST_EXTERNAL_STORAGE) } } else { |