diff --git a/app/src/main/java/com/beemdevelopment/aegis/CopyBehavior.java b/app/src/main/java/com/beemdevelopment/aegis/CopyBehavior.java new file mode 100644 index 0000000000..4b9b844e50 --- /dev/null +++ b/app/src/main/java/com/beemdevelopment/aegis/CopyBehavior.java @@ -0,0 +1,17 @@ +package com.beemdevelopment.aegis; + +public enum CopyBehavior { + NEVER, + SINGLETAP, + DOUBLETAP; + + private static CopyBehavior[] _values; + + static { + _values = values(); + } + + public static CopyBehavior fromInteger(int x) { + return _values[x]; + } +} diff --git a/app/src/main/java/com/beemdevelopment/aegis/Preferences.java b/app/src/main/java/com/beemdevelopment/aegis/Preferences.java index e8c636b53d..1258493518 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/Preferences.java +++ b/app/src/main/java/com/beemdevelopment/aegis/Preferences.java @@ -45,6 +45,22 @@ public Preferences(Context context) { if (getPasswordReminderTimestamp().getTime() == 0) { resetPasswordReminderTimestamp(); } + + migratePreferences(); + } + + public void migratePreferences() { + // Change copy on tap to copy behavior to new preference and delete the old key + String prefCopyOnTapKey = "pref_copy_on_tap"; + if (_prefs.contains(prefCopyOnTapKey)) { + + boolean isCopyOnTapEnabled = _prefs.getBoolean(prefCopyOnTapKey, false); + if (isCopyOnTapEnabled) { + setCopyBehavior(CopyBehavior.SINGLETAP); + } + + _prefs.edit().remove(prefCopyOnTapKey).apply(); + } } public boolean isTapToRevealEnabled() { @@ -444,8 +460,12 @@ public void setIsTimeSyncWarningEnabled(boolean enabled) { _prefs.edit().putBoolean("pref_warn_time_sync", enabled).apply(); } - public boolean isCopyOnTapEnabled() { - return _prefs.getBoolean("pref_copy_on_tap", false); + public CopyBehavior getCopyBehavior() { + return CopyBehavior.fromInteger(_prefs.getInt("pref_current_copy_behavior", 0)); + } + + public void setCopyBehavior(CopyBehavior copyBehavior) { + _prefs.edit().putInt("pref_current_copy_behavior", copyBehavior.ordinal()).apply(); } public boolean isMinimizeOnCopyEnabled() { diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java b/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java index 8b65f47c43..561205baff 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/MainActivity.java @@ -35,6 +35,7 @@ import androidx.appcompat.view.ActionMode; import androidx.appcompat.widget.SearchView; +import com.beemdevelopment.aegis.CopyBehavior; import com.beemdevelopment.aegis.Preferences; import com.beemdevelopment.aegis.R; import com.beemdevelopment.aegis.SortCategory; @@ -139,7 +140,7 @@ protected void onCreate(Bundle savedInstanceState) { _entryListView.setTapToRevealTime(_prefs.getTapToRevealTime()); _entryListView.setSortCategory(_prefs.getCurrentSortCategory(), false); _entryListView.setViewMode(_prefs.getCurrentViewMode()); - _entryListView.setIsCopyOnTapEnabled(_prefs.isCopyOnTapEnabled()); + _entryListView.setCopyBehavior(_prefs.getCopyBehavior()); _entryListView.setPrefGroupFilter(_prefs.getGroupFilter()); FloatingActionButton fab = findViewById(R.id.fab); @@ -277,7 +278,7 @@ private void onPreferencesResult(Intent data) { boolean tapToReveal = _prefs.isTapToRevealEnabled(); int tapToRevealTime = _prefs.getTapToRevealTime(); ViewMode viewMode = _prefs.getCurrentViewMode(); - boolean copyOnTap = _prefs.isCopyOnTapEnabled(); + CopyBehavior copyBehavior = _prefs.getCopyBehavior(); _entryListView.setShowAccountName(showAccountName); _entryListView.setShowIcon(showIcons); _entryListView.setCodeGroupSize(codeGroupSize); @@ -286,7 +287,7 @@ private void onPreferencesResult(Intent data) { _entryListView.setTapToReveal(tapToReveal); _entryListView.setTapToRevealTime(tapToRevealTime); _entryListView.setViewMode(viewMode); - _entryListView.setIsCopyOnTapEnabled(copyOnTap); + _entryListView.setCopyBehavior(copyBehavior); _entryListView.refresh(true); } } diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/fragments/preferences/BehaviorPreferencesFragment.java b/app/src/main/java/com/beemdevelopment/aegis/ui/fragments/preferences/BehaviorPreferencesFragment.java index 83a7991ca6..47646418f1 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/fragments/preferences/BehaviorPreferencesFragment.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/fragments/preferences/BehaviorPreferencesFragment.java @@ -2,9 +2,12 @@ import android.os.Bundle; +import androidx.appcompat.app.AlertDialog; import androidx.preference.Preference; +import com.beemdevelopment.aegis.CopyBehavior; import com.beemdevelopment.aegis.R; +import com.beemdevelopment.aegis.ui.dialogs.Dialogs; public class BehaviorPreferencesFragment extends PreferencesFragment { private Preference _entryPausePreference; @@ -14,9 +17,24 @@ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { super.onCreatePreferences(savedInstanceState, rootKey); addPreferencesFromResource(R.xml.preferences_behavior); - Preference copyOnTapPreference = requirePreference("pref_copy_on_tap"); - copyOnTapPreference.setOnPreferenceChangeListener((preference, newValue) -> { - getResult().putExtra("needsRefresh", true); + int currentCopyBehavior = _prefs.getCopyBehavior().ordinal(); + Preference copyBehaviorPreference = requirePreference("pref_copy_behavior"); + copyBehaviorPreference.setSummary(String.format("%s: %s", getString(R.string.selected), getResources().getStringArray(R.array.copy_behavior_titles)[currentCopyBehavior])); + copyBehaviorPreference.setOnPreferenceClickListener(preference -> { + int currentCopyBehavior1 = _prefs.getCopyBehavior().ordinal(); + + Dialogs.showSecureDialog(new AlertDialog.Builder(requireContext()) + .setTitle(getString(R.string.choose_copy_behavior)) + .setSingleChoiceItems(R.array.copy_behavior_titles, currentCopyBehavior1, (dialog, which) -> { + int i = ((AlertDialog) dialog).getListView().getCheckedItemPosition(); + _prefs.setCopyBehavior(CopyBehavior.fromInteger(i)); + copyBehaviorPreference.setSummary(String.format("%s: %s", getString(R.string.selected), getResources().getStringArray(R.array.copy_behavior_titles)[i])); + getResult().putExtra("needsRefresh", true); + dialog.dismiss(); + }) + .setNegativeButton(android.R.string.cancel, null) + .create()); + return true; }); diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/views/EntryAdapter.java b/app/src/main/java/com/beemdevelopment/aegis/ui/views/EntryAdapter.java index 53083c9797..b77f8c8f8b 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/views/EntryAdapter.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/views/EntryAdapter.java @@ -10,12 +10,14 @@ import android.view.LayoutInflater; import android.view.MotionEvent; import android.view.View; +import android.view.ViewConfiguration; import android.view.ViewGroup; import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; +import com.beemdevelopment.aegis.CopyBehavior; import com.beemdevelopment.aegis.R; import com.beemdevelopment.aegis.Preferences; import com.beemdevelopment.aegis.SortCategory; @@ -45,7 +47,7 @@ public class EntryAdapter extends RecyclerView.Adapter private List _selectedEntries; private Map _usageCounts; private VaultEntry _focusedEntry; - private VaultEntry _copiedEntry; + private VaultEntry _clickedEntry; private Preferences.CodeGrouping _codeGroupSize; private boolean _showAccountName; private boolean _showIcon; @@ -53,7 +55,7 @@ public class EntryAdapter extends RecyclerView.Adapter private boolean _tempHighlightEntry; private boolean _tapToReveal; private int _tapToRevealTime; - private boolean _copyOnTap; + private CopyBehavior _copyBehavior; private List _groupFilter; private SortCategory _sortCategory; private ViewMode _viewMode; @@ -61,6 +63,7 @@ public class EntryAdapter extends RecyclerView.Adapter private boolean _isPeriodUniform = true; private int _uniformPeriod = -1; private Handler _dimHandler; + private Handler _doubleTapHandler; private boolean _pauseFocused; // keeps track of the EntryHolders that are currently bound @@ -73,6 +76,7 @@ public EntryAdapter(EntryListView view) { _groupFilter = new ArrayList<>(); _holders = new ArrayList<>(); _dimHandler = new Handler(); + _doubleTapHandler = new Handler(); _view = view; } @@ -111,9 +115,7 @@ public void setTempHighlightEntry(boolean highlightEntry) { _tempHighlightEntry = highlightEntry; } - public void setIsCopyOnTapEnabled(boolean enabled) { - _copyOnTap = enabled; - } + public void setCopyBehavior(CopyBehavior copyBehavior) { _copyBehavior = copyBehavior; } public void setPauseFocused(boolean pauseFocused) { _pauseFocused = pauseFocused; @@ -435,26 +437,30 @@ public void onClick(View v) { boolean handled = false; if (_selectedEntries.isEmpty()) { - boolean copiedThisClick = false; - - if (_copyOnTap && !entryHolder.isHidden() && !(entry == _copiedEntry)) { - _view.onEntryCopy(entry); - entryHolder.animateCopyText(); - _copiedEntry = entry; - copiedThisClick = true; - handled = true; - } - if (_highlightEntry || _tempHighlightEntry || _tapToReveal) { - if (_focusedEntry == entry && !copiedThisClick) { + if (_focusedEntry == entry) { resetFocus(); - _copiedEntry = null; - handled = true; } else { focusEntry(entry, _tapToRevealTime); + _clickedEntry = entry; + handled = true; } - } else { - _copiedEntry = null; + } + + switch (_copyBehavior) { + case SINGLETAP: + _view.onEntryCopy(entry); + entryHolder.animateCopyText(); + _clickedEntry = null; + break; + case DOUBLETAP: + _doubleTapHandler.postDelayed(() -> _clickedEntry = null, ViewConfiguration.getDoubleTapTimeout()); + + if(entry == _clickedEntry && !handled) { + _view.onEntryCopy(entry); + entryHolder.animateCopyText(); + _clickedEntry = null; + } } incrementUsageCount(entry); diff --git a/app/src/main/java/com/beemdevelopment/aegis/ui/views/EntryListView.java b/app/src/main/java/com/beemdevelopment/aegis/ui/views/EntryListView.java index 99393f0d7b..b675a422a1 100644 --- a/app/src/main/java/com/beemdevelopment/aegis/ui/views/EntryListView.java +++ b/app/src/main/java/com/beemdevelopment/aegis/ui/views/EntryListView.java @@ -23,6 +23,7 @@ import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; +import com.beemdevelopment.aegis.CopyBehavior; import com.beemdevelopment.aegis.Preferences; import com.beemdevelopment.aegis.R; import com.beemdevelopment.aegis.SortCategory; @@ -173,8 +174,8 @@ public void setIsLongPressDragEnabled(boolean enabled) { _touchCallback.setIsLongPressDragEnabled(enabled && _adapter.isDragAndDropAllowed()); } - public void setIsCopyOnTapEnabled(boolean enabled) { - _adapter.setIsCopyOnTapEnabled(enabled); + public void setCopyBehavior(CopyBehavior copyBehavior) { + _adapter.setCopyBehavior(copyBehavior); } public void setActionModeState(boolean enabled, VaultEntry entry) { diff --git a/app/src/main/res/values-ar-rSA/strings.xml b/app/src/main/res/values-ar-rSA/strings.xml index c1b8adbccf..2e0dbfb05f 100644 --- a/app/src/main/res/values-ar-rSA/strings.xml +++ b/app/src/main/res/values-ar-rSA/strings.xml @@ -285,8 +285,6 @@ يسهل تمييز الرموز عن بعضها بتسليط الضوء عليهم عندما يتم النقر عليهم تصغير عند النسخ تصغير التطبيق بعد نسخ رمز - انسخ الرموز عندما تنُقر - نسخ الرموز إلى الحافظ عندما يتم النقر عليهم تجميد الرموز عند النقر عليها أدخل كلمة المرور لتفعيل لوحة مفاتيح PIN. لاحظ أن هذا يعمل فقط إذا كانت كلمة المرور الخاصة بك تتكون فقط من أرقام خطأ في تفعيل لوحة مفاتيح PIN diff --git a/app/src/main/res/values-ast-rES/strings.xml b/app/src/main/res/values-ast-rES/strings.xml index b732a90caf..73c5e1d50d 100644 --- a/app/src/main/res/values-ast-rES/strings.xml +++ b/app/src/main/res/values-ast-rES/strings.xml @@ -289,8 +289,6 @@ Fai que los pases s\'estremen meyor al rescamplalos temporalmente cuando toques nellos Minimizar al copiar Minimiza l\'aplicación dempués de copiar un pase - Copiar los pases al tocalos - Copia los pases nel cartafueyu cuando toques nellos Paralizar los pases al tocalos Posa l\'anovamientu automáticu de los pases al tocar nellos y, polo tanto, nun s\'anueven mentanto tengan el focu. Esta opción rique l\'activación de les opciones «Rescamplar los pases al tocalos» o «Tocar pa desvelar». Activa la contraseña p\'activar el tecláu numbéricu. Decátate qu\'esta opción namás funciona si la contraseña ta formada namás por númberos diff --git a/app/src/main/res/values-bg-rBG/strings.xml b/app/src/main/res/values-bg-rBG/strings.xml index 6b657855f6..b72ebadedc 100644 --- a/app/src/main/res/values-bg-rBG/strings.xml +++ b/app/src/main/res/values-bg-rBG/strings.xml @@ -199,8 +199,6 @@ Управлявайте и изтривайте групите си тук Акцентирайте токените при докосване Направете токените по-лесни за различаване един от друг, като ги маркирате временно, когато ги докоснете - Копирайте жетоните при докосване - Копирайте токени в клипборда, като ги докоснете Въведете паролата си, за да активирате PIN клавиатурата. Имайте предвид, че това работи само ако вашата парола се състои само от цифри Грешка при активиране на PIN клавиатурата Не е възможно да зададете PIN клавиатура. Паролата ви трябва да се състои само от цифри. diff --git a/app/src/main/res/values-ca-rES/strings.xml b/app/src/main/res/values-ca-rES/strings.xml index 7ce1b82116..1342c535b6 100644 --- a/app/src/main/res/values-ca-rES/strings.xml +++ b/app/src/main/res/values-ca-rES/strings.xml @@ -289,8 +289,6 @@ Fes les fitxes més fàcils de distingir de la resta il·luminant-les temporalment quan les toquis Minimitzar al copiar Minimitzar l\'aplicació després de copiar un token - Copia la fitxa al tocar - Copia les fitxes al porta-retalls al tocar-les Congela la fitxa al tocar Pausa l\'actualització automàtica de la fitxa al tocar-la. No s\'actualitzará mentre estigui marcada. Cal tenir \"Il·lumina les fitxes al tocar\" o \"Toca per a mostrar\". Introdueix la teva contrasenya per a activar el teclat PIN. Això només funcionarà si la contrasenya només té dígits diff --git a/app/src/main/res/values-cs-rCZ/strings.xml b/app/src/main/res/values-cs-rCZ/strings.xml index db52b5e589..4a39efdaaf 100644 --- a/app/src/main/res/values-cs-rCZ/strings.xml +++ b/app/src/main/res/values-cs-rCZ/strings.xml @@ -310,8 +310,6 @@ Usnadnit vzájemné rozlišení tokenů dočasným zvýrazněním po kleputí Minimalizovat při kopírování Minimalizovat aplikaci po zkopírování tokenu - Zkopírovat tokeny po klepnutí - Zkopírovat tokeny do schránky po klepnutí na ně Zmrazit tokeny po klepnutí Pozastavit automatické obnovování tokenů klepnutím na ně. Tokeny nebudou aktualizovány, dokud jsou zaměřeny. Vyžaduje \"Zvýraznit tokeny po klepnutí\" nebo \"Klepnutím zobrazit\". Zadejte své heslo pro povolení PIN klávesnice. Toto funguje jen pokud používáte číselné heslo. diff --git a/app/src/main/res/values-da-rDK/strings.xml b/app/src/main/res/values-da-rDK/strings.xml index a03477e9c6..1b0da6e116 100644 --- a/app/src/main/res/values-da-rDK/strings.xml +++ b/app/src/main/res/values-da-rDK/strings.xml @@ -294,8 +294,6 @@ Gør tokens lettere at skelne fra hinanden ved midlertidigt at fremhæve dem, når der trykkes på dem Minimér under kopiering Minimér appen efter kopiering af et token - Kopier tokens ved tryk - Kopier tokens til udklipsholderen ved at trykke på dem Frys tokens ved tryk Pausér automatisk opdatering af tokens ved at trykke på dem. Tokens opdateres ikke, så længe de er fokuseret. Kræver \"Fremhæv tokens ved tryk\" eller \"Tryk for at afsløre\". Indtast din adgangskode for at aktivere PIN-tastaturet. Bemærk at dette kun virker, hvis din adgangskode kun består af tal diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml index 9cf3e66986..729f93fcf6 100644 --- a/app/src/main/res/values-de-rDE/strings.xml +++ b/app/src/main/res/values-de-rDE/strings.xml @@ -294,8 +294,6 @@ Token beim Antippen hervorheben, um sie leichter voneinander unterscheiden zu können Beim Kopieren minimieren App nach dem Kopieren eines Tokens minimieren - Token beim Tippen kopieren - Token beim Antippen in die Zwischenablage kopieren Token beim Tippen einfrieren Automatische Aktualisierung von Token durch Antippen stoppen. Die Token werden nicht aktualisiert, solange sie hervorgehoben sind. Erfordert »Token beim Tippen hervorheben« oder »Zum Aufdecken tippen«. Gib dein Passwort ein, um die PIN-Tastatur zu aktivieren. Beachte, dass dies nur funktioniert, wenn dein Passwort nur aus Zahlen besteht diff --git a/app/src/main/res/values-el-rGR/strings.xml b/app/src/main/res/values-el-rGR/strings.xml index f98ea30ecb..223abbaf91 100644 --- a/app/src/main/res/values-el-rGR/strings.xml +++ b/app/src/main/res/values-el-rGR/strings.xml @@ -294,8 +294,6 @@ Κάνετε τα αναγνωριστικά να ξεχωρίζουν ευκολότερα το ένα από το άλλο, επισημαίνοντας τα προσωρινά όταν τα πατήσετε Ελαχιστοποίηση κατά την αντιγραφή Ελαχιστοποίηση της εφαρμογής μετά την αντιγραφή ενός αναγνωριστικού - Αντιγράψτε τα αναγνωριστικά όταν τα πατάτε - Αντιγράψτε τα αναγνωριστικά στο πρόχειρο πατώντας τα Πάγωμα αναγνωριστικών όταν πατηθούν Παύση της αυτόματης ανανέωσης των αναγνωριστικών πατώντας τα. Τα αναγνωριστικά δεν θα ενημερώνονται όσο είναι συγκεντρωμένα. Απαιτεί \"Επισήμανση αναγνωριστικών όταν πατηθούν\" ή \"Πατήστε για αποκάλυψη\". Εισαγάγετε τον κωδικό πρόσβασής σας για να ενεργοποιήσετε το πληκτρολόγιο PIN. Λάβετε υπόψη ότι αυτό λειτουργεί μόνο εάν ο κωδικός πρόσβασής σας αποτελείται μόνο από αριθμούς diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index 4e41870b0e..dc94725b4a 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -294,8 +294,6 @@ Hace que los tokens sean más fáciles de distinguir entre ellos resaltándolos temporalmente tras ser pulsados Minimizar al copiar Minimiza la app después de copiar un token - Copiar tokens al pulsarlos - Copia los tokens al portapapeles al pulsarlos Congelar tokens al tocarlos Pausa la recarga automática de los tokens tocándolos. Las tokens no se actualizarán mientras estén enfocadas. Requiere \"Resaltar tokens al pulsarlos\" o \"Pulsar para mostrar\". Introduzca su contraseña para activar el teclado PIN. Tenga en cuenta que esto solo funciona si su contraseña contiene únicamente números diff --git a/app/src/main/res/values-eu-rES/strings.xml b/app/src/main/res/values-eu-rES/strings.xml index 14a5347bf5..a3ddeb1885 100644 --- a/app/src/main/res/values-eu-rES/strings.xml +++ b/app/src/main/res/values-eu-rES/strings.xml @@ -289,8 +289,6 @@ Egin elkarrengandik errazago bereizten diren tokenak, sakatzen dituzunean aldi baterako nabarmenduz Txikitu kopiatzean Aplikazioa txikitu tokena kopiatutakoan - Kopiatu tokenak ukitzean - Kopiatu tokenak arbelean beraiek ukituta Izoztu tokenak ukitzean Gelditu tokenak automatikoki freskatzea beraietan sakatzean. Tokenak ez dira eguneratuko ukitzen ez badituzu. \"Nabarmendu tokenak ukitzean\" edo \"Sakatu erakusteko\" aukeratuta izatea eskatzen du. Sartu pasahitza PIN teklatua gaitzeko. Kontuan izan honek zure pasahitzak zenbakiak soilik baditu funtzionatzen duela diff --git a/app/src/main/res/values-fa-rIR/strings.xml b/app/src/main/res/values-fa-rIR/strings.xml index 1e6da83f64..b1a52c741b 100644 --- a/app/src/main/res/values-fa-rIR/strings.xml +++ b/app/src/main/res/values-fa-rIR/strings.xml @@ -217,8 +217,6 @@ اینجا می‌توانید گروه ها را مدیریت و یا حذف کنید توکن ها پس از لمس هایلایت شوند برای تمیز دادن توکن مورد نظر از بقیه می‌توانید آنها را به صورت موقت با لمس کردن هایلایت کنید - کپی توکن هنگام لمس آنها - کپی کردن توکن ها در کلیپ‌بورد با لمس آنها کلمه عبور خود را برای فعال کردن صفحه کلید شماره‌ای وارد کنید. این ویژگی فقط برای کلمه عبور های شامل فقط عدد کاربرد دارد خطا در فعال کردن صفحه کلید شماره‌ای امکان فعال صفحه کلید شماره‌ای نیست. کلمه عبور شما باید فقط شامل عدد باشد. diff --git a/app/src/main/res/values-fi-rFI/strings.xml b/app/src/main/res/values-fi-rFI/strings.xml index 84258812d8..594b266ebc 100644 --- a/app/src/main/res/values-fi-rFI/strings.xml +++ b/app/src/main/res/values-fi-rFI/strings.xml @@ -291,8 +291,6 @@ Tee todennuskoodeista helpompi erottaa toisistaan korostamalla niitä tilapäisesti napauttamalla Pienennä kopioidessa Pienennä sovellus todennuskoodin kopioinnin jälkeen - Kopioi todennuskoodeja napauttamalla - Kopioi todennuskoodit leikepöydälle napauttamalla niitä Jäädytä todennuskoodit napauttamalla Keskeytä todennuskoodien automaattinen päivitys napauttamalla niitä. Todennuskoodit eivät päivity automaattisesti, niin kauan kun ne ovat valittuina. Vaatii \"Korosta todennuskoodit napauttamalla\" tai \"Paljasta napauttamalla\" -asetusten käyttöönottoa. Ota PIN-näppäimistö käyttöön antamalla salasanasi. Tämä toimii vain, jos salasanasi koostuu pelkästään numeroista diff --git a/app/src/main/res/values-fr-rFR/strings.xml b/app/src/main/res/values-fr-rFR/strings.xml index 41d9d7adf9..369ae12ea8 100644 --- a/app/src/main/res/values-fr-rFR/strings.xml +++ b/app/src/main/res/values-fr-rFR/strings.xml @@ -294,8 +294,6 @@ Rendre les jetons plus faciles à distinguer les uns des autres en les surlignant temporairement lorsqu\'ils sont appuyés Minimiser lors de la copie Minimiser l\'application après avoir copié un jeton - Copier les jetons quand ils sont appuyés - Copier les jetons dans le presse-papier en appuyant dessus Geler les jetons lorsqu\'ils sont appuyés Mettre en pause l\'actualisation automatique des jetons en appuyant dessus. Les jetons ne seront plus mis à jour tant qu\'ils seront ciblés. Nécessite « Surligner les jetons lorsqu\'ils sont appuyés » ou « Appuyer pour révéler ». Saisissez votre mot de passe pour activer le clavier PIN. Notez que cela ne fonctionne que si votre mot de passe est composé uniquement de chiffres diff --git a/app/src/main/res/values-gl-rES/strings.xml b/app/src/main/res/values-gl-rES/strings.xml index 1d2bdf8a72..fee6c3c3e0 100644 --- a/app/src/main/res/values-gl-rES/strings.xml +++ b/app/src/main/res/values-gl-rES/strings.xml @@ -289,8 +289,6 @@ Resalta temporalmente os tokens cando se preman para podelos distinguir máis facilmente Minimizar ao copiar Minimiza a aplicación despois de copiar un token - Copiar tokens ao premelos - Copia os tokens no portapapeis cando se prema neles Conxelar tokens ao premelos Pausa a actualización automática dos tokens ao premer neles. Os tokens non se actualizarán mentres teñan o foco. Require \"Resaltar tokens ao premelos\" ou \"Tocar para mostrar\". Introduce o teu contrasinal para activar o teclado do PIN. Ten en conta que isto só funciona se o teu contrasinal consiste só de números diff --git a/app/src/main/res/values-hi-rIN/strings.xml b/app/src/main/res/values-hi-rIN/strings.xml index f0212e503e..b785850f80 100644 --- a/app/src/main/res/values-hi-rIN/strings.xml +++ b/app/src/main/res/values-hi-rIN/strings.xml @@ -242,8 +242,6 @@ खाली करें टैप करने पर टोकन हाइलाइट करें टैप करने पर टोकनों को एक दूसरे से अलग उजागर करने के लिए उन्हें अस्थायी रूप से हाईलाइट करें - टैप करने पर टोकनों को कॉपी करें - टोकानों पर टैप करके क्लिपबोर्ड में कॉपी करें टैप किए जाने पर टोकन फ़्रीज़ करें टोकन को टैप करके उनके स्वचालित रीफ़्रेश को रोकें। जब तक वे केंद्रित हैं तब तक टोकन अपडेट नहीं होंगे। \"टैप किए जाने पर टोकन हाइलाइट करें\" या \"प्रकट करने के लिए टैप करें\" की आवश्यकता है। पिन कीबोर्ड को सक्षम करने के लिए अपना पासवर्ड दर्ज करें। ध्यान दें कि यह केवल तभी काम करता है जब आपके पासवर्ड में केवल संख्याएँ हों diff --git a/app/src/main/res/values-hu-rHU/strings.xml b/app/src/main/res/values-hu-rHU/strings.xml index a95048e2a8..60bbcaacf6 100644 --- a/app/src/main/res/values-hu-rHU/strings.xml +++ b/app/src/main/res/values-hu-rHU/strings.xml @@ -225,8 +225,6 @@ Törlés Tokenek kiemelése koppintáskor A tokenek könnyebb megkülönböztethetősége érdekében ideiglenesen ki lesznek emeve koppintáskor - Tokenek másolása érintéskor - Tokenek másolása a vágólapra érintéskor Tokenek megállítása érintéskor Tokenek automata frissítéséhez érintse meg őket. Tokenek nem frissülnek addig míg fókuszban vannak. Szükséges a \"Tokenek kiemelése érintéskor\" vagy \"Érintéskor felfedés\" opció. Írja be jelszavát a PIN billentyű bekapcsolásához. Ez csak akkor működik, ha jelszava csak számokból áll diff --git a/app/src/main/res/values-in-rID/strings.xml b/app/src/main/res/values-in-rID/strings.xml index d4a0d78cc7..1159e31b4e 100644 --- a/app/src/main/res/values-in-rID/strings.xml +++ b/app/src/main/res/values-in-rID/strings.xml @@ -244,8 +244,6 @@ Bersihkan Sorot token saat disentuh Jadikan token untuk lebih mudah dibedakan satu sama lain dengan menyorotnya saat disentuh - Salin token saat disentuh - Salin token ke clipboard dengan mengetuknya Bekukan token ketika disentuh Hentikan penyegaran otomatis token dengan menyentuh mereka. Token tidak akan diperbarui selama mereka difokuskan. Membutuhkan \"Sorot token saat disentuh\" atau \"Sentuh untuk melihat.\" Masukkan kata sandi Anda untuk mengaktifkan keyboard PIN. Perhatikan bahwa ini hanya berfungsi jika kata sandi Anda hanya terdiri dari angka diff --git a/app/src/main/res/values-it-rIT/strings.xml b/app/src/main/res/values-it-rIT/strings.xml index 7fa3317548..770cad658d 100644 --- a/app/src/main/res/values-it-rIT/strings.xml +++ b/app/src/main/res/values-it-rIT/strings.xml @@ -294,8 +294,6 @@ Rendi i token più facili da distinguere, evidenziandoli temporaneamente quando vengono toccati Minimizza alla copia Minimizza l\'app dopo aver copiato un token - Copia i token con un tocco - Copia i token negli appunti toccandoli Blocca i token con un tocco Metti in pausa l\'aggiornamento automatico dei token toccandoli. I token non si aggiorneranno finché sono evidenziati. Richiede \"Evidenzia i token al tocco\" o \"Tocca per mostrare\". Inserisci la password per abilitare la tastiera PIN. Funziona solo se la password è composta di soli numeri diff --git a/app/src/main/res/values-iw-rIL/strings.xml b/app/src/main/res/values-iw-rIL/strings.xml index f82d4c3683..32de63c39c 100644 --- a/app/src/main/res/values-iw-rIL/strings.xml +++ b/app/src/main/res/values-iw-rIL/strings.xml @@ -287,8 +287,6 @@ הפוך אסימונים לקלים יותר להבחנה זה מזה על-ידי הדגשתם באופן זמני בעת הקשה עליהם מזעור בהעתקה מזעור האפליקציה לאחר העתקת אסימון - העתקת אסימונים בעת הקשה - העתקת אסימונים ללוח על-ידי הקשה עליהם הקפאת טוקנים בעת הקשה השהה רענון אוטומטי של אסימונים על-ידי הקשה עליהם. אסימונים לא יתעדכנו כל עוד הם ממוקדים. דורש \"סמן אסימונים בעת הקשה\" או \"הקש כדי לחשוף\". הזן את הסיסמה שלך כדי להפעיל את מקלדת ה- PIN. שים לב שזה עובד רק אם הסיסמה שלך מורכבת ממספרים בלבד diff --git a/app/src/main/res/values-ja-rJP/strings.xml b/app/src/main/res/values-ja-rJP/strings.xml index a84f580977..c04d4876b9 100644 --- a/app/src/main/res/values-ja-rJP/strings.xml +++ b/app/src/main/res/values-ja-rJP/strings.xml @@ -286,8 +286,6 @@ タップ時に一時的に強調表示することで、トークンが互いに区別しやすくなります。 コピー時に最小化 トークンをコピーした後にアプリを最小化する - タップ時にトークンをコピー - トークンをタップしてクリップボードにコピーする タップ時にトークンの更新を停止 トークンをタップすると、トークンの自動更新を一時停止します。フォーカスされている限り、トークンは更新されません。 「タップ時にトークンを強調表示する」または「タップして表示」の設定が必要です。 PINキーボードを有効にするにはパスワードを入力してください。これはパスワードが数字のみで構成されている場合にのみ機能します。 diff --git a/app/src/main/res/values-lt-rLT/strings.xml b/app/src/main/res/values-lt-rLT/strings.xml index 584e80405c..6b6e32a180 100644 --- a/app/src/main/res/values-lt-rLT/strings.xml +++ b/app/src/main/res/values-lt-rLT/strings.xml @@ -211,8 +211,6 @@ Išvalyti Bakstelėjus, paryškinti prieigos raktus Bakstelėjus ant prieigos raktų, laikinai juos paryškinti ir padaryti taip, kad juos būtų lengviau atskirti - Bakstelėjus, kopijuoti prieigos raktus - Bakstelėjus ant prieigos raktų, kopijuoti juos į iškarpinę Norėdami įjungti PIN kodo klaviatūrą, įveskite slaptažodį. Turėkite omenyje, jog tai veikia tik tuo atveju, jei jūsų slaptažodis yra sudarytas tik iš skaitmenų Klaida įjungiant PIN kodo klaviatūrą Neįmanoma nustatyti PIN kodo klaviatūros. Jūsų slaptažodis privalo būti sudarytas tik iš skaitmenų. diff --git a/app/src/main/res/values-lv-rLV/strings.xml b/app/src/main/res/values-lv-rLV/strings.xml index 6435ef86d6..dcb1e531cd 100644 --- a/app/src/main/res/values-lv-rLV/strings.xml +++ b/app/src/main/res/values-lv-rLV/strings.xml @@ -302,8 +302,6 @@ Padarīt kodus vieglāk atšķiramus citu no cita, īslaicīgi izceļot tos, kad tiem piesit Samazināt pēc ievietošanas starpliktuvē Samazināt lietotni pēc koda ievietošanas starpliktuvē - Ievietot kodus starpliktuvē, kad piesit - Ievietot kodus starpliktuvē, piesitot tiem Iesaldēt kodus pēc piesišanas tiem Apturēt kodu atsvaidzināšanu, kad piesit. Kods netiks atjaunots, kamēr vien tas ir izcelts. Ir nepieciešams ieslēgt iestatījumu \"Izcelt kodus, kad piesit\" vai \"Piesist, lai atklātu\". Jāievada parole, lai iespējotu PIN tastatūru. Jāņem vērā, ka tā darbojas tikai tad, ja parole sastāv tikai no cipariem diff --git a/app/src/main/res/values-nl-rNL/strings.xml b/app/src/main/res/values-nl-rNL/strings.xml index b2321ebb73..d5881bbbf0 100644 --- a/app/src/main/res/values-nl-rNL/strings.xml +++ b/app/src/main/res/values-nl-rNL/strings.xml @@ -294,8 +294,6 @@ Maak codes makkelijker te onderscheiden van elkaar door ze tijdelijk te markeren na het aantikken Minimaliseren na kopiëren Na kopiëren van een code de app minimaliseren - Codes kopiëren bij aantikken - Codes naar het klembord kopiëren door ze te aan te tikken Codes bevriezen na aantikken Pauzeer automatisch verversen van codes door erop te tikken. Codes zullen niet worden bijgewerkt zolang ze gefocust zijn. Vereist \"Codes markeren na aantikken\" of \"Aantikken om te laten zien\". Voer je wachtwoord in om het PIN-toetsenbord in te schakelen. Let op: dit werkt alleen als je wachtwoord uit cijfers bestaat diff --git a/app/src/main/res/values-pl-rPL/strings.xml b/app/src/main/res/values-pl-rPL/strings.xml index d76e13ecb3..9ec7224bef 100644 --- a/app/src/main/res/values-pl-rPL/strings.xml +++ b/app/src/main/res/values-pl-rPL/strings.xml @@ -310,8 +310,6 @@ Wyróżnij tokeny od siebie poprzez tymczasowe podświetlenie po ich kliknięciu Zminimalizuj przy skopiowaniu Zminimalizuj aplikację po skopiowaniu tokenu - Kopiuj tokeny podczas kliknięcia - Kopiuj tokeny do schowka podczas kliknięcia Zamroź tokeny po naciśnięciu Wstrzymaj automatyczne odświeżanie tokenów poprzez dotknięcie ich. Tokeny nie będą aktualizowane tak długo, jak długo są podświetlone. Wymaga \"Podświetl tokeny podczas kliknięcia\" lub \"Kliknij, aby odkryć\". Wpisz hasło, aby włączyć klawiaturę numeryczną. Pamiętaj, że ta klawiatura działa tylko dla hasła numerycznego diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index f471e1fbb3..316de4ba6a 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -294,8 +294,6 @@ Torna tokens mais fáceis de distinguir dos outros destacando eles temporariamente quando tocados Minimizar ao copiar Minimizar o aplicativo após copiar um token - Copiar tokens quando tocados - Copia tokens para área de transferência quando tocados Congelar tokens quando tocados Pausa a atualização automática dos tokens ao tocá-los. Tokens não serão atualizados desde que o foco esteja neles. Requer \"Destacar tokens quando tocados\" ou \"Tocar para exibir\". Digite sua senha para ativar o teclado PIN. Observe que isso só funciona se a sua senha for constituída apenas por números diff --git a/app/src/main/res/values-pt-rPT/strings.xml b/app/src/main/res/values-pt-rPT/strings.xml index 465363c7fa..61a20813fa 100644 --- a/app/src/main/res/values-pt-rPT/strings.xml +++ b/app/src/main/res/values-pt-rPT/strings.xml @@ -172,8 +172,6 @@ Gerenciar e excluir seus grupos aqui Destacar tokens quando tocados Faça com que os tokens sejam mais fáceis de distinguir um do outro destacando-os temporariamente ao tocá-los - Copiar tokens quando tocados - Copia tokens para área de transferência quando tocados Digite sua senha para ativar o teclado PIN. Observe que isso só funciona se a sua senha for constituída apenas por números Erro ao habilitar o teclado PIN Não é possível configurar o teclado PIN. A sua senha deve ser composta apenas por números. diff --git a/app/src/main/res/values-ro-rRO/strings.xml b/app/src/main/res/values-ro-rRO/strings.xml index 93ed7fe163..8e4ef9c267 100644 --- a/app/src/main/res/values-ro-rRO/strings.xml +++ b/app/src/main/res/values-ro-rRO/strings.xml @@ -298,8 +298,6 @@ Fă token-urile mai ușor să se distingă între ele prin evidențierea lor temporară atunci când sunt apăsate Minimizează după copiere Minimizează aplicația după copierea unui token - Copiază token-urile când apeși - Copiază token-urile în clipboard apăsându-le Îngheață jetoanele când sunt apăsate Oprește reîmprospătarea automată a jetoanelor prin apăsarea lor. Token-urile nu se vor actualiza atâta timp cât sunt evidențiate. Necesită \"Evidențierea tokenurilor atunci când sunt apasate\" sau \"Atinge pentru a arăta\". Introdu parola pentru a activa tastatura PIN. Reține că aceasta funcționează doar dacă parola constă doar din numere diff --git a/app/src/main/res/values-ru-rRU/strings.xml b/app/src/main/res/values-ru-rRU/strings.xml index b254657c85..999a93ae91 100644 --- a/app/src/main/res/values-ru-rRU/strings.xml +++ b/app/src/main/res/values-ru-rRU/strings.xml @@ -310,8 +310,6 @@ Сделать ключи более различимыми, временно выделяя их при нажатии Сворачивать при копировании Сворачивать приложение после копирования ключа - Копировать ключи при нажатии - Копировать ключи в буфер обмена при нажатии на них Замораживать ключи при нажатии Приостановить автоматическое обновление ключей принажатии на них. Ключи не будут обновляться до тех пор, пока отображаются. Для обновления потребуется «Выделять ключи при нажатии» или «Отображение по нажатию». Введите свой пароль, чтобы включить PIN-клавиатуру. Обратите внимание, что это работает, только если ваш пароль состоит из цифр. diff --git a/app/src/main/res/values-sk-rSK/strings.xml b/app/src/main/res/values-sk-rSK/strings.xml index a0c9c982d6..435c5f77f7 100644 --- a/app/src/main/res/values-sk-rSK/strings.xml +++ b/app/src/main/res/values-sk-rSK/strings.xml @@ -182,7 +182,6 @@ Zvýrazniť tokeny po klepnutí Minimalizovať pri kopírovaní Minimalizujte aplikáciu po skopírovaní tokenu - Po klepnutí skopírujte tokeny Zvolené Tmavá téma Svetlá téma diff --git a/app/src/main/res/values-sv-rSE/strings.xml b/app/src/main/res/values-sv-rSE/strings.xml index 981857d2fc..765f18906f 100644 --- a/app/src/main/res/values-sv-rSE/strings.xml +++ b/app/src/main/res/values-sv-rSE/strings.xml @@ -294,8 +294,6 @@ Gör polletterna lättare att särskilja från varandra genom att tillfälligt markera dem vid tryck Minimera vid kopiering Minimerar appen efter att en pollett har kopierats - Kopiera polletter vid tryck - Kopiera polletterna till urklipp genom att trycka på dem Frys polletter vid tryck Pausa automatisk uppdatering av polletterna genom att trycka på dem. Polletterna kommer inte att uppdateras så länge som de är i fokus. Kräver \"Markera polletter vid tryck\" eller \"Tryck för att visa\". Ange ditt lösenord för att aktivera pinkodstangentbordet. Observera att detta bara fungerar om ditt lösenord endast består av siffror. diff --git a/app/src/main/res/values-tr-rTR/strings.xml b/app/src/main/res/values-tr-rTR/strings.xml index 1b96ab6b3e..5ca16c736f 100644 --- a/app/src/main/res/values-tr-rTR/strings.xml +++ b/app/src/main/res/values-tr-rTR/strings.xml @@ -294,8 +294,6 @@ Kodların birbirlerinden ayırt edilmelerini kolaylaştırmak için geçici olarak belirginleştir Kopyalarken simge durumuna küçült Bir anahtarı kopyaladıktan sonra uygulamayı simge durumuna küçültün - Dokunulduğunda güvenlik belirteçlerini kopyala - Güvenlik belirteçlerine dokunarak panoya kopyala Dokunulduğunda kodların yenilenmesini önle Kodlara dokunarak yenilenmelerini önleyin. Odakta oldukları sürece kodlar yenilenmeyecektir. \"Dokunulan kodları belirt\" veya \"Görmek için dokunun\" açık olmasını gerektirir. PIN klavyesini etkinleştirmek için şifrenizi girin. Bu şifreniz yalnızca rakamlardan oluşuyorsa çalışır diff --git a/app/src/main/res/values-uk-rUA/strings.xml b/app/src/main/res/values-uk-rUA/strings.xml index 250af1f1da..a45f246d15 100644 --- a/app/src/main/res/values-uk-rUA/strings.xml +++ b/app/src/main/res/values-uk-rUA/strings.xml @@ -303,8 +303,6 @@ Підсвічувати токени при натисканні для того, щоб їх було легше відрізнити один від одного Згортати при копіюванні Згортати додаток після копіювання токена - Копіювати токени при натисканні - Копіювати токени в буфер обміну при натиску на них Заморожувати токени при натисканні Призупиніть автоматичне оновлення токенів, натиснувши на них. Токени не будуть оновлюватися, поки вони підсвічені. Потребує увімкненої опції \"Підсвічувати токени при натисканні\", або \"Безпека -> Показувати після дотику\". Введіть свій пароль, щоб увімкнути PIN-клавіатуру. Зауважте, що це можливо лише, якщо ваш пароль складається виключно з цифр diff --git a/app/src/main/res/values-vi-rVN/strings.xml b/app/src/main/res/values-vi-rVN/strings.xml index f22ec59885..10a6438ff5 100644 --- a/app/src/main/res/values-vi-rVN/strings.xml +++ b/app/src/main/res/values-vi-rVN/strings.xml @@ -252,8 +252,6 @@ Xoá Đánh dấu các token khi được nhấn vào Làm cho các token dễ phân biệt với nhau hơn bằng cách tạm thời đánh dấu chúng khi được nhấn vào - Sao chép các token khi được nhấn vào - Sao chép các token vào bộ nhớ tạm bằng cách nhấn vào chúng Đóng băng các token khi được nhấn vào Tạm dừng làm mới tự động các token bằng cách nhấn vào chúng. Các token sẽ không cập nhật khi chúng được tập trung vào. Bắt buộc phải có \"Đánh dấu các token khi được nhấn vào\" hoặc \"Nhấn để hiện ra\". Nhập mật khẩu để bật bàn phím mã PIN. Lưu ý rằng việc này chỉ được nếu mật khẩu của bạn chỉ chứa các chữ số diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 4d291977b1..5e53f1f82b 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -286,8 +286,6 @@ 使令牌在点击后暂时高亮显示以便区分 复制时最小化 复制令牌后最小化应用 - 点击时复制令牌 - 通过点击将令牌复制到剪贴板 轻按冻结令牌 通过轻按令牌来暂停它们的自动刷新。 只要被聚焦,令牌就不会更新。 需要启用“轻按突出显示令牌”或“轻按显示”。 请输入您的密码以启用 PIN 键盘。请注意,只有当您的密码仅由数字构成时才能使用 diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 0997e7e9d2..296e9d53ca 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -252,8 +252,6 @@ 清除 強調選取的憑證 輕觸後暫時凸顯該驗證碼以與它者區分 - 輕觸以複製驗證碼 - 輕觸以將驗證碼複製至剪貼簿 被觸碰時凍結驗證碼 輕觸以暫停驗證碼的自動更新機制:只要驗證碼還在焦點上,它們就不會被自動更新。需要啟用「輕觸以顯示」或「強調選取的憑證」功能。 請輸入您的密碼以啟用 PIN 鍵盤。請注意,只有當您的密碼僅由數字構成時才能使用 diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index b0be9b996d..22795f3d41 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -149,4 +149,10 @@ GROUPING_THREES GROUPING_FOURS + + + @string/pref_copy_behavior_never + @string/pref_copy_behavior_single_tap + @string/pref_copy_behavior_double_tap + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c5455c48c0..780d7dc96b 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -243,6 +243,7 @@ Select the application you\'d like to import from Select your desired theme Select your desired view mode + Select your desired copy behavior An error occurred while trying to parse the file Error: File not found An error occurred while trying to read the file @@ -307,8 +308,7 @@ Make tokens easier to distinguish from each other by temporarily highlighting them when tapped Minimize on copy Minimize the app after copying a token - Copy tokens when tapped - Copy tokens to the clipboard by tapping them + Copy tokens to the clipboard Freeze tokens when tapped Pause automatic refresh of tokens by tapping them. Tokens will not update as long as they are focused. Requires \"Highlight tokens when tapped\" or \"Tap to reveal\". @@ -494,6 +494,10 @@ Groups of 3 Groups of 4 + Never + Single tap + Double tap + %d second ago %d seconds ago diff --git a/app/src/main/res/xml/preferences_behavior.xml b/app/src/main/res/xml/preferences_behavior.xml index 4eece1bac2..f5fd35355f 100644 --- a/app/src/main/res/xml/preferences_behavior.xml +++ b/app/src/main/res/xml/preferences_behavior.xml @@ -14,12 +14,13 @@ android:title="@string/pref_minimize_on_copy_title" android:summary="@string/pref_minimize_on_copy_summary" app:iconSpaceReserved="false"/> - +