Inform users that GPG key selection is mandatory (#1355)

* Inform users that GPG key selection is mandatory

Fixes #1342

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* changelog: sync for 1.13.4 release

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>

* changelog: add GPG key selection improvements

Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
This commit is contained in:
Harsh Shandilya 2021-03-21 14:03:51 +05:30 committed by GitHub
parent 74122ccbfc
commit db4683e0d6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 20 additions and 3 deletions

View file

@ -18,12 +18,20 @@ All notable changes to this project will be documented in this file.
- Clipboard history now attempts to flush through 35 times rather than 20 to combat increased clipboard history item count in Samsung devices
- .gpg-id file generated by APS did not work with pass CLI
- All but the latest launcher shortcut would have an empty icon
- When prompted to select a GPG key during onboarding, the app would crash if the user did not make a selection in OpenKeychain
### Changed
- Accessibility autofill has been removed completely due to being buggy, insecure and lacking in features. Upgrade to Android 8 or preferably later to gain access to our advanced Autofill implementation.
- The settings UI has been completely re-done to dramatically improve discoverability and navigation for users
## [1.13.4] - 2021-03-20
### Fixed
- Fix support for ECDSA SSH keys and support AES-GCM
- Fix a couple issues with Autofill
## [1.13.3] - 2021-03-06
### Fixed
@ -434,7 +442,9 @@ All notable changes to this project will be documented in this file.
- Fix elements overlapping.
[Unreleased]: https://github.com/android-password-store/Android-Password-Store/compare/v1.13.3...HEAD
[Unreleased]: https://github.com/android-password-store/Android-Password-Store/compare/v1.13.4...HEAD
[1.13.4]: https://github.com/android-password-store/Android-Password-Store/compare/v1.13.3...v1.13.4
[1.13.3]: https://github.com/android-password-store/Android-Password-Store/compare/v1.13.2...v1.13.3

View file

@ -24,6 +24,7 @@ import com.github.michaelbull.result.onFailure
import com.github.michaelbull.result.onSuccess
import com.github.michaelbull.result.runCatching
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.google.android.material.snackbar.Snackbar
import com.google.zxing.integration.android.IntentIntegrator
import com.google.zxing.integration.android.IntentIntegrator.QR_CODE
import dev.msfjarvis.aps.R
@ -117,6 +118,8 @@ class PasswordCreationActivity : BasePgpActivity(), OpenPgpServiceConnection.OnB
.onSuccess { encrypt(encryptionIntent) }
}
}
} else {
snackbar(message = getString(R.string.gpg_key_select_mandatory), length = Snackbar.LENGTH_LONG)
}
}

View file

@ -13,6 +13,7 @@ import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.edit
import androidx.fragment.app.Fragment
import androidx.lifecycle.lifecycleScope
import com.google.android.material.snackbar.Snackbar
import dev.msfjarvis.aps.R
import dev.msfjarvis.aps.data.repo.PasswordRepository
import dev.msfjarvis.aps.databinding.FragmentKeySelectionBinding
@ -20,6 +21,7 @@ import dev.msfjarvis.aps.ui.crypto.GetKeyIdsActivity
import dev.msfjarvis.aps.util.extensions.commitChange
import dev.msfjarvis.aps.util.extensions.finish
import dev.msfjarvis.aps.util.extensions.sharedPrefs
import dev.msfjarvis.aps.util.extensions.snackbar
import dev.msfjarvis.aps.util.extensions.viewBinding
import dev.msfjarvis.aps.util.settings.PreferenceKeys
import java.io.File
@ -46,10 +48,11 @@ class KeySelectionFragment : Fragment(R.layout.fragment_key_selection) {
requireActivity().commitChange(getString(R.string.git_commit_gpg_id, getString(R.string.app_name)))
}
}
finish()
} else {
throw IllegalStateException("Failed to initialize repository state.")
requireActivity()
.snackbar(message = getString(R.string.gpg_key_select_mandatory), length = Snackbar.LENGTH_LONG)
}
finish()
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {

View file

@ -402,5 +402,6 @@
<string name="otp_import_manual_entry">Enter manually</string>
<string name="otp_import_manual_hint_secret">Secret</string>
<string name="otp_import_manual_hint_account">Account</string>
<string name="gpg_key_select_mandatory">Selecting a GPG key is necessary to proceed</string>
</resources>