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 00000000..4b9b844e --- /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 9c7bd335..0b00966c 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 class Preferences { 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() { @@ -448,8 +464,12 @@ public class Preferences { _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 223a15ed..1708fdff 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.app.AlertDialog; import androidx.appcompat.view.ActionMode; import androidx.appcompat.widget.SearchView; +import com.beemdevelopment.aegis.CopyBehavior; import com.beemdevelopment.aegis.AccountNamePosition; import com.beemdevelopment.aegis.Preferences; import com.beemdevelopment.aegis.R; @@ -140,7 +141,7 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene _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); @@ -278,7 +279,7 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene boolean tapToReveal = _prefs.isTapToRevealEnabled(); int tapToRevealTime = _prefs.getTapToRevealTime(); ViewMode viewMode = _prefs.getCurrentViewMode(); - boolean copyOnTap = _prefs.isCopyOnTapEnabled(); + CopyBehavior copyBehavior = _prefs.getCopyBehavior(); _entryListView.setAccountNamePosition(accountNamePosition); _entryListView.setShowIcon(showIcons); _entryListView.setCodeGroupSize(codeGroupSize); @@ -287,7 +288,7 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene _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 83a7991c..47646418 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 @@ package com.beemdevelopment.aegis.ui.fragments.preferences; 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 class BehaviorPreferencesFragment extends PreferencesFragment { 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 98a049f4..c3ff1ae8 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.text.style.StyleSpan; 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.AccountNamePosition; import com.beemdevelopment.aegis.R; import com.beemdevelopment.aegis.Preferences; @@ -46,7 +48,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 AccountNamePosition _accountNamePosition; private boolean _showIcon; @@ -54,7 +56,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; @@ -62,6 +64,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 @@ -74,6 +77,7 @@ public class EntryAdapter extends RecyclerView.Adapter _groupFilter = new ArrayList<>(); _holders = new ArrayList<>(); _dimHandler = new Handler(); + _doubleTapHandler = new Handler(); _view = view; } @@ -112,9 +116,7 @@ public class EntryAdapter extends RecyclerView.Adapter _tempHighlightEntry = highlightEntry; } - public void setIsCopyOnTapEnabled(boolean enabled) { - _copyOnTap = enabled; - } + public void setCopyBehavior(CopyBehavior copyBehavior) { _copyBehavior = copyBehavior; } public void setPauseFocused(boolean pauseFocused) { _pauseFocused = pauseFocused; @@ -436,26 +438,36 @@ public class EntryAdapter extends RecyclerView.Adapter 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; + + // Prevent copying when singletap is set and focus is reset + handled = _copyBehavior == CopyBehavior.SINGLETAP; } else { focusEntry(entry, _tapToRevealTime); } - } else { - _copiedEntry = null; + } + + switch (_copyBehavior) { + case SINGLETAP: + if (!handled) { + _view.onEntryCopy(entry); + entryHolder.animateCopyText(); + _clickedEntry = null; + } + break; + case DOUBLETAP: + _doubleTapHandler.postDelayed(() -> _clickedEntry = null, ViewConfiguration.getDoubleTapTimeout()); + + if(entry == _clickedEntry) { + _view.onEntryCopy(entry); + entryHolder.animateCopyText(); + _clickedEntry = null; + } else { + _clickedEntry = entry; + } + break; } 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 e13601c6..a33103c1 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.ItemTouchHelper; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; +import com.beemdevelopment.aegis.CopyBehavior; import com.beemdevelopment.aegis.AccountNamePosition; import com.beemdevelopment.aegis.Preferences; import com.beemdevelopment.aegis.R; @@ -174,8 +175,8 @@ public class EntryListView extends Fragment implements EntryAdapter.Listener { _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 71019f4b..08e66294 100644 --- a/app/src/main/res/values-ar-rSA/strings.xml +++ b/app/src/main/res/values-ar-rSA/strings.xml @@ -283,8 +283,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 6f7652ed..fef8dac9 100644 --- a/app/src/main/res/values-ast-rES/strings.xml +++ b/app/src/main/res/values-ast-rES/strings.xml @@ -287,8 +287,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 6d8bc394..1a807a23 100644 --- a/app/src/main/res/values-bg-rBG/strings.xml +++ b/app/src/main/res/values-bg-rBG/strings.xml @@ -197,8 +197,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 28316280..a7d5846b 100644 --- a/app/src/main/res/values-ca-rES/strings.xml +++ b/app/src/main/res/values-ca-rES/strings.xml @@ -287,8 +287,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 e8420820..ff88e1a1 100644 --- a/app/src/main/res/values-cs-rCZ/strings.xml +++ b/app/src/main/res/values-cs-rCZ/strings.xml @@ -308,8 +308,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 864b601e..25c3e048 100644 --- a/app/src/main/res/values-da-rDK/strings.xml +++ b/app/src/main/res/values-da-rDK/strings.xml @@ -292,8 +292,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 935ed598..af9c3bc9 100644 --- a/app/src/main/res/values-de-rDE/strings.xml +++ b/app/src/main/res/values-de-rDE/strings.xml @@ -292,8 +292,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 da91abaf..c10efa12 100644 --- a/app/src/main/res/values-el-rGR/strings.xml +++ b/app/src/main/res/values-el-rGR/strings.xml @@ -292,8 +292,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 5d5615f5..0b0f9683 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -292,8 +292,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 68c63610..9bf72716 100644 --- a/app/src/main/res/values-eu-rES/strings.xml +++ b/app/src/main/res/values-eu-rES/strings.xml @@ -287,8 +287,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 2cc61ea8..98aad388 100644 --- a/app/src/main/res/values-fa-rIR/strings.xml +++ b/app/src/main/res/values-fa-rIR/strings.xml @@ -215,8 +215,6 @@ اینجا می‌توانید گروه ها را مدیریت و یا حذف کنید توکن ها پس از لمس هایلایت شوند برای تمیز دادن توکن مورد نظر از بقیه می‌توانید آنها را به صورت موقت با لمس کردن هایلایت کنید - کپی توکن هنگام لمس آنها - کپی کردن توکن ها در کلیپ‌بورد با لمس آنها کلمه عبور خود را برای فعال کردن صفحه کلید شماره‌ای وارد کنید. این ویژگی فقط برای کلمه عبور های شامل فقط عدد کاربرد دارد خطا در فعال کردن صفحه کلید شماره‌ای امکان فعال صفحه کلید شماره‌ای نیست. کلمه عبور شما باید فقط شامل عدد باشد. diff --git a/app/src/main/res/values-fi-rFI/strings.xml b/app/src/main/res/values-fi-rFI/strings.xml index 3324aa40..86ae934c 100644 --- a/app/src/main/res/values-fi-rFI/strings.xml +++ b/app/src/main/res/values-fi-rFI/strings.xml @@ -289,8 +289,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 328f7a50..6627ac94 100644 --- a/app/src/main/res/values-fr-rFR/strings.xml +++ b/app/src/main/res/values-fr-rFR/strings.xml @@ -292,8 +292,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 bf18c5ab..9e61097e 100644 --- a/app/src/main/res/values-gl-rES/strings.xml +++ b/app/src/main/res/values-gl-rES/strings.xml @@ -287,8 +287,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 0a2573de..5da2091e 100644 --- a/app/src/main/res/values-hi-rIN/strings.xml +++ b/app/src/main/res/values-hi-rIN/strings.xml @@ -240,8 +240,6 @@ खाली करें टैप करने पर टोकन हाइलाइट करें टैप करने पर टोकनों को एक दूसरे से अलग उजागर करने के लिए उन्हें अस्थायी रूप से हाईलाइट करें - टैप करने पर टोकनों को कॉपी करें - टोकानों पर टैप करके क्लिपबोर्ड में कॉपी करें टैप किए जाने पर टोकन फ़्रीज़ करें टोकन को टैप करके उनके स्वचालित रीफ़्रेश को रोकें। जब तक वे केंद्रित हैं तब तक टोकन अपडेट नहीं होंगे। \"टैप किए जाने पर टोकन हाइलाइट करें\" या \"प्रकट करने के लिए टैप करें\" की आवश्यकता है। पिन कीबोर्ड को सक्षम करने के लिए अपना पासवर्ड दर्ज करें। ध्यान दें कि यह केवल तभी काम करता है जब आपके पासवर्ड में केवल संख्याएँ हों diff --git a/app/src/main/res/values-hu-rHU/strings.xml b/app/src/main/res/values-hu-rHU/strings.xml index 07ff98e3..2723c026 100644 --- a/app/src/main/res/values-hu-rHU/strings.xml +++ b/app/src/main/res/values-hu-rHU/strings.xml @@ -223,8 +223,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 84a4c58e..841b521a 100644 --- a/app/src/main/res/values-in-rID/strings.xml +++ b/app/src/main/res/values-in-rID/strings.xml @@ -242,8 +242,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 68c773e7..cb2ba551 100644 --- a/app/src/main/res/values-it-rIT/strings.xml +++ b/app/src/main/res/values-it-rIT/strings.xml @@ -292,8 +292,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 edc0f4ee..2417894d 100644 --- a/app/src/main/res/values-iw-rIL/strings.xml +++ b/app/src/main/res/values-iw-rIL/strings.xml @@ -285,8 +285,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 fd52a681..879d49ef 100644 --- a/app/src/main/res/values-ja-rJP/strings.xml +++ b/app/src/main/res/values-ja-rJP/strings.xml @@ -284,8 +284,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 234ba8f1..f3071a8d 100644 --- a/app/src/main/res/values-lt-rLT/strings.xml +++ b/app/src/main/res/values-lt-rLT/strings.xml @@ -210,8 +210,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 4a7b4921..cb647166 100644 --- a/app/src/main/res/values-lv-rLV/strings.xml +++ b/app/src/main/res/values-lv-rLV/strings.xml @@ -300,8 +300,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 41612665..52f5fd4f 100644 --- a/app/src/main/res/values-nl-rNL/strings.xml +++ b/app/src/main/res/values-nl-rNL/strings.xml @@ -292,8 +292,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 ef5fcd9f..fea2f6ad 100644 --- a/app/src/main/res/values-pl-rPL/strings.xml +++ b/app/src/main/res/values-pl-rPL/strings.xml @@ -308,8 +308,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 a36ffba8..9aa57b33 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -292,8 +292,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 47d18bf2..cf00e239 100644 --- a/app/src/main/res/values-pt-rPT/strings.xml +++ b/app/src/main/res/values-pt-rPT/strings.xml @@ -170,8 +170,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 db513805..c24b3943 100644 --- a/app/src/main/res/values-ro-rRO/strings.xml +++ b/app/src/main/res/values-ro-rRO/strings.xml @@ -296,8 +296,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 bf62a1f1..83852833 100644 --- a/app/src/main/res/values-ru-rRU/strings.xml +++ b/app/src/main/res/values-ru-rRU/strings.xml @@ -308,8 +308,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 8ea57b1b..494bbdaf 100644 --- a/app/src/main/res/values-sk-rSK/strings.xml +++ b/app/src/main/res/values-sk-rSK/strings.xml @@ -180,7 +180,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 01691704..7c1e3dc0 100644 --- a/app/src/main/res/values-sv-rSE/strings.xml +++ b/app/src/main/res/values-sv-rSE/strings.xml @@ -292,8 +292,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 e853f756..a9d806e6 100644 --- a/app/src/main/res/values-tr-rTR/strings.xml +++ b/app/src/main/res/values-tr-rTR/strings.xml @@ -292,8 +292,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 69b2841e..ae180238 100644 --- a/app/src/main/res/values-uk-rUA/strings.xml +++ b/app/src/main/res/values-uk-rUA/strings.xml @@ -301,8 +301,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 cc939054..764cdf7b 100644 --- a/app/src/main/res/values-vi-rVN/strings.xml +++ b/app/src/main/res/values-vi-rVN/strings.xml @@ -250,8 +250,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 2e845d53..7185bd53 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -284,8 +284,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 103e4ca6..b4711123 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -250,8 +250,6 @@ 清除 強調選取的憑證 輕觸後暫時凸顯該驗證碼以與它者區分 - 輕觸以複製驗證碼 - 輕觸以將驗證碼複製至剪貼簿 被觸碰時凍結驗證碼 輕觸以暫停驗證碼的自動更新機制:只要驗證碼還在焦點上,它們就不會被自動更新。需要啟用「輕觸以顯示」或「強調選取的憑證」功能。 請輸入您的密碼以啟用 PIN 鍵盤。請注意,只有當您的密碼僅由數字構成時才能使用 diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index 9e8ce27d..e01112f8 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -155,4 +155,10 @@ @string/pref_account_name_position_end @string/pref_account_name_position_below + + + @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 e9d65adb..58a6a87f 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -245,6 +245,7 @@ Select your desired theme Select your desired account name position 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 @@ -309,8 +310,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\". @@ -496,6 +496,10 @@ Groups of 3 Groups of 4 + Never + Single tap + Double tap + Hidden Next to the issuer Below the issuer diff --git a/app/src/main/res/xml/preferences_behavior.xml b/app/src/main/res/xml/preferences_behavior.xml index 4eece1ba..f5fd3535 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"/> - +