diff options
author | Harsh Shandilya <me@msfjarvis.dev> | 2022-01-10 00:31:03 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-09 19:01:03 +0000 |
commit | cfceb38ee72896dad3701dcf3f12d8480166e009 (patch) | |
tree | bf6fca975c92e2756d0a5cb6a527300193cbc7ea | |
parent | 35155e55841bc87b2c0e0dc577e1433041b44bc5 (diff) |
Fix a bunch of Lint warnings and errors (#1655)
* autofill-parser: add missing `@RequiresApi` annotations
* app: remove unused strings and sync with Crowdin
* app: remove unused chip_text_color selector
* app: remove unused capitalization_type_values array
* app: add `PendingIntent.FLAG_IMMUTABLE` flag where required
17 files changed, 24 insertions, 44 deletions
diff --git a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillDecryptActivity.kt b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillDecryptActivity.kt index 282864e1..3ea11982 100644 --- a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillDecryptActivity.kt +++ b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillDecryptActivity.kt @@ -79,7 +79,7 @@ class AutofillDecryptActivity : AppCompatActivity() { context, decryptFileRequestCode++, intent, - PendingIntent.FLAG_CANCEL_CURRENT + PendingIntent.FLAG_CANCEL_CURRENT or PendingIntent.FLAG_IMMUTABLE, ) .intentSender } diff --git a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillDecryptActivityV2.kt b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillDecryptActivityV2.kt index 697d628d..4401308a 100644 --- a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillDecryptActivityV2.kt +++ b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillDecryptActivityV2.kt @@ -67,7 +67,7 @@ class AutofillDecryptActivityV2 : AppCompatActivity() { context, decryptFileRequestCode++, intent, - PendingIntent.FLAG_CANCEL_CURRENT + PendingIntent.FLAG_CANCEL_CURRENT or PendingIntent.FLAG_IMMUTABLE, ) .intentSender } diff --git a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillFilterView.kt b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillFilterView.kt index 55f3fc11..7b3477cd 100644 --- a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillFilterView.kt +++ b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillFilterView.kt @@ -74,7 +74,7 @@ class AutofillFilterView : AppCompatActivity() { context, matchAndDecryptFileRequestCode++, intent, - PendingIntent.FLAG_CANCEL_CURRENT + PendingIntent.FLAG_CANCEL_CURRENT or PendingIntent.FLAG_IMMUTABLE, ) .intentSender } diff --git a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillPublisherChangedActivity.kt b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillPublisherChangedActivity.kt index e37ebf5e..00a39dc0 100644 --- a/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillPublisherChangedActivity.kt +++ b/app/src/main/java/dev/msfjarvis/aps/ui/autofill/AutofillPublisherChangedActivity.kt @@ -54,7 +54,7 @@ class AutofillPublisherChangedActivity : AppCompatActivity() { context, publisherChangedRequestCode++, intent, - PendingIntent.FLAG_CANCEL_CURRENT + PendingIntent.FLAG_CANCEL_CURRENT or PendingIntent.FLAG_IMMUTABLE, ) .intentSender } diff --git a/app/src/main/java/dev/msfjarvis/aps/util/autofill/AutofillViewUtils.kt b/app/src/main/java/dev/msfjarvis/aps/util/autofill/AutofillViewUtils.kt index 1d09d001..5a224f39 100644 --- a/app/src/main/java/dev/msfjarvis/aps/util/autofill/AutofillViewUtils.kt +++ b/app/src/main/java/dev/msfjarvis/aps/util/autofill/AutofillViewUtils.kt @@ -52,7 +52,12 @@ fun makeInlinePresentation( if (UiVersions.INLINE_UI_VERSION_1 !in UiVersions.getVersions(imeSpec.style)) return null val launchIntent = - PendingIntent.getActivity(context, 0, Intent(context, PasswordStore::class.java), 0) + PendingIntent.getActivity( + context, + 0, + Intent(context, PasswordStore::class.java), + PendingIntent.FLAG_IMMUTABLE + ) val slice = InlineSuggestionUi.newContentBuilder(launchIntent).run { setTitle(metadata.title) diff --git a/app/src/main/java/dev/msfjarvis/aps/util/services/ClipboardService.kt b/app/src/main/java/dev/msfjarvis/aps/util/services/ClipboardService.kt index 84de5c91..808089ab 100644 --- a/app/src/main/java/dev/msfjarvis/aps/util/services/ClipboardService.kt +++ b/app/src/main/java/dev/msfjarvis/aps/util/services/ClipboardService.kt @@ -115,7 +115,12 @@ class ClipboardService : Service() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { PendingIntent.getForegroundService(this, 0, clearIntent, PendingIntent.FLAG_UPDATE_CURRENT) } else { - PendingIntent.getService(this, 0, clearIntent, PendingIntent.FLAG_UPDATE_CURRENT) + PendingIntent.getService( + this, + 0, + clearIntent, + PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_IMMUTABLE + ) } val notification = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.M) { diff --git a/app/src/main/res/color/chip_text_color.xml b/app/src/main/res/color/chip_text_color.xml deleted file mode 100644 index 38d9a0ea..00000000 --- a/app/src/main/res/color/chip_text_color.xml +++ /dev/null @@ -1,9 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ Copyright © 2014-2021 The Android Password Store Authors. All Rights Reserved. - ~ SPDX-License-Identifier: GPL-3.0-only - --> - -<selector xmlns:android="http://schemas.android.com/apk/res/android"> - <item android:color="?attr/colorSurface" android:state_checked="true" /> - <item android:color="?attr/colorOnSecondary" /> -</selector> diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 3d3279ca..9c73d68a 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -227,7 +227,6 @@ <string name="sdcard_root_warning_remove_everything">Alles löschen</string> <string name="git_abort_and_push_title">Abbrechen und hochladen</string> <string name="biometric_prompt_title">Biometrische Abfrage</string> - <string name="biometric_auth_error">Authentifizierungsfehler</string> <string name="biometric_auth_error_reason">Authentifizierungsfehler: %s</string> <string name="pref_biometric_auth_title">Biometrische Authentifizierung aktivieren</string> <string name="pref_biometric_auth_summary">Wenn aktiviert, werden Sie beim Starten der App nach Ihrem Fingerabdruck gefragt</string> diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 86ad9793..732bfe94 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -231,7 +231,6 @@ <string name="sdcard_root_warning_remove_everything">Tout supprimer</string> <string name="git_abort_and_push_title">Abandonner et pousser</string> <string name="biometric_prompt_title">Identification biométrique</string> - <string name="biometric_auth_error">Échec de l\'authentification</string> <string name="biometric_auth_error_reason">Échec de l\'authentification : %s</string> <string name="pref_biometric_auth_title">Activer l\'authentification biométrique</string> <string name="pref_biometric_auth_summary">Lorsque cette option est activée, Password Store vous demandera votre empreinte digitale au lancement</string> @@ -318,7 +317,6 @@ <!-- GPG key selection in folder creation --> <string name="folder_creation_err_file_exists">Un fichier portant ce nom existe déjà</string> <string name="folder_creation_err_folder_exists">Un dossier portant ce nom existe déjà</string> - <string name="xkpwgen_extrachars_label">Chiffres(d)/Symboles(s)</string> <!-- Onboarding flow --> <string name="repository_n_location">Emplacement du dépôt \n</string> <string name="let_s_go">Allons-y</string> diff --git a/app/src/main/res/values-gl/strings.xml b/app/src/main/res/values-gl/strings.xml index 2c18beaf..832f083f 100644 --- a/app/src/main/res/values-gl/strings.xml +++ b/app/src/main/res/values-gl/strings.xml @@ -182,7 +182,7 @@ <string name="show_password_pref_summary">Controlar a visibilidade do contrasinal unha vez descifrado, esto non desactiva o copiado do contrasinal</string> <string name="pwd_generate_button">Crear</string> <string name="refresh_list">Actualizar lista</string> - <string name="send_plaintext_password_to">Enviar contrasinal como texto plano usando...</string> + <string name="send_plaintext_password_to">Enviar contrasinal como texto plano usando…</string> <string name="app_icon_hint">Icona da app</string> <!-- Oreo Autofill --> <string name="oreo_autofill_select_and_fill_into">Elixe o elemento a completar</string> @@ -233,7 +233,6 @@ a app desde unha fonte de confianza, como a Play Store, Amazon Appstore, F-Droid <string name="sdcard_root_warning_remove_everything">Eliminar todo</string> <string name="git_abort_and_push_title">Abortar e Push</string> <string name="biometric_prompt_title">Petición biométrica</string> - <string name="biometric_auth_error">Fallo de autenticación</string> <string name="biometric_auth_error_reason">Fallou a autenticación: %s</string> <string name="pref_biometric_auth_title">Activar autenticación biométrica</string> <string name="pref_biometric_auth_summary">Ao activala, Password Store vaiche pedir a túa pegada dactilar ao iniciar a app</string> @@ -304,7 +303,7 @@ a app desde unha fonte de confianza, como a Play Store, Amazon Appstore, F-Droid <string name="git_pull_rebase_fail_error">Fallou a acción pull, estás nun head diferente. Utiliza \"axustes > utilidades git\", garda os cambios no remoto nunha nova rama e resolve o conflicto nun ordenador.</string> <string name="git_pull_merge_fail_error">Fallou o merge, hai un conflito nos datos. TAREFA: engadir método de recuperación.</string> <string name="git_push_nff_error">O push foi rexeitado polo remoto, executa pull antes de voltar a subilos de novo. Podes usar Sincronizar mellor que push/pull xa que inclú ambos.</string> - <string name="git_push_generic_error">O push foi rexeitado polo remoto, razón:</string> + <string name="git_push_generic_error">O push foi rexeitado polo remoto, razón: %1$s</string> <string name="git_push_other_error">O remoto rexeitou o push non-fast-forward. Comproba a variable receive.denyNonFastForwards no ficheiro de configuración do repositorio de destino.</string> <string name="git_unknown_host">Host descoñecido: %1$s</string> <string name="git_operation_running">Realizando operación git…</string> @@ -320,8 +319,6 @@ a app desde unha fonte de confianza, como a Play Store, Amazon Appstore, F-Droid <!-- GPG key selection in folder creation --> <string name="folder_creation_err_file_exists">Xa existe un ficheiro con ese nome</string> <string name="folder_creation_err_folder_exists">Xa existe un cartafol con ese nome</string> - <string name="xkpwgen_extrachars_label">Díxitos/Símbolos (d/s)</string> - <string name="xk_numbers_symbols_append_default">ds</string> <!-- Onboarding flow --> <string name="repository_n_location">Repositorio \nLocalización</string> <string name="let_s_go">Imos alá</string> diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 512061e8..2ec66e24 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -226,7 +226,6 @@ <string name="sdcard_root_warning_message">Hai selezionato il root della tua sdcard per il negozio. Questo è estremamente pericoloso e perderai i tuoi dati poiché i suoi contenuti saranno, infine, eliminati</string> <string name="git_abort_and_push_title">Interrompi e Spingi</string> <string name="biometric_prompt_title">Richiesta Biometrica</string> - <string name="biometric_auth_error">Autenticazione non riuscita</string> <string name="biometric_auth_error_reason">Autenticazione non riuscita: %s</string> <string name="pref_biometric_auth_title">Abilita autenticazione biometrica</string> <string name="pref_biometric_auth_summary">Quando abilitata, il Password Store ti chiederà la tua impronta digitale al lancio dell\'app</string> @@ -312,8 +311,6 @@ <!-- GPG key selection in folder creation --> <string name="folder_creation_err_file_exists">Un file con quel nome esiste già</string> <string name="folder_creation_err_folder_exists">Una cartella con quel nome esiste già</string> - <string name="xkpwgen_extrachars_label">Cifre/Simboli (c/s)</string> - <string name="xk_numbers_symbols_append_default">cs</string> <!-- Onboarding flow --> <string name="repository_n_location">Repository \nLocation</string> <string name="let_s_go">Andiamo</string> diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index e1bf643b..e3fddf98 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -232,7 +232,6 @@ <string name="sdcard_root_warning_remove_everything">Remover tudo</string> <string name="git_abort_and_push_title">Abortar e executar Push</string> <string name="biometric_prompt_title">Confirmação Biométrica</string> - <string name="biometric_auth_error">Falha de autenticação</string> <string name="biometric_auth_error_reason">Falha de autenticação: %s</string> <string name="pref_biometric_auth_title">Ativar autenticação biométrica</string> <string name="pref_biometric_auth_summary">Quando ativado, o Password Store irá pedir a sua impressão digital ao iniciar o aplicativo</string> @@ -319,8 +318,6 @@ <!-- GPG key selection in folder creation --> <string name="folder_creation_err_file_exists">Já existe um arquivo com esse nome</string> <string name="folder_creation_err_folder_exists">Já existe uma pasta com esse nome</string> - <string name="xkpwgen_extrachars_label">Dígitos/Símbolos (d/s)</string> - <string name="xk_numbers_symbols_append_default">ds</string> <!-- Onboarding flow --> <string name="repository_n_location">Local \ndo repositório</string> <string name="let_s_go">Vamos lá</string> diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 847aa204..a12e92d9 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -188,11 +188,11 @@ <string name="oreo_autofill_match_with">Совпадает с %1$s</string> <string name="oreo_autofill_matches_clear_existing">Очистить существующие совпадения</string> <string name="oreo_autofill_filter_no_results">Не найдено.</string> - <string name="oreo_autofill_search_in_store">Искать в хранилище...</string> + <string name="oreo_autofill_search_in_store">Искать в хранилище</string> <string name="oreo_autofill_save_internal_error">Сохранение не удалось из-за внутренней ошибки</string> <string name="oreo_autofill_save_app_not_supported">Это приложение в настоящее время не поддерживается</string> <string name="oreo_autofill_save_passwords_dont_match">Пароли не совпадают</string> - <string name="oreo_autofill_generate_password">Сгенерировать пароль...</string> + <string name="oreo_autofill_generate_password">Сгенерировать пароль</string> <string name="oreo_autofill_fill_otp_from_sms">Извлечение кодов из SMS…</string> <string name="oreo_autofill_max_matches_reached">Достигнуто максимальное количество совпадений (%1$d); очистите совпадения перед тем как добавите новые.</string> <string name="oreo_autofill_warning_publisher_header">Издатель приложения изменился с тех пор как вы первый раз связали с ним запись хранилища паролей:</string> @@ -202,7 +202,7 @@ <string name="oreo_autofill_warning_publisher_changed_disable_autofill_button">Оставить автозаполнение отключенным</string> <string name="oreo_autofill_warning_publisher_reenable_button">Включить автозаполнение снова</string> <string name="oreo_autofill_warning_publisher_warning_sign_description">Предупреждение</string> - <string name="oreo_autofill_warning_publisher_dataset_summary">Нажмите для получения подробностей...</string> + <string name="oreo_autofill_warning_publisher_dataset_summary">Нажмите для получения подробностей</string> <string name="oreo_autofill_warning_publisher_dataset_title">Возможная попытка фишинга</string> <string name="oreo_autofill_general_fill_and_save_support">Заполнить и сохранить учетные данные</string> <string name="oreo_autofill_general_fill_support">Заполнить учетные данные</string> @@ -229,7 +229,6 @@ <string name="sdcard_root_warning_message">Вы выбрали корень вашей sd-карты для хранения. Это очень опасно и вы потеряете ваши данные, поскольку они будут в конечном итоге удалены</string> <string name="git_abort_and_push_title">Прервать и записать изменения</string> <string name="biometric_prompt_title">Запрос биометрии</string> - <string name="biometric_auth_error">Ошибка авторизации</string> <string name="biometric_auth_error_reason">Ошибка аутентификации: %s</string> <string name="pref_biometric_auth_title">Включить биометрическую аутентификацию</string> <string name="pref_biometric_auth_summary">Когда ключено, Password Store будет запрашивать ваш опечаток пальца при каждом запуске приложения</string> @@ -315,8 +314,6 @@ <!-- GPG key selection in folder creation --> <string name="folder_creation_err_file_exists">Файл с таким именем уже существует</string> <string name="folder_creation_err_folder_exists">Папка с таким именем уже существует</string> - <string name="xkpwgen_extrachars_label">Цыфры / Символы (d/s)</string> - <string name="xk_numbers_symbols_append_default">ds</string> <!-- Onboarding flow --> <string name="repository_n_location">Расположение \nрепозитория</string> <string name="let_s_go">Поехали</string> diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index 3c1568d6..495e880e 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -16,12 +16,6 @@ <item>INDEPENDENT</item> <item>RECENTLY_USED</item> </string-array> - <string-array name="capitalization_type_values"> - <item>lowercase</item> - <item>UPPERCASE</item> - <item>TitleCase</item> - <item>Sentence</item> - </string-array> <string-array name="pwgen_provider_labels"> <item>Classic</item> <item>Diceware</item> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 432ee6ea..7b476587 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -258,7 +258,6 @@ <string name="sdcard_root_warning_remove_everything">Remove everything</string> <string name="git_abort_and_push_title">Abort and Push</string> <string name="biometric_prompt_title">Biometric Prompt</string> - <string name="biometric_auth_error">Authentication failure</string> <string name="biometric_auth_error_reason">Authentication failure: %s</string> <string name="pref_biometric_auth_title">Enable biometric authentication</string> <string name="pref_biometric_auth_summary">When enabled, Password Store will prompt you for your fingerprint when launching the app</string> @@ -352,8 +351,6 @@ <!-- GPG key selection in folder creation --> <string name="folder_creation_err_file_exists">A file by that name already exists</string> <string name="folder_creation_err_folder_exists">A folder by that name already exists</string> - <string name="xkpwgen_extrachars_label">Digits/Symbols (d/s)</string> - <string name="xk_numbers_symbols_append_default">ds</string> <!-- Onboarding flow --> <string name="repository_n_location">Repository \nLocation</string> diff --git a/autofill-parser/src/main/java/com/github/androidpasswordstore/autofillparser/AutofillScenario.kt b/autofill-parser/src/main/java/com/github/androidpasswordstore/autofillparser/AutofillScenario.kt index fec33285..66ef6d0e 100644 --- a/autofill-parser/src/main/java/com/github/androidpasswordstore/autofillparser/AutofillScenario.kt +++ b/autofill-parser/src/main/java/com/github/androidpasswordstore/autofillparser/AutofillScenario.kt @@ -204,6 +204,7 @@ internal data class GenericAutofillScenario<T : Any>( get() = genericPassword } +@RequiresApi(Build.VERSION_CODES.O) internal fun AutofillScenario<FormField>.passesOriginCheck(singleOriginMode: Boolean): Boolean { return if (singleOriginMode) { // In single origin mode, only the browsers URL bar (which is never filled) should have @@ -235,6 +236,7 @@ public fun Dataset.Builder.fillWith( } } +@RequiresApi(Build.VERSION_CODES.O) internal inline fun <T : Any, S : Any> AutofillScenario<T>.map( transform: (T) -> S ): AutofillScenario<S> { diff --git a/autofill-parser/src/main/java/com/github/androidpasswordstore/autofillparser/AutofillStrategyDsl.kt b/autofill-parser/src/main/java/com/github/androidpasswordstore/autofillparser/AutofillStrategyDsl.kt index 6d2414d2..9348fab8 100644 --- a/autofill-parser/src/main/java/com/github/androidpasswordstore/autofillparser/AutofillStrategyDsl.kt +++ b/autofill-parser/src/main/java/com/github/androidpasswordstore/autofillparser/AutofillStrategyDsl.kt @@ -432,5 +432,6 @@ internal class AutofillStrategy private constructor(private val rules: List<Auto } } +@RequiresApi(Build.VERSION_CODES.O) internal fun strategy(block: AutofillStrategy.Builder.() -> Unit) = AutofillStrategy.Builder().apply(block).build() |