diff options
author | Fabian Henneke <FabianHenneke@users.noreply.github.com> | 2020-09-01 10:12:27 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-01 13:42:27 +0530 |
commit | cbb96397d1f5cffef7984b08a426646aaea93e5b (patch) | |
tree | da11f9d477758f69f7349dea56bfcee3a92b2446 /app/src/main/res | |
parent | 55d64fb73710d8dcadd28089ab233cd543830184 (diff) |
Add Keystore backend for SSH public key authentication (#1070)
Diffstat (limited to 'app/src/main/res')
-rw-r--r-- | app/src/main/res/layout/activity_ssh_keygen.xml | 53 | ||||
-rw-r--r-- | app/src/main/res/layout/folder_dialog_fragment.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/layout/fragment_show_ssh_key.xml | 32 | ||||
-rw-r--r-- | app/src/main/res/layout/git_credential_layout.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values-ar/strings.xml | 1 | ||||
-rw-r--r-- | app/src/main/res/values-cs/strings.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values-de/strings.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values-es/strings.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values-fr/strings.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values-ja/strings.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values-pt-rBR/strings.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values-ru/strings.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values-zh-rCN/strings.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values-zh-rTW/strings.xml | 2 | ||||
-rw-r--r-- | app/src/main/res/values/strings.xml | 25 |
15 files changed, 42 insertions, 91 deletions
diff --git a/app/src/main/res/layout/activity_ssh_keygen.xml b/app/src/main/res/layout/activity_ssh_keygen.xml index 6ec3f2fb..17180f06 100644 --- a/app/src/main/res/layout/activity_ssh_keygen.xml +++ b/app/src/main/res/layout/activity_ssh_keygen.xml @@ -13,16 +13,11 @@ android:layout_height="wrap_content" android:orientation="vertical" android:paddingLeft="@dimen/activity_horizontal_margin" + android:paddingTop="@dimen/activity_vertical_margin" android:paddingRight="@dimen/activity_horizontal_margin"> - <androidx.appcompat.widget.AppCompatTextView - android:layout_width="wrap_content" - android:layout_height="48dp" - android:gravity="center_vertical" - android:text="@string/ssh_keygen_length" /> - <com.google.android.material.button.MaterialButtonToggleGroup - android:id="@+id/key_length_group" + android:id="@+id/key_type_group" style="@style/TextAppearance.MaterialComponents.Headline1" android:layout_width="wrap_content" android:layout_height="wrap_content" @@ -30,48 +25,38 @@ app:singleSelection="true"> <com.google.android.material.button.MaterialButton - android:id="@+id/key_length_2048" + android:id="@+id/key_type_rsa" + style="?attr/materialButtonOutlinedStyle" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/ssh_keygen_label_rsa" /> + + <com.google.android.material.button.MaterialButton + android:id="@+id/key_type_ecdsa" style="?attr/materialButtonOutlinedStyle" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="@string/key_length_2048" /> + android:text="@string/ssh_keygen_label_ecdsa" /> <com.google.android.material.button.MaterialButton - android:id="@+id/key_length_4096" + android:id="@+id/key_type_ed25519" style="?attr/materialButtonOutlinedStyle" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="@string/key_length_4096" /> + android:text="@string/ssh_keygen_label_ed25519" /> </com.google.android.material.button.MaterialButtonToggleGroup> - <com.google.android.material.textfield.TextInputLayout + <androidx.appcompat.widget.AppCompatTextView + android:id="@+id/key_type_explanation" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginTop="8dp" - android:hint="@string/ssh_keygen_passphrase" - app:endIconMode="password_toggle"> - - <com.google.android.material.textfield.TextInputEditText - android:id="@+id/passphrase" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:fontFamily="@font/sourcecodepro" - android:importantForAccessibility="no" - android:inputType="textPassword" /> - </com.google.android.material.textfield.TextInputLayout> + android:paddingTop="8dp" /> - <com.google.android.material.textfield.TextInputLayout + <com.google.android.material.checkbox.MaterialCheckBox + android:id="@+id/key_require_authentication" android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginTop="8dp" - android:hint="@string/ssh_keygen_comment"> - - <com.google.android.material.textfield.TextInputEditText - android:id="@+id/comment" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:inputType="text" /> - </com.google.android.material.textfield.TextInputLayout> + android:text="@string/ssh_keygen_require_authentication" /> <com.google.android.material.button.MaterialButton android:id="@+id/generate" diff --git a/app/src/main/res/layout/folder_dialog_fragment.xml b/app/src/main/res/layout/folder_dialog_fragment.xml index e426af53..521dacb1 100644 --- a/app/src/main/res/layout/folder_dialog_fragment.xml +++ b/app/src/main/res/layout/folder_dialog_fragment.xml @@ -31,7 +31,7 @@ android:id="@+id/set_gpg_key" android:layout_width="0dp" android:layout_height="wrap_content" - app:layout_constraintEnd_toEndOf="parent" android:text="@string/new_folder_set_gpg_key" + app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toBottomOf="@id/folder_name_container" /> </androidx.constraintlayout.widget.ConstraintLayout> diff --git a/app/src/main/res/layout/fragment_show_ssh_key.xml b/app/src/main/res/layout/fragment_show_ssh_key.xml deleted file mode 100644 index a933759e..00000000 --- a/app/src/main/res/layout/fragment_show_ssh_key.xml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?><!-- - ~ Copyright © 2014-2020 The Android Password Store Authors. All Rights Reserved. - ~ SPDX-License-Identifier: GPL-3.0-only - --> - -<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" - android:layout_width="match_parent" - android:layout_height="match_parent"> - - <LinearLayout - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:orientation="vertical" - android:paddingLeft="24dp" - android:paddingTop="20dp" - android:paddingRight="24dp" - android:paddingBottom="20dp"> - - <androidx.appcompat.widget.AppCompatTextView - android:id="@+id/public_key" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:textIsSelectable="true" /> - - <androidx.appcompat.widget.AppCompatTextView - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="@string/ssh_keygen_tip" - android:textSize="16sp" /> - - </LinearLayout> -</ScrollView> diff --git a/app/src/main/res/layout/git_credential_layout.xml b/app/src/main/res/layout/git_credential_layout.xml index 180b904a..3e520bf1 100644 --- a/app/src/main/res/layout/git_credential_layout.xml +++ b/app/src/main/res/layout/git_credential_layout.xml @@ -14,8 +14,8 @@ android:layout_width="match_parent" android:layout_height="wrap_content" app:endIconMode="password_toggle" - app:hintEnabled="true" app:errorEnabled="true" + app:hintEnabled="true" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 695a7499..1fd90cb2 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -87,7 +87,6 @@ <string name="ssh_keygen_passphrase">العبارة السرية</string> <string name="ssh_keygen_comment">تعليق</string> <string name="ssh_keygen_generate">توليد</string> - <string name="ssh_keygen_copy">نسخ</string> <!-- Misc --> <string name="dialog_ok">حسناً</string> diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 3c4df560..b7769e53 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -130,8 +130,6 @@ <string name="ssh_keygen_passphrase">Bezpečnostní fráze</string> <string name="ssh_keygen_comment">Komentář</string> <string name="ssh_keygen_generate">Generovat</string> - <string name="ssh_keygen_copy">Kopírovat</string> - <string name="ssh_keygen_tip">Přidat tento veřejný klíč na Git server.</string> <!-- Misc --> <string name="dialog_ok">OK</string> diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index d5abea1a..1c89081a 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -111,8 +111,6 @@ <string name="ssh_keygen_passphrase">Passwort</string> <string name="ssh_keygen_comment">Kommentar</string> <string name="ssh_keygen_generate">Generieren</string> - <string name="ssh_keygen_copy">Kopieren</string> - <string name="ssh_keygen_tip">Füge den Public-Key zu deinem Git-Server hinzu.</string> <!-- Misc --> <string name="dialog_ok">OK</string> diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml index 03e153e9..c781f7aa 100644 --- a/app/src/main/res/values-es/strings.xml +++ b/app/src/main/res/values-es/strings.xml @@ -135,8 +135,6 @@ <string name="ssh_keygen_passphrase">Contraseña</string> <string name="ssh_keygen_comment">Comentario</string> <string name="ssh_keygen_generate">Generar</string> - <string name="ssh_keygen_copy">Copiar</string> - <string name="ssh_keygen_tip">Registra esta llave pública en tu servidor Git.</string> <!-- Misc --> <string name="dialog_ok">OK</string> diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index db98bfd8..e97fd1fb 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -135,8 +135,6 @@ <string name="ssh_keygen_passphrase">Mot de passe</string> <string name="ssh_keygen_comment">Commentaire</string> <string name="ssh_keygen_generate">Générer</string> - <string name="ssh_keygen_copy">Copier</string> - <string name="ssh_keygen_tip">Enregistrez cette clef publique sur votre serveur Git.</string> <!-- Misc --> <string name="dialog_ok">OK</string> diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 132ecad4..65f378a9 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -94,8 +94,6 @@ <string name="ssh_keygen_passphrase">パスフレーズ</string> <string name="ssh_keygen_comment">コメント</string> <string name="ssh_keygen_generate">生成</string> - <string name="ssh_keygen_copy">コピー</string> - <string name="ssh_keygen_tip">この公開鍵を Git サーバーに提供してください。</string> <!-- Misc --> <string name="dialog_ok">OK</string> diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 2e07190a..535267c7 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -169,8 +169,6 @@ <string name="ssh_keygen_passphrase">Frase Secreta</string> <string name="ssh_keygen_comment">Comentário</string> <string name="ssh_keygen_generate">Gerar</string> - <string name="ssh_keygen_copy">Copiar</string> - <string name="ssh_keygen_tip">Forneça esta chave pública para seu servidor Git.</string> <string name="ssh_key_gen_generating_progress">Gerando chaves…</string> <string name="ssh_keygen_generating_done">Concluído!</string> <!-- Misc --> diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index d1fbc215..291429bc 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -164,8 +164,6 @@ <string name="ssh_keygen_passphrase">Пароль</string> <string name="ssh_keygen_comment">Комментарий</string> <string name="ssh_keygen_generate">Сгенерировать</string> - <string name="ssh_keygen_copy">Скоприровать</string> - <string name="ssh_keygen_tip">Поместите публичный ключ на сервер Git</string> <!-- Misc --> <string name="dialog_ok">OK</string> diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index e7899c76..ebc710d4 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -91,8 +91,6 @@ <string name="ssh_keygen_passphrase">口令</string> <string name="ssh_keygen_comment">备注</string> <string name="ssh_keygen_generate">生成</string> - <string name="ssh_keygen_copy">复制</string> - <string name="ssh_keygen_tip">在你的Git服务器上提供此公钥</string> <!-- Misc --> <string name="dialog_ok">确定</string> diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 572d67da..b380c560 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -88,8 +88,6 @@ <string name="ssh_keygen_passphrase">密碼</string> <string name="ssh_keygen_comment">備註</string> <string name="ssh_keygen_generate">產生</string> - <string name="ssh_keygen_copy">複製</string> - <string name="ssh_keygen_tip">在你的 Git 伺服器上提供此公鑰</string> <!-- Misc --> <string name="dialog_ok">確定</string> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 72d4d5db..5c8b75cd 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -199,12 +199,29 @@ <string name="ssh_keygen_passphrase">Passphrase</string> <string name="ssh_keygen_comment">Comment</string> <string name="ssh_keygen_generate">Generate</string> - <string name="ssh_keygen_copy">Copy</string> - <string name="ssh_keygen_tip">Provide this public key to your Git server.</string> + <string name="ssh_keygen_share">Share</string> + <string name="ssh_keygen_later">Later</string> + <string name="ssh_keygen_message">%1$s\n\nProvide this public key to your Git server.</string> <string name="ssh_key_gen_generating_progress">Generating keys…</string> <string name="ssh_keygen_generating_done">Done!</string> - <string name="key_length_2048" translatable="false">2048</string> - <string name="key_length_4096" translatable="false">4096</string> + <string name="ssh_keygen_require_authentication">Protect with screen lock credential</string> + <string name="ssh_keygen_copied_key">Public key copied to clipboard</string> + <string name="ssh_keygen_label_rsa">RSA</string> + <string name="ssh_keygen_label_ecdsa">ECDSA</string> + <string name="ssh_keygen_label_ed25519">Ed25519</string> + <string name="ssh_keygen_explanation_rsa"><b>RSA (3072 bit)</b>\nSupported by all servers, but authentication is comparatively slow.</string> + <string name="ssh_keygen_explanation_ecdsa"><b>ECDSA (NIST P-256)</b>\nFast authentication and supported by most servers that are still receiving updates.</string> + <string name="ssh_keygen_explanation_ed25519"><b>Ed25519</b>\nFast authentication, but only supported by rather modern servers.</string> + <string name="ssh_keygen_existing_title">SSH key</string> + <string name="ssh_keygen_existing_message">Replace existing SSH key? You might lose access to your server.</string> + <string name="ssh_keygen_existing_replace">Replace</string> + <string name="ssh_keygen_existing_keep">Keep</string> + + + <!-- SSH Android Keystore auth --> + <string name="biometric_auth_generic_failure">Screen lock authentication failed</string> + <string name="biometric_prompt_title_ssh_auth">Unlock SSH key</string> + <string name="biometric_prompt_title_ssh_keygen">Generate SSH key</string> <!-- Misc --> <string name="dialog_ok">OK</string> |