Setting to disable save autofill data

This commit is contained in:
J-Jamet
2020-10-05 20:39:33 +02:00
parent 6f026e6043
commit c953a337fe
48 changed files with 103 additions and 78 deletions

View File

@@ -54,9 +54,9 @@ class AutofillLauncherActivity : AppCompatActivity() {
if (assistStructure == null) {
setResult(Activity.RESULT_CANCELED)
finish()
} else if (!KeeAutofillService.searchAllowedFor(searchInfo.applicationId,
} else if (!KeeAutofillService.autofillAllowedFor(searchInfo.applicationId,
PreferencesUtil.applicationIdBlocklist(this))
|| !KeeAutofillService.searchAllowedFor(searchInfo.webDomain,
|| !KeeAutofillService.autofillAllowedFor(searchInfo.webDomain,
PreferencesUtil.webDomainBlocklist(this))) {
// If item not allowed, show a toast
Toast.makeText(this.applicationContext, R.string.autofill_block_restart, Toast.LENGTH_LONG).show()

View File

@@ -38,27 +38,29 @@ class KeeAutofillService : AutofillService() {
var applicationIdBlocklist: Set<String>? = null
var webDomainBlocklist: Set<String>? = null
var askToSaveData: Boolean = false
override fun onCreate() {
super.onCreate()
applicationIdBlocklist = PreferencesUtil.applicationIdBlocklist(this)
webDomainBlocklist = PreferencesUtil.webDomainBlocklist(this)
askToSaveData = PreferencesUtil.askToSaveAutofillData(this) // TODO apply when changed
}
override fun onFillRequest(request: FillRequest,
cancellationSignal: CancellationSignal,
callback: FillCallback) {
val latestStructure = request.fillContexts.last().structure
cancellationSignal.setOnCancelListener { Log.w(TAG, "Cancel autofill.") }
// Check user's settings for authenticating Responses and Datasets.
val latestStructure = request.fillContexts.last().structure
StructureParser(latestStructure).parse()?.let { parseResult ->
// Build search info only if applicationId or webDomain are not blocked
if (searchAllowedFor(parseResult.applicationId, applicationIdBlocklist)
&& searchAllowedFor(parseResult.domain, webDomainBlocklist)) {
if (autofillAllowedFor(parseResult.applicationId, applicationIdBlocklist)
&& autofillAllowedFor(parseResult.domain, webDomainBlocklist)) {
val searchInfo = SearchInfo().apply {
applicationId = parseResult.applicationId
webDomain = parseResult.domain
@@ -110,7 +112,9 @@ class KeeAutofillService : AutofillService() {
} else {
RemoteViews(packageName, R.layout.item_autofill_unlock)
}
// Tell to service the interest to save credentials
if (askToSaveData) {
var types: Int = SaveInfo.SAVE_DATA_TYPE_GENERIC
val info = ArrayList<AutofillId>()
// Only if at least a password
@@ -127,6 +131,7 @@ class KeeAutofillService : AutofillService() {
SaveInfo.Builder(types, info.toTypedArray()).build()
)
}
}
// Build response
responseBuilder.setAuthentication(autofillIds, sender, remoteViewsUnlock)
callback.onSuccess(responseBuilder.build())
@@ -135,17 +140,20 @@ class KeeAutofillService : AutofillService() {
}
override fun onSaveRequest(request: SaveRequest, callback: SaveCallback) {
val fillContexts = request.fillContexts
val latestStructure = fillContexts[fillContexts.size - 1].structure
val latestStructure = request.fillContexts.last().structure
StructureParser(latestStructure).parse()?.let { parseResult ->
StructureParser(latestStructure, true).parse()?.let { parseResult ->
if (autofillAllowedFor(parseResult.applicationId, applicationIdBlocklist)
&& autofillAllowedFor(parseResult.domain, webDomainBlocklist)) {
parseResult.passwordValue?.let { autofillPasswordValue ->
Log.d(TAG, "autofill onSaveRequest password ${autofillPasswordValue.textValue}")
// TODO Save data
callback.onSuccess()
return
}
}
callback.onFailure("Unable to save values from form")
}
callback.onFailure("Saving form values is not allowed")
}
override fun onConnected() {
@@ -159,7 +167,7 @@ class KeeAutofillService : AutofillService() {
companion object {
private val TAG = KeeAutofillService::class.java.name
fun searchAllowedFor(element: String?, blockList: Set<String>?): Boolean {
fun autofillAllowedFor(element: String?, blockList: Set<String>?): Boolean {
element?.let { elementNotNull ->
if (blockList?.any { appIdBlocked ->
elementNotNull.contains(appIdBlocked)

View File

@@ -33,8 +33,7 @@ import java.util.*
* Parse AssistStructure and guess username and password fields.
*/
@RequiresApi(api = Build.VERSION_CODES.O)
internal class StructureParser(private val structure: AssistStructure,
private val retrieveValues: Boolean = false) {
internal class StructureParser(private val structure: AssistStructure) {
private var result: Result? = null
private var usernameCandidate: AutofillId? = null
private var usernameNeeded = true

View File

@@ -381,6 +381,12 @@ object PreferencesUtil {
context.resources.getBoolean(R.bool.autofill_auto_search_default))
}
fun askToSaveAutofillData(context: Context): Boolean {
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
return prefs.getBoolean(context.getString(R.string.autofill_ask_to_save_data_key),
context.resources.getBoolean(R.bool.autofill_ask_to_save_data_default))
}
/**
* Retrieve the default Blocklist for application ID, including the current app
*/

View File

@@ -39,7 +39,7 @@
<string name="entry_modified">معدل</string>
<string name="entry_not_found">تعذر العثور على بيانات المُدخلة.</string>
<string name="entry_password">كلمة السر</string>
<string name="entry_save">حفظ</string>
<string name="save">حفظ</string>
<string name="entry_title">العنوان</string>
<string name="entry_url">رابط</string>
<string name="entry_user_name">اسم المستخدم</string>

View File

@@ -51,7 +51,7 @@
<string name="entry_keyfile">Arxiu clau</string>
<string name="entry_modified">Modificada</string>
<string name="entry_password">Contrasenya</string>
<string name="entry_save">Guarda</string>
<string name="save">Guarda</string>
<string name="entry_title">Nom</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Usuari</string>

View File

@@ -53,7 +53,7 @@
<string name="entry_modified">Změněno</string>
<string name="entry_not_found">Data záznamu nenalezena.</string>
<string name="entry_password">Heslo</string>
<string name="entry_save">Uložit</string>
<string name="save">Uložit</string>
<string name="entry_title">Název</string>
<string name="entry_url">URL adresa</string>
<string name="entry_user_name">Uživatelské jméno</string>

View File

@@ -52,7 +52,7 @@
<string name="entry_modified">Ændret</string>
<string name="entry_not_found">Data for posten blev ikke fundet.</string>
<string name="entry_password">Adgangskode</string>
<string name="entry_save">Gem</string>
<string name="save">Gem</string>
<string name="entry_title">Titel</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Brugernavn</string>

View File

@@ -61,7 +61,7 @@
<string name="entry_modified">Änderungsdatum</string>
<string name="entry_not_found">Zugriffsdaten wurden nicht gefunden.</string>
<string name="entry_password">Passwort</string>
<string name="entry_save">Speichern</string>
<string name="save">Speichern</string>
<string name="entry_title">Titel</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Benutzername</string>

View File

@@ -55,7 +55,7 @@
<string name="entry_modified">Τροποποιήθηκε</string>
<string name="entry_not_found">Δεν ήταν δυνατή η εύρεση δεδομένων εισόδου.</string>
<string name="entry_password">Κωδικός Πρόσβασης</string>
<string name="entry_save">Αποθήκευση</string>
<string name="save">Αποθήκευση</string>
<string name="entry_title">Τίτλος</string>
<string name="entry_url">Διεύθυνση URL</string>
<string name="entry_user_name">Όνομα Χρήστη</string>

View File

@@ -52,7 +52,7 @@
<string name="entry_keyfile">Archivo de clave</string>
<string name="entry_modified">Modificación</string>
<string name="entry_password">Contraseña</string>
<string name="entry_save">Guardar</string>
<string name="save">Guardar</string>
<string name="entry_title">Nombre</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Nombre de usuario</string>

View File

@@ -55,7 +55,7 @@
<string name="entry_modified">Aldatua</string>
<string name="entry_not_found">Sarreraren datuak ez aurkituak.</string>
<string name="entry_password">Pasahitza</string>
<string name="entry_save">Gorde</string>
<string name="save">Gorde</string>
<string name="entry_title">Izena</string>
<string name="entry_url">URLa</string>
<string name="entry_user_name">Erabiltzaile izena</string>

View File

@@ -184,7 +184,7 @@
<string name="otp_type">نوع OTP</string>
<string name="entry_setup_otp">گذرواژه یکبار مصرف تنظیم کنید</string>
<string name="entry_title">عنوان</string>
<string name="entry_save">ذخیره</string>
<string name="save">ذخیره</string>
<string name="entry_password">رمز عبور</string>
<string name="entry_not_found">نمی توانست داده های ورودی را پیدا کند.</string>
<string name="entry_modified">تغییر</string>

View File

@@ -55,7 +55,7 @@
<string name="entry_modified">Muokattu</string>
<string name="entry_not_found">Tietueen tietoja ei löytynyt.</string>
<string name="entry_password">Salasana</string>
<string name="entry_save">Tallenna</string>
<string name="save">Tallenna</string>
<string name="entry_title">Nimi</string>
<string name="entry_url">URL-osoite</string>
<string name="entry_user_name">Käyttäjänimi</string>

View File

@@ -59,7 +59,7 @@
<string name="entry_modified">Modifiée</string>
<string name="entry_not_found">Impossible de trouver les données de lentrée.</string>
<string name="entry_password">Mot de passe</string>
<string name="entry_save">Enregistrer</string>
<string name="save">Enregistrer</string>
<string name="entry_title">Titre</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Nom dutilisateur</string>

View File

@@ -50,7 +50,7 @@
<string name="entry_expires">Caduca</string>
<string name="entry_modified">Modificado</string>
<string name="entry_password">Contrasinal</string>
<string name="entry_save">Gardar</string>
<string name="save">Gardar</string>
<string name="entry_title">Nome</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Usuario</string>

View File

@@ -57,7 +57,7 @@
<string name="entry_modified">संशोधित</string>
<string name="entry_not_found">प्रवेश का डाटा नहीं मिल सका।</string>
<string name="entry_password">पासवर्ड</string>
<string name="entry_save">सहेजें</string>
<string name="save">सहेजें</string>
<string name="entry_title">शीर्षक</string>
<string name="entry_url">यू.आर.एल</string>
<string name="entry_user_name">उपयोगकर्ता का नाम</string>

View File

@@ -72,7 +72,7 @@
<string name="content_description_keyfile_checkbox">Potvrdni okvir datoteke ključa</string>
<string name="entry_keyfile">Datoteka ključa</string>
<string name="entry_password">Lozinka</string>
<string name="entry_save">Spremi</string>
<string name="save">Spremi</string>
<string name="entry_title">Naslov</string>
<string name="entry_setup_otp">Postavi jednokratnu lozinku</string>
<string name="otp_type">Tip OTP-a</string>

View File

@@ -54,7 +54,7 @@
<string name="entry_keyfile">Kulcsfájl</string>
<string name="entry_modified">Módosítva</string>
<string name="entry_password">Jelszó</string>
<string name="entry_save">Mentés</string>
<string name="save">Mentés</string>
<string name="entry_title">Név</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Felhasználónév</string>

View File

@@ -109,7 +109,7 @@
<string name="otp_period">Periode (detik)</string>
<string name="otp_secret">Rahasia</string>
<string name="entry_title">Judul</string>
<string name="entry_save">Simpan</string>
<string name="save">Simpan</string>
<string name="entry_password">Kata Sandi</string>
<string name="entry_not_found">Tidak bisa menemukan data entri.</string>
<string name="retrieving_db_key">Mengambil kunci basisdata…</string>

View File

@@ -57,7 +57,7 @@
<string name="entry_modified">Modificato</string>
<string name="entry_not_found">Dati non trovati.</string>
<string name="entry_password">Password</string>
<string name="entry_save">Salva</string>
<string name="save">Salva</string>
<string name="entry_title">Nome</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Nome utente</string>

View File

@@ -55,7 +55,7 @@
<string name="entry_modified">נערך לאחרונה</string>
<string name="entry_not_found">נתוני ערך לא נמצאו.</string>
<string name="entry_password">סיסמה</string>
<string name="entry_save">שמור</string>
<string name="save">שמור</string>
<string name="entry_title">שם</string>
<string name="entry_user_name">שם משתמש</string>
<string name="error_arc4">צופן זרם Arcfour אינו נתמך.</string>

View File

@@ -51,7 +51,7 @@
<string name="entry_keyfile">キーファイル</string>
<string name="entry_modified">変更日</string>
<string name="entry_password">パスワード</string>
<string name="entry_save">保存</string>
<string name="save">保存</string>
<string name="entry_title">タイトル</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">ユーザー名</string>

View File

@@ -58,7 +58,7 @@
<string name="entry_modified">수정</string>
<string name="entry_not_found">항목 데이터를 찾을 수 없습니다.</string>
<string name="entry_password">비밀번호</string>
<string name="entry_save">저장</string>
<string name="save">저장</string>
<string name="entry_title">제목</string>
<string name="entry_url">링크</string>
<string name="entry_user_name">아이디</string>

View File

@@ -38,7 +38,7 @@
<string name="entry_modified">Keista</string>
<string name="entry_expires">Pasibaigia</string>
<string name="entry_password">Slaptažodis</string>
<string name="entry_save">Išsaugoti</string>
<string name="save">Išsaugoti</string>
<string name="entry_title">Pavadinimas</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Naudotojo vardas</string>

View File

@@ -52,7 +52,7 @@
<string name="entry_keyfile">Atslēgas fails</string>
<string name="entry_modified">Modificēts</string>
<string name="entry_password">Parole</string>
<string name="entry_save">Saglabāt</string>
<string name="save">Saglabāt</string>
<string name="entry_title">Vārds</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Lietotāja vārds</string>

View File

@@ -97,7 +97,7 @@
<string name="contact">ബന്ധപെടുക</string>
<string name="otp_secret">രഹസ്യം</string>
<string name="entry_title">ശീർഷകം</string>
<string name="entry_save">സംരക്ഷിക്കുക</string>
<string name="save">സംരക്ഷിക്കുക</string>
<string name="entry_password">പാസ്‌വേഡ്</string>
<string name="entry_history">ഹിസ്റ്ററി</string>
<string name="entry_created">സൃഷ്ടിച്ചു</string>

View File

@@ -58,7 +58,7 @@
<string name="entry_modified">Endret</string>
<string name="entry_not_found">Fant ikke oppføringsdata.</string>
<string name="entry_password">Passord</string>
<string name="entry_save">Lagre</string>
<string name="save">Lagre</string>
<string name="entry_title">Tittel</string>
<string name="entry_url">Nettadresse</string>
<string name="entry_user_name">Brukernavn</string>

View File

@@ -53,7 +53,7 @@
<string name="entry_keyfile">Sleutelbestand</string>
<string name="entry_modified">Bewerkt op</string>
<string name="entry_password">Wachtwoord</string>
<string name="entry_save">Opslaan</string>
<string name="save">Opslaan</string>
<string name="entry_title">Naam</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Gebruikersnaam</string>

View File

@@ -50,7 +50,7 @@
<string name="entry_keyfile">Nøkkelfil</string>
<string name="entry_modified">Endra</string>
<string name="entry_password">Passord</string>
<string name="entry_save">Lagra</string>
<string name="save">Lagra</string>
<string name="entry_title">Namn</string>
<string name="entry_url">Adresse</string>
<string name="entry_user_name">Brukaramn</string>

View File

@@ -169,7 +169,7 @@
<string name="otp_type">OTP ਦੀ ਕਿਸਮ</string>
<string name="entry_setup_otp">ਇਕੇਹਰਾ ਪਾਸਵਰਡ ਸੈਟਅੱਪ ਕਰੋ</string>
<string name="entry_title">ਨਾਂ</string>
<string name="entry_save">ਸੰਭਾਲੋ</string>
<string name="save">ਸੰਭਾਲੋ</string>
<string name="entry_password">ਪਾਸਵਰਡ</string>
<string name="entry_not_found">ਐਂਟਰੀ ਡਾਟਾ ਲੱਭਿਆ ਨਹੀਂ ਜਾ ਸਕਿਆ।</string>
<string name="entry_modified">ਸੋਧ ਕੀਤੀ</string>

View File

@@ -49,7 +49,7 @@
<string name="entry_keyfile">Plik klucza</string>
<string name="entry_modified">Zmodyfikowano</string>
<string name="entry_password">Hasło</string>
<string name="entry_save">Zapisz</string>
<string name="save">Zapisz</string>
<string name="entry_title">Tytuł</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Nazwa użytkownika</string>

View File

@@ -50,7 +50,7 @@
<string name="entry_keyfile">Arquivo-chave</string>
<string name="entry_modified">Modificado</string>
<string name="entry_password">Senha</string>
<string name="entry_save">Salvar</string>
<string name="save">Salvar</string>
<string name="entry_title">Nome</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Nome de usuário</string>

View File

@@ -55,7 +55,7 @@
<string name="entry_modified">Modificado</string>
<string name="entry_not_found">Não foi possível encontrar os dados da entrada.</string>
<string name="entry_password">Palavra-passe</string>
<string name="entry_save">Guardar</string>
<string name="save">Guardar</string>
<string name="entry_title">Nome</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Nome de utilizador</string>

View File

@@ -440,7 +440,7 @@
<string name="entry_user_name">Nome de utilizador</string>
<string name="entry_url">URL</string>
<string name="entry_title">Nome</string>
<string name="entry_save">Guardar</string>
<string name="save">Guardar</string>
<string name="entry_password">Palavra-passe</string>
<string name="entry_not_found">Não foi possível encontrar os dados da entrada.</string>
<string name="entry_modified">Modificado</string>

View File

@@ -81,7 +81,7 @@
<string name="entry_modified">Modificat</string>
<string name="entry_not_found">Nu s-au putut găsi date de intrare.</string>
<string name="entry_password">Parola</string>
<string name="entry_save">Salveaza</string>
<string name="save">Salveaza</string>
<string name="entry_title">Titlu</string>
<string name="entry_setup_otp">Setați o singură parolă</string>
<string name="otp_type">Tipul OTP</string>

View File

@@ -55,7 +55,7 @@
<string name="entry_modified">Изменено</string>
<string name="entry_not_found">Данные записи не найдены.</string>
<string name="entry_password">Пароль</string>
<string name="entry_save">Сохранить</string>
<string name="save">Сохранить</string>
<string name="entry_title">Название</string>
<string name="entry_url">Ссылка</string>
<string name="entry_user_name">Имя пользователя</string>

View File

@@ -51,7 +51,7 @@
<string name="entry_keyfile">Súbor s kľúčom</string>
<string name="entry_modified">Upravené</string>
<string name="entry_password">Heslo</string>
<string name="entry_save">Uložiť</string>
<string name="save">Uložiť</string>
<string name="entry_title">Meno</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Meno používateľa</string>

View File

@@ -54,7 +54,7 @@
<string name="entry_keyfile">Nyckelfil</string>
<string name="entry_modified">Ändrad</string>
<string name="entry_password">Lösenord</string>
<string name="entry_save">Spara</string>
<string name="save">Spara</string>
<string name="entry_title">Namn</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Användarnamn</string>

View File

@@ -49,7 +49,7 @@
<string name="entry_modified">Değiştirilmiş</string>
<string name="entry_not_found">Giriş Verisi bulamadı.</string>
<string name="entry_password">Parola</string>
<string name="entry_save">Kaydet</string>
<string name="save">Kaydet</string>
<string name="entry_title">Başlık</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Kullanıcı adı</string>

View File

@@ -51,7 +51,7 @@
<string name="entry_keyfile">Файл ключа</string>
<string name="entry_modified">Змінено</string>
<string name="entry_password">Пароль</string>
<string name="entry_save">Зберегти</string>
<string name="save">Зберегти</string>
<string name="entry_title">Назва</string>
<string name="entry_url">URL</string>
<string name="entry_user_name">Ім’я користувача</string>

View File

@@ -51,7 +51,7 @@
<string name="entry_keyfile">密钥文件</string>
<string name="entry_modified">修改时间</string>
<string name="entry_password">密码</string>
<string name="entry_save">保存</string>
<string name="save">保存</string>
<string name="entry_title">名称</string>
<string name="entry_url">链接</string>
<string name="entry_user_name">用户名</string>

View File

@@ -51,7 +51,7 @@
<string name="entry_keyfile">金鑰檔案</string>
<string name="entry_modified">修改時間</string>
<string name="entry_password">密碼</string>
<string name="entry_save">保存</string>
<string name="save">保存</string>
<string name="entry_title">名稱</string>
<string name="entry_url">網址</string>
<string name="entry_user_name">用戶名</string>

View File

@@ -139,6 +139,8 @@
<bool name="keyboard_previous_fill_in_default" translatable="false">false</bool>
<string name="autofill_auto_search_key" translatable="false">autofill_auto_search_key</string>
<bool name="autofill_auto_search_default" translatable="false">true</bool>
<string name="autofill_ask_to_save_data_key" translatable="false">autofill_ask_to_save_data_key</string>
<bool name="autofill_ask_to_save_data_default" translatable="false">true</bool>
<string name="autofill_application_id_blocklist_key" translatable="false">autofill_application_id_blocklist_key</string>
<string-array name="autofill_application_id_blocklist_default">
</string-array>

View File

@@ -90,7 +90,7 @@
<string name="entry_modified">Modified</string>
<string name="entry_not_found">Could not find entry data.</string>
<string name="entry_password">Password</string>
<string name="entry_save">Save</string>
<string name="save">Save</string>
<string name="entry_title">Title</string>
<string name="entry_setup_otp">Set up one-time password</string>
<string name="otp_type">OTP type</string>
@@ -397,6 +397,8 @@
<string name="keyboard_previous_fill_in_summary">Automatically switch back to the previous keyboard after executing "Auto key action"</string>
<string name="autofill_auto_search_title">Auto search</string>
<string name="autofill_auto_search_summary">Automatically suggest search results from the web domain or application ID</string>
<string name="autofill_ask_to_save_data_title">Ask to save data</string>
<string name="autofill_ask_to_save_data_summary">Ask to save data when a form is validated</string>
<string name="autofill_application_id_blocklist_title">Application blocklist</string>
<string name="autofill_application_id_blocklist_summary">Blocklist that prevents auto filling of apps</string>
<string name="autofill_web_domain_blocklist_title">Web domain blocklist</string>

View File

@@ -26,6 +26,14 @@
android:summary="@string/autofill_auto_search_summary"
android:defaultValue="@bool/autofill_auto_search_default"/>
</PreferenceCategory>
<PreferenceCategory
android:title="@string/save">
<SwitchPreference
android:key="@string/autofill_ask_to_save_data_key"
android:title="@string/autofill_ask_to_save_data_title"
android:summary="@string/autofill_ask_to_save_data_summary"
android:defaultValue="@bool/autofill_ask_to_save_data_default"/>
</PreferenceCategory>
<PreferenceCategory
android:title="@string/filter">
<com.kunzisoft.keepass.settings.preference.InputListPreference

View File

@@ -28,19 +28,19 @@
android:key="@string/database_name_key"
android:persistent="false"
android:title="@string/database_name_title"
android:positiveButtonText="@string/entry_save"
android:positiveButtonText="@string/save"
android:negativeButtonText="@string/entry_cancel"/>
<com.kunzisoft.keepass.settings.preference.InputTextPreference
android:key="@string/database_description_key"
android:persistent="false"
android:title="@string/database_description_title"
android:positiveButtonText="@string/entry_save"
android:positiveButtonText="@string/save"
android:negativeButtonText="@string/entry_cancel"/>
<com.kunzisoft.keepass.settings.preference.InputTextPreference
android:key="@string/database_default_username_key"
android:persistent="false"
android:title="@string/database_default_username_title"
android:positiveButtonText="@string/entry_save"
android:positiveButtonText="@string/save"
android:negativeButtonText="@string/entry_cancel"/>
<com.kunzisoft.keepass.settings.preference.DialogColorPreference
xmlns:chroma="http://schemas.android.com/apk/res-auto"
@@ -99,14 +99,14 @@
android:key="@string/max_history_items_key"
android:persistent="false"
android:title="@string/max_history_items_title"
android:positiveButtonText="@string/entry_save"
android:positiveButtonText="@string/save"
android:negativeButtonText="@string/entry_cancel"/>
<com.kunzisoft.keepass.settings.preference.InputNumberPreference
android:key="@string/max_history_size_key"
android:persistent="false"
android:title="@string/max_history_size_title"
android:summary="@string/max_history_size_summary"
android:positiveButtonText="@string/entry_save"
android:positiveButtonText="@string/save"
android:negativeButtonText="@string/entry_cancel"/>
</PreferenceCategory>

View File

@@ -43,21 +43,21 @@
android:persistent="false"
android:title="@string/rounds"
custom:explanations="@string/rounds_explanation"
android:positiveButtonText="@string/entry_save"
android:positiveButtonText="@string/save"
android:negativeButtonText="@string/entry_cancel"/>
<com.kunzisoft.keepass.settings.preference.InputKdfNumberPreference
android:key="@string/memory_usage_key"
android:persistent="false"
android:title="@string/memory_usage"
custom:explanations="@string/memory_usage_explanation"
android:positiveButtonText="@string/entry_save"
android:positiveButtonText="@string/save"
android:negativeButtonText="@string/entry_cancel"/>
<com.kunzisoft.keepass.settings.preference.InputKdfNumberPreference
android:key="@string/parallelism_key"
android:persistent="false"
android:title="@string/parallelism"
custom:explanations="@string/parallelism_explanation"
android:positiveButtonText="@string/entry_save"
android:positiveButtonText="@string/save"
android:negativeButtonText="@string/entry_cancel"/>
</PreferenceCategory>