summaryrefslogtreecommitdiff
path: root/app/src/main/res
diff options
context:
space:
mode:
authorFabian Henneke <FabianHenneke@users.noreply.github.com>2020-11-02 20:25:37 +0100
committerGitHub <noreply@github.com>2020-11-02 20:25:37 +0100
commit1d13a1fbd6580c0d28c90579ade96e0a93e17c92 (patch)
tree89cf7824cb7938bb107cca37124dc91354b19087 /app/src/main/res
parentcff8d41c91a73371f7eb65b08730fa548ce510a4 (diff)
Improve Autofill UI and enable inline presentations (#1181)
* Improve Autofill UI and enable inline presentations Improves the Autofill UI in the following ways: * Add support for Android 11 inline presentations of Autofill datasets. * Instead of showing the identifier (app name or web origin) of the current app on top of every Autofill dataset, it is now shown 1) as a header dataset on Android 9 and 10 as well as 2) at the top of the search activity on all supported versions of Android. Rationale: The identifier is only used in trust decisions when choosing an existing entry to fill and should feature prominently in that view, not elsewhere. * Show the actual identifier part of a matched entry's path, which may differ from the identifier of the matched app/website. * Slightly tweak the labels of Search/Generate Autofill actions to indicate that a) this is about entries and b) the user may skip the generation of a password and supply a custom one as well. * Suppress lint error * Address review comments * Add a fixme about properly handling fill-in datasets * CHANGELOG: add entry for inline presentation Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> * Remove unused parameter Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
Diffstat (limited to 'app/src/main/res')
-rw-r--r--app/src/main/res/layout/activity_oreo_autofill_filter.xml18
-rw-r--r--app/src/main/res/layout/oreo_autofill_dataset.xml7
-rw-r--r--app/src/main/res/values-de/strings.xml5
-rw-r--r--app/src/main/res/values-es/strings.xml2
-rw-r--r--app/src/main/res/values-fr/strings.xml6
-rw-r--r--app/src/main/res/values-pt-rBR/strings.xml6
-rw-r--r--app/src/main/res/values-ru/strings.xml6
-rw-r--r--app/src/main/res/values/strings.xml9
-rw-r--r--app/src/main/res/xml/oreo_autofill_service.xml1
9 files changed, 36 insertions, 24 deletions
diff --git a/app/src/main/res/layout/activity_oreo_autofill_filter.xml b/app/src/main/res/layout/activity_oreo_autofill_filter.xml
index a3718b43..8e671e30 100644
--- a/app/src/main/res/layout/activity_oreo_autofill_filter.xml
+++ b/app/src/main/res/layout/activity_oreo_autofill_filter.xml
@@ -14,16 +14,28 @@
<ImageView
android:id="@+id/cover"
android:layout_width="0dp"
- android:layout_height="80dp"
+ android:layout_height="60dp"
android:background="@color/primary_color"
android:contentDescription="@string/app_name"
android:src="@mipmap/ic_launcher_foreground"
- app:layout_constraintBottom_toTopOf="@id/searchLayout"
+ app:layout_constraintBottom_toTopOf="@id/origin"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0" />
+ <TextView
+ android:id="@+id/origin"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:singleLine="false"
+ android:textAlignment="center"
+ app:layout_constraintBottom_toTopOf="@id/searchLayout"
+ app:layout_constraintEnd_toEndOf="parent"
+ app:layout_constraintStart_toStartOf="parent"
+ app:layout_constraintTop_toBottomOf="@id/cover"
+ app:layout_constraintVertical_bias="0.0" />
+
<com.google.android.material.textfield.TextInputLayout
android:id="@+id/searchLayout"
android:layout_width="match_parent"
@@ -35,7 +47,7 @@
app:layout_constraintBottom_toTopOf="@id/rvPasswordSwitcher"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
- app:layout_constraintTop_toBottomOf="@id/cover">
+ app:layout_constraintTop_toBottomOf="@id/origin">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/search"
diff --git a/app/src/main/res/layout/oreo_autofill_dataset.xml b/app/src/main/res/layout/oreo_autofill_dataset.xml
index 2e9f48b9..e13d1688 100644
--- a/app/src/main/res/layout/oreo_autofill_dataset.xml
+++ b/app/src/main/res/layout/oreo_autofill_dataset.xml
@@ -6,9 +6,10 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
android:orientation="horizontal"
+ android:gravity="center_vertical"
android:paddingLeft="10dp"
android:paddingTop="5dp"
android:paddingRight="10dp"
@@ -20,6 +21,8 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginEnd="10dp"
+ android:layout_marginTop="5dp"
+ android:layout_marginBottom="5dp"
android:adjustViewBounds="true"
android:maxWidth="20dp"
android:maxHeight="20dp"
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index add23eda..82e75d68 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -157,12 +157,15 @@
<string name="send_plaintext_password_to">Passwort unverschlüsselt senden an…</string>
<string name="app_icon_hint">App Icon</string>
<!-- Oreo Autofill -->
+ <string name="oreo_autofill_select_and_fill_into">Eintrag auswählen für Autofill in</string>
<string name="oreo_autofill_strict_domain_search">Phishing-resistente Suche</string>
<string name="oreo_autofill_filter_no_results">Keine Ergebnisse.</string>
<string name="oreo_autofill_save_internal_error">Speichern aufgrund eines internen Fehlers fehlgeschlagen</string>
<string name="oreo_autofill_save_app_not_supported">Diese App wird derzeit nicht unterstützt</string>
<string name="oreo_autofill_save_passwords_dont_match">Die Passwörter stimmen nicht überein</string>
- <string name="oreo_autofill_generate_password">Passwort generieren…</string>
+ <string name="oreo_autofill_generate_password">Eintrag erstellen</string>
+ <string name="oreo_autofill_search_in_store">Eintrag suchen</string>
+ <string name="oreo_autofill_fill_otp_from_sms">Code aus SMS einfügen</string>
<string name="oreo_autofill_warning_publisher_footer"><b>Die derzeit installierte App versucht, Ihre Anmeldeinformationen zu stehlen, indem sie vorgibt, eine vertrauenswürdige App zu sein.</b>\n\nVersuchen Sie die App zu deinstallieren und installieren Sie sie erneut aus einer vertrauenswürdigen Quelle wie dem Play Store, Amazon Appstore, F-Droid oder dem Shop Ihres Telefonherstellers.</string>
<string name="oreo_autofill_warning_publisher_install_time">Installiert: %1$s</string>
<string name="oreo_autofill_warning_publisher_warning_sign_description">Warnung</string>
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index c64287b5..f19b6817 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -130,11 +130,9 @@
<!-- Oreo Autofill -->
<string name="oreo_autofill_match_with">Coincide con %1$s</string>
<string name="oreo_autofill_filter_no_results">Sin resultados.</string>
- <string name="oreo_autofill_search_in_store">Buscar en la tienda…</string>
<string name="oreo_autofill_save_internal_error">Error al guardar debido a un error interno</string>
<string name="oreo_autofill_save_app_not_supported">Esta aplicación no es compatible actualmente</string>
<string name="oreo_autofill_save_passwords_dont_match">Las contraseñas no coinciden</string>
- <string name="oreo_autofill_generate_password">Generar contraseña…</string>
<string name="oreo_autofill_warning_publisher_install_time">Instalada: %1$s</string>
<string name="oreo_autofill_warning_publisher_advanced_info_button">Información avanzada</string>
<string name="oreo_autofill_warning_publisher_changed_disable_autofill_button">Mantener el Autocompletado desactivado</string>
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 557591e8..10fa1130 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -185,17 +185,15 @@
<string name="oreo_autofill_match_with">Apparier avec %1$s</string>
<string name="oreo_autofill_matches_clear_existing">Effacer l’appairage actuel</string>
<string name="oreo_autofill_filter_no_results">Aucun résultat.</string>
- <string name="oreo_autofill_search_in_store">Rechercher dans le dépôt…</string>
<string name="oreo_autofill_save_internal_error">Échec de la sauvegarde : erreur interne</string>
<string name="oreo_autofill_save_app_not_supported">Cette application n\'est actuellement pas prise en charge</string>
<string name="oreo_autofill_save_passwords_dont_match">Les mots de passe ne coïncident pas</string>
- <string name="oreo_autofill_generate_password">Générer un mot de passe…</string>
- <string name="oreo_autofill_fill_otp_from_sms">Extraire le code depuis un SMS…</string>
+ <string name="oreo_autofill_fill_otp_from_sms">Extraire le code depuis un SMS</string>
<string name="oreo_autofill_warning_publisher_header">L\'éditeur de cette application a changé depuis que vous avez appairé un mot de passe avec celle-ci:</string>
<string name="oreo_autofill_warning_publisher_footer"><b>L\'application actuellement installée peut essayer de voler vos identifiants en faisant semblant d\'être une application de confiance.</b>\n\nEssayez de désinstaller et de réinstaller l\'application à partir d\'une source fiable, comme le Play Store, l\'AppStore d\'Amazon, le F-Droid ou la boutique du fabricant de votre téléphone.</string>
<string name="oreo_autofill_warning_publisher_install_time">Installé : %1$s</string>
<string name="oreo_autofill_warning_publisher_warning_sign_description">Avertissement</string>
- <string name="oreo_autofill_warning_publisher_dataset_summary">Appuyez pour en savoir plus…</string>
+ <string name="oreo_autofill_warning_publisher_dataset_summary">Appuyez pour en savoir plus</string>
<string name="oreo_autofill_warning_publisher_dataset_title">Tentative possible d\'hameçonnage</string>
<string name="oreo_autofill_general_fill_and_save_support">Remplir et enregistrer les identifiants</string>
<string name="oreo_autofill_general_fill_support">Remplir les identifiants</string>
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index cef14227..c45b2705 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -187,12 +187,10 @@
<string name="oreo_autofill_match_with">Combinar com %1$s</string>
<string name="oreo_autofill_matches_clear_existing">Limpar correspondências existentes</string>
<string name="oreo_autofill_filter_no_results">Sem resultados.</string>
- <string name="oreo_autofill_search_in_store">Pesquisar no armazenamento…</string>
<string name="oreo_autofill_save_internal_error">Falha ao salvar devido a um erro interno</string>
<string name="oreo_autofill_save_app_not_supported">Este app não é suportado no momento</string>
<string name="oreo_autofill_save_passwords_dont_match">As senhas não coincidem</string>
- <string name="oreo_autofill_generate_password">Gerar senha…</string>
- <string name="oreo_autofill_fill_otp_from_sms">Extrair código do SMS…</string>
+ <string name="oreo_autofill_fill_otp_from_sms">Extrair código do SMS</string>
<string name="oreo_autofill_max_matches_reached">Número máximo de correspondências (%1$d) atingidas; limpar correspondências antes de adicionar novas.</string>
<string name="oreo_autofill_warning_publisher_header">O editor deste aplicativo mudou desde a primeira vez que você associou uma entrada no Password Store:</string>
<string name="oreo_autofill_warning_publisher_footer"><b>O aplicativo atualmente instalado pode estar tentando roubar suas credenciais fingindo ser um aplicativo confiável.</b>\n\nTente desinstalar e reinstalar o aplicativo de uma fonte confiável, como a Play Store, Amazon Appstore, F-Droid ou a loja do fabricante do seu telefone.</string>
@@ -201,7 +199,7 @@
<string name="oreo_autofill_warning_publisher_changed_disable_autofill_button">Manter o preenchimento automático desativado</string>
<string name="oreo_autofill_warning_publisher_reenable_button">Reativar preenchimento automático</string>
<string name="oreo_autofill_warning_publisher_warning_sign_description">Alerta</string>
- <string name="oreo_autofill_warning_publisher_dataset_summary">Toque para detalhes…</string>
+ <string name="oreo_autofill_warning_publisher_dataset_summary">Toque para detalhes</string>
<string name="oreo_autofill_warning_publisher_dataset_title">Possível tentativa de phishing</string>
<string name="oreo_autofill_general_fill_and_save_support">Preencher e salvar credenciais</string>
<string name="oreo_autofill_general_fill_support">Preencher as credenciais</string>
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index f9340b41..baa49c74 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -191,12 +191,10 @@
<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_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_fill_otp_from_sms">Извлечение кодов из SMS…</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>
<string name="oreo_autofill_warning_publisher_footer"><b>Установленное приложение может попытаться украсть ваши учетные данные, выдавая себя за доверенное приложение</b>\n\nПопробуйте удалить или переустановить  приложение из доверенного источника, такого как Play Store, Amazon Appstore, F-Droid или магазин приложений производителя вашего смартфона.</string>
@@ -205,7 +203,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>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index ea222409..9c87c1da 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -231,16 +231,17 @@
<string name="app_icon_hint">App icon</string>
<!-- Oreo Autofill -->
+ <string name="oreo_autofill_select_and_fill_into">Select entry to fill into</string>
<string name="oreo_autofill_strict_domain_search">Phishing-resistant search</string>
<string name="oreo_autofill_match_with">Match with %1$s</string>
<string name="oreo_autofill_matches_clear_existing">Clear existing matches</string>
<string name="oreo_autofill_filter_no_results">No results.</string>
- <string name="oreo_autofill_search_in_store">Search in store…</string>
+ <string name="oreo_autofill_search_in_store">Search entry</string>
<string name="oreo_autofill_save_internal_error">Save failed due to an internal error</string>
<string name="oreo_autofill_save_app_not_supported">This app is currently not supported</string>
<string name="oreo_autofill_save_passwords_dont_match">Passwords don\'t match</string>
- <string name="oreo_autofill_generate_password">Generate password…</string>
- <string name="oreo_autofill_fill_otp_from_sms">Extract code from SMS…</string>
+ <string name="oreo_autofill_generate_password">Create entry</string>
+ <string name="oreo_autofill_fill_otp_from_sms">Extract code from SMS</string>
<string name="oreo_autofill_max_matches_reached">Maximum number of matches (%1$d) reached; clear matches before adding new ones.</string>
<string name="oreo_autofill_warning_publisher_header">This app\'s publisher has changed since you first associated a Password Store entry with it:</string>
<string name="oreo_autofill_warning_publisher_footer"><b>The currently installed app may be trying to steal your credentials by pretending to be a trusted app.</b>\n\nTry to uninstall and reinstall the app from a trusted source, such as the Play Store, Amazon Appstore, F-Droid, or your phone manufacturer\'s store.</string>
@@ -250,7 +251,7 @@
<string name="oreo_autofill_warning_publisher_changed_disable_autofill_button">Keep Autofill disabled</string>
<string name="oreo_autofill_warning_publisher_reenable_button">Re-enable Autofill</string>
<string name="oreo_autofill_warning_publisher_warning_sign_description">Warning</string>
- <string name="oreo_autofill_warning_publisher_dataset_summary">Tap for details…</string>
+ <string name="oreo_autofill_warning_publisher_dataset_summary">Tap for details</string>
<string name="oreo_autofill_warning_publisher_dataset_title">Possible phishing attempt</string>
<string name="oreo_autofill_general_fill_and_save_support">Fill and save credentials</string>
<string name="oreo_autofill_general_fill_support">Fill credentials</string>
diff --git a/app/src/main/res/xml/oreo_autofill_service.xml b/app/src/main/res/xml/oreo_autofill_service.xml
index 00736cd5..b8a7510b 100644
--- a/app/src/main/res/xml/oreo_autofill_service.xml
+++ b/app/src/main/res/xml/oreo_autofill_service.xml
@@ -5,6 +5,7 @@
<autofill-service xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
+ android:supportsInlineSuggestions="true"
tools:ignore="UnusedAttribute">
<compatibility-package android:name="com.android.chrome" />
<compatibility-package android:name="com.brave.browser" />