mirror of
https://github.com/Kunzisoft/KeePassDX.git
synced 2025-12-04 15:49:33 +01:00
Compare commits
135 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
0ef574d675 | ||
|
|
6d15a2462d | ||
|
|
24fcdeb7aa | ||
|
|
13905db732 | ||
|
|
6e1c8e5bec | ||
|
|
9aa1d11b94 | ||
|
|
6c9f359fae | ||
|
|
531ebcae85 | ||
|
|
fe9601b510 | ||
|
|
bdf7cc6ea0 | ||
|
|
1cfe02af6f | ||
|
|
11da0a4500 | ||
|
|
fd736bd1c2 | ||
|
|
ca6a4bfeef | ||
|
|
02e9debc42 | ||
|
|
9bc9bd8b95 | ||
|
|
d810f79b7a | ||
|
|
f3468951f1 | ||
|
|
7ec5badabb | ||
|
|
fe92e41e91 | ||
|
|
e58c2f2a99 | ||
|
|
aecfbc7728 | ||
|
|
bdf9b864d4 | ||
|
|
1c0f1a036b | ||
|
|
1868d90693 | ||
|
|
da0c19e068 | ||
|
|
d1103d8db4 | ||
|
|
b2e92646a1 | ||
|
|
831b649cbb | ||
|
|
ded3c204b9 | ||
|
|
23eec5f066 | ||
|
|
6c167090e1 | ||
|
|
7d9eca0d46 | ||
|
|
c551aff474 | ||
|
|
e627745358 | ||
|
|
5a30d9d2b5 | ||
|
|
0a46817bbc | ||
|
|
a4134fa8c8 | ||
|
|
683535a5a6 | ||
|
|
edb53112c2 | ||
|
|
83a77af520 | ||
|
|
df3ae17c7b | ||
|
|
4a1624a443 | ||
|
|
a8de9f9f9f | ||
|
|
3aa5b40acd | ||
|
|
8400f3e874 | ||
|
|
b40bca1913 | ||
|
|
7100257f31 | ||
|
|
17df1a4d8a | ||
|
|
d7a5209c68 | ||
|
|
076220eacd | ||
|
|
99a50f271a | ||
|
|
63d265da06 | ||
|
|
30e3624eb1 | ||
|
|
88f3713e28 | ||
|
|
90f0c22545 | ||
|
|
8deed8468d | ||
|
|
923ad26b1b | ||
|
|
3bc858e4c2 | ||
|
|
f5a7fa41a7 | ||
|
|
bf71d5508b | ||
|
|
aa5adc28cb | ||
|
|
2dad013cc0 | ||
|
|
7ade66f3ac | ||
|
|
ed75a64b46 | ||
|
|
e156b80d91 | ||
|
|
90e4862280 | ||
|
|
438080d3d6 | ||
|
|
3c17605764 | ||
|
|
3f68bc0eda | ||
|
|
3e4452da00 | ||
|
|
549c690b56 | ||
|
|
aabe06f29b | ||
|
|
82693c5cd3 | ||
|
|
37a4f26d2f | ||
|
|
ca94063c7b | ||
|
|
eadc4bf6c2 | ||
|
|
b1c307c86b | ||
|
|
48331f9552 | ||
|
|
f907aa578a | ||
|
|
41e2620cc1 | ||
|
|
e7a82b167a | ||
|
|
088c556b00 | ||
|
|
c80343b6d4 | ||
|
|
4e52a8cf60 | ||
|
|
1ed1d4233f | ||
|
|
6e4626bc02 | ||
|
|
2608ae247f | ||
|
|
785586bfe9 | ||
|
|
bdcbb177ae | ||
|
|
15ac365d79 | ||
|
|
debbcb753b | ||
|
|
69d73aeaa4 | ||
|
|
dffe53370f | ||
|
|
4334e6dcdf | ||
|
|
c2c6c093d5 | ||
|
|
77e539eec2 | ||
|
|
a57970210e | ||
|
|
1b31a46fb7 | ||
|
|
87f19c74fc | ||
|
|
bd157a9724 | ||
|
|
5a327eb0db | ||
|
|
4b9c0b0109 | ||
|
|
df6b75cdbb | ||
|
|
0b4f8c122b | ||
|
|
2a87eaf3e5 | ||
|
|
c52266f5cf | ||
|
|
3b21f8add2 | ||
|
|
6574bd10a0 | ||
|
|
23f3335988 | ||
|
|
a5d7f33c82 | ||
|
|
3782c4dac0 | ||
|
|
1fc02fd2fe | ||
|
|
cc347c1dbe | ||
|
|
79ff20eb18 | ||
|
|
e6e8a447da | ||
|
|
233f0c5bdb | ||
|
|
9ed4271a14 | ||
|
|
470c0b6b43 | ||
|
|
afa8ae42b9 | ||
|
|
63d426503f | ||
|
|
ffb7f80b26 | ||
|
|
63f8826fd8 | ||
|
|
ef836e8b84 | ||
|
|
abc1c43a51 | ||
|
|
a4fe92562f | ||
|
|
b9bd1d9d4b | ||
|
|
3b6c28488a | ||
|
|
875eb3500d | ||
|
|
3a88a2451c | ||
|
|
6800b73a4f | ||
|
|
983404e6d8 | ||
|
|
b95c0a18a7 | ||
|
|
36b317cad8 | ||
|
|
35d74888fb |
13
.github/FUNDING.yml
vendored
Normal file
13
.github/FUNDING.yml
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
# These are supported funding model platforms
|
||||
|
||||
#github: [J-Jamet] # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
|
||||
#patreon: # Replace with a single Patreon username
|
||||
#open_collective: # Replace with a single Open Collective username
|
||||
#ko_fi: # Replace with a single Ko-fi username
|
||||
#tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
||||
#community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
||||
liberapay: Kunzisoft # Replace with a single Liberapay username
|
||||
issuehunt: Kunzisoft/KeePassDX # Replace with a single IssueHunt username
|
||||
#otechie: # Replace with a single Otechie username
|
||||
#lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
|
||||
custom: ['https://www.keepassdx.com/#donation'] # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@@ -80,6 +80,9 @@ art/screen*.png
|
||||
art/logo_512.png
|
||||
art/store_screens/
|
||||
|
||||
# Release
|
||||
releases/*
|
||||
|
||||
# Dir linux
|
||||
.directory
|
||||
*/.directory
|
||||
|
||||
29
CHANGELOG
29
CHANGELOG
@@ -1,3 +1,32 @@
|
||||
KeePassDX(3.4.5)
|
||||
* Fix custom data in group (fix KeeShare) #1335
|
||||
* Fix device credential unlocking #1344
|
||||
* New clipboard manager #1343
|
||||
* Keep screen on by default when viewing an entry
|
||||
* Change the order of the search filters
|
||||
* Fix searchable selection
|
||||
|
||||
KeePassDX(3.4.4)
|
||||
* Fix crash in New Android 13 #1321
|
||||
* Better backstack management for selection mode
|
||||
* Prevent Tapjacking #1318
|
||||
* Small changes #1298
|
||||
|
||||
KeePassDX(3.4.3)
|
||||
* Remove "Select share info" setting for Magikeyboard #1304
|
||||
* Fix quick search and better loadGroup implementation #1302
|
||||
* Fix small bugs
|
||||
|
||||
KeePassDX(3.4.2)
|
||||
* Fix service parameter and workflow to remove notification when service is killed
|
||||
* Fix color
|
||||
|
||||
KeePassDX(3.4.1)
|
||||
* Fix search mode with Magikeyboard #1292
|
||||
* Fix select another entry with Magikeyboard #1293
|
||||
* Fix unexpected lock with Magikeyboard #1294
|
||||
* Small UI changes
|
||||
|
||||
KeePassDX(3.4.0)
|
||||
* Passphrase implementation #218
|
||||
* Show visual password strength indicator with entropy #631 #869 #454 #1270
|
||||
|
||||
10
Gemfile
Normal file
10
Gemfile
Normal file
@@ -0,0 +1,10 @@
|
||||
# Autogenerated by fastlane
|
||||
#
|
||||
# Ensure this file is checked in to source control!
|
||||
|
||||
source "https://rubygems.org"
|
||||
|
||||
gem 'fastlane'
|
||||
|
||||
plugins_path = File.join(File.dirname(__FILE__), 'fastlane', 'Pluginfile')
|
||||
eval_gemfile(plugins_path) if File.exist?(plugins_path)
|
||||
220
Gemfile.lock
Normal file
220
Gemfile.lock
Normal file
@@ -0,0 +1,220 @@
|
||||
GEM
|
||||
remote: https://rubygems.org/
|
||||
specs:
|
||||
CFPropertyList (3.0.5)
|
||||
rexml
|
||||
addressable (2.8.0)
|
||||
public_suffix (>= 2.0.2, < 5.0)
|
||||
artifactory (3.0.15)
|
||||
atomos (0.1.3)
|
||||
aws-eventstream (1.2.0)
|
||||
aws-partitions (1.577.0)
|
||||
aws-sdk-core (3.130.1)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
aws-partitions (~> 1, >= 1.525.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
jmespath (~> 1.0)
|
||||
aws-sdk-kms (1.55.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sigv4 (~> 1.1)
|
||||
aws-sdk-s3 (1.113.0)
|
||||
aws-sdk-core (~> 3, >= 3.127.0)
|
||||
aws-sdk-kms (~> 1)
|
||||
aws-sigv4 (~> 1.4)
|
||||
aws-sigv4 (1.4.0)
|
||||
aws-eventstream (~> 1, >= 1.0.2)
|
||||
babosa (1.0.4)
|
||||
claide (1.1.0)
|
||||
colored (1.2)
|
||||
colored2 (3.1.2)
|
||||
commander (4.6.0)
|
||||
highline (~> 2.0.0)
|
||||
declarative (0.0.20)
|
||||
digest-crc (0.6.4)
|
||||
rake (>= 12.0.0, < 14.0.0)
|
||||
domain_name (0.5.20190701)
|
||||
unf (>= 0.0.5, < 1.0.0)
|
||||
dotenv (2.7.6)
|
||||
emoji_regex (3.2.3)
|
||||
excon (0.92.2)
|
||||
faraday (1.10.0)
|
||||
faraday-em_http (~> 1.0)
|
||||
faraday-em_synchrony (~> 1.0)
|
||||
faraday-excon (~> 1.1)
|
||||
faraday-httpclient (~> 1.0)
|
||||
faraday-multipart (~> 1.0)
|
||||
faraday-net_http (~> 1.0)
|
||||
faraday-net_http_persistent (~> 1.0)
|
||||
faraday-patron (~> 1.0)
|
||||
faraday-rack (~> 1.0)
|
||||
faraday-retry (~> 1.0)
|
||||
ruby2_keywords (>= 0.0.4)
|
||||
faraday-cookie_jar (0.0.7)
|
||||
faraday (>= 0.8.0)
|
||||
http-cookie (~> 1.0.0)
|
||||
faraday-em_http (1.0.0)
|
||||
faraday-em_synchrony (1.0.0)
|
||||
faraday-excon (1.1.0)
|
||||
faraday-httpclient (1.0.1)
|
||||
faraday-multipart (1.0.3)
|
||||
multipart-post (>= 1.2, < 3)
|
||||
faraday-net_http (1.0.1)
|
||||
faraday-net_http_persistent (1.2.0)
|
||||
faraday-patron (1.0.0)
|
||||
faraday-rack (1.0.0)
|
||||
faraday-retry (1.0.3)
|
||||
faraday_middleware (1.2.0)
|
||||
faraday (~> 1.0)
|
||||
fastimage (2.2.6)
|
||||
fastlane (2.205.1)
|
||||
CFPropertyList (>= 2.3, < 4.0.0)
|
||||
addressable (>= 2.8, < 3.0.0)
|
||||
artifactory (~> 3.0)
|
||||
aws-sdk-s3 (~> 1.0)
|
||||
babosa (>= 1.0.3, < 2.0.0)
|
||||
bundler (>= 1.12.0, < 3.0.0)
|
||||
colored
|
||||
commander (~> 4.6)
|
||||
dotenv (>= 2.1.1, < 3.0.0)
|
||||
emoji_regex (>= 0.1, < 4.0)
|
||||
excon (>= 0.71.0, < 1.0.0)
|
||||
faraday (~> 1.0)
|
||||
faraday-cookie_jar (~> 0.0.6)
|
||||
faraday_middleware (~> 1.0)
|
||||
fastimage (>= 2.1.0, < 3.0.0)
|
||||
gh_inspector (>= 1.1.2, < 2.0.0)
|
||||
google-apis-androidpublisher_v3 (~> 0.3)
|
||||
google-apis-playcustomapp_v1 (~> 0.1)
|
||||
google-cloud-storage (~> 1.31)
|
||||
highline (~> 2.0)
|
||||
json (< 3.0.0)
|
||||
jwt (>= 2.1.0, < 3)
|
||||
mini_magick (>= 4.9.4, < 5.0.0)
|
||||
multipart-post (~> 2.0.0)
|
||||
naturally (~> 2.2)
|
||||
optparse (~> 0.1.1)
|
||||
plist (>= 3.1.0, < 4.0.0)
|
||||
rubyzip (>= 2.0.0, < 3.0.0)
|
||||
security (= 0.1.3)
|
||||
simctl (~> 1.6.3)
|
||||
terminal-notifier (>= 2.0.0, < 3.0.0)
|
||||
terminal-table (>= 1.4.5, < 2.0.0)
|
||||
tty-screen (>= 0.6.3, < 1.0.0)
|
||||
tty-spinner (>= 0.8.0, < 1.0.0)
|
||||
word_wrap (~> 1.0.0)
|
||||
xcodeproj (>= 1.13.0, < 2.0.0)
|
||||
xcpretty (~> 0.3.0)
|
||||
xcpretty-travis-formatter (>= 0.0.3)
|
||||
fastlane-plugin-versioning_android (0.1.0)
|
||||
gh_inspector (1.1.3)
|
||||
google-apis-androidpublisher_v3 (0.19.0)
|
||||
google-apis-core (>= 0.4, < 2.a)
|
||||
google-apis-core (0.4.2)
|
||||
addressable (~> 2.5, >= 2.5.1)
|
||||
googleauth (>= 0.16.2, < 2.a)
|
||||
httpclient (>= 2.8.1, < 3.a)
|
||||
mini_mime (~> 1.0)
|
||||
representable (~> 3.0)
|
||||
retriable (>= 2.0, < 4.a)
|
||||
rexml
|
||||
webrick
|
||||
google-apis-iamcredentials_v1 (0.10.0)
|
||||
google-apis-core (>= 0.4, < 2.a)
|
||||
google-apis-playcustomapp_v1 (0.7.0)
|
||||
google-apis-core (>= 0.4, < 2.a)
|
||||
google-apis-storage_v1 (0.13.0)
|
||||
google-apis-core (>= 0.4, < 2.a)
|
||||
google-cloud-core (1.6.0)
|
||||
google-cloud-env (~> 1.0)
|
||||
google-cloud-errors (~> 1.0)
|
||||
google-cloud-env (1.6.0)
|
||||
faraday (>= 0.17.3, < 3.0)
|
||||
google-cloud-errors (1.2.0)
|
||||
google-cloud-storage (1.36.1)
|
||||
addressable (~> 2.8)
|
||||
digest-crc (~> 0.4)
|
||||
google-apis-iamcredentials_v1 (~> 0.1)
|
||||
google-apis-storage_v1 (~> 0.1)
|
||||
google-cloud-core (~> 1.6)
|
||||
googleauth (>= 0.16.2, < 2.a)
|
||||
mini_mime (~> 1.0)
|
||||
googleauth (1.1.2)
|
||||
faraday (>= 0.17.3, < 3.a)
|
||||
jwt (>= 1.4, < 3.0)
|
||||
memoist (~> 0.16)
|
||||
multi_json (~> 1.11)
|
||||
os (>= 0.9, < 2.0)
|
||||
signet (>= 0.16, < 2.a)
|
||||
highline (2.0.3)
|
||||
http-cookie (1.0.4)
|
||||
domain_name (~> 0.5)
|
||||
httpclient (2.8.3)
|
||||
jmespath (1.6.1)
|
||||
json (2.6.1)
|
||||
jwt (2.3.0)
|
||||
memoist (0.16.2)
|
||||
mini_magick (4.11.0)
|
||||
mini_mime (1.1.2)
|
||||
multi_json (1.15.0)
|
||||
multipart-post (2.0.0)
|
||||
nanaimo (0.3.0)
|
||||
naturally (2.2.1)
|
||||
optparse (0.1.1)
|
||||
os (1.1.4)
|
||||
plist (3.6.0)
|
||||
public_suffix (4.0.7)
|
||||
rake (13.0.6)
|
||||
representable (3.1.1)
|
||||
declarative (< 0.1.0)
|
||||
trailblazer-option (>= 0.1.1, < 0.2.0)
|
||||
uber (< 0.2.0)
|
||||
retriable (3.1.2)
|
||||
rexml (3.2.5)
|
||||
rouge (2.0.7)
|
||||
ruby2_keywords (0.0.5)
|
||||
rubyzip (2.3.2)
|
||||
security (0.1.3)
|
||||
signet (0.16.1)
|
||||
addressable (~> 2.8)
|
||||
faraday (>= 0.17.5, < 3.0)
|
||||
jwt (>= 1.5, < 3.0)
|
||||
multi_json (~> 1.10)
|
||||
simctl (1.6.8)
|
||||
CFPropertyList
|
||||
naturally
|
||||
terminal-notifier (2.0.0)
|
||||
terminal-table (1.8.0)
|
||||
unicode-display_width (~> 1.1, >= 1.1.1)
|
||||
trailblazer-option (0.1.2)
|
||||
tty-cursor (0.7.1)
|
||||
tty-screen (0.8.1)
|
||||
tty-spinner (0.9.3)
|
||||
tty-cursor (~> 0.7)
|
||||
uber (0.1.0)
|
||||
unf (0.1.4)
|
||||
unf_ext
|
||||
unf_ext (0.0.8.1)
|
||||
unicode-display_width (1.8.0)
|
||||
webrick (1.7.0)
|
||||
word_wrap (1.0.0)
|
||||
xcodeproj (1.21.0)
|
||||
CFPropertyList (>= 2.3.3, < 4.0)
|
||||
atomos (~> 0.1.3)
|
||||
claide (>= 1.0.2, < 2.0)
|
||||
colored2 (~> 3.1)
|
||||
nanaimo (~> 0.3.0)
|
||||
rexml (~> 3.2.4)
|
||||
xcpretty (0.3.0)
|
||||
rouge (~> 2.0.7)
|
||||
xcpretty-travis-formatter (1.0.1)
|
||||
xcpretty (~> 0.2, >= 0.0.7)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
fastlane
|
||||
fastlane-plugin-versioning_android
|
||||
|
||||
BUNDLED WITH
|
||||
2.1.4
|
||||
@@ -1,6 +1,6 @@
|
||||
# Android KeePassDX
|
||||
|
||||
<img src="https://raw.githubusercontent.com/Kunzisoft/KeePassDX/master/art/icon.png"> KeePassDX is a **multi-format KeePass manager for Android devices**. The app allows creating keys and passwords in a secure way by integrating with the Android design standards.
|
||||
<img src="https://raw.githubusercontent.com/Kunzisoft/KeePassDX/master/art/icon.png"> **Lightweight password manager for Android**, KeePassDX allows editing encrypted data in a single file in KeePass format and fill in the forms in a secure way.
|
||||
|
||||
<img src="https://raw.githubusercontent.com/Kunzisoft/KeePassDX/master/art/screen.jpg" width="220">
|
||||
|
||||
|
||||
@@ -4,16 +4,16 @@ apply plugin: 'kotlin-parcelize'
|
||||
apply plugin: 'kotlin-kapt'
|
||||
|
||||
android {
|
||||
compileSdkVersion 31
|
||||
buildToolsVersion "31.0.0"
|
||||
compileSdkVersion 32
|
||||
buildToolsVersion "32.0.0"
|
||||
ndkVersion "21.4.7075529"
|
||||
|
||||
defaultConfig {
|
||||
applicationId "com.kunzisoft.keepass"
|
||||
minSdkVersion 15
|
||||
targetSdkVersion 31
|
||||
versionCode = 108
|
||||
versionName = "3.4.0"
|
||||
targetSdkVersion 32
|
||||
versionCode = 114
|
||||
versionName = "3.4.5"
|
||||
multiDexEnabled true
|
||||
|
||||
testApplicationId = "com.kunzisoft.keepass.tests"
|
||||
@@ -105,7 +105,7 @@ dependencies {
|
||||
implementation 'androidx.viewpager2:viewpager2:1.1.0-beta01'
|
||||
implementation 'androidx.documentfile:documentfile:1.0.1'
|
||||
implementation 'androidx.biometric:biometric:1.1.0'
|
||||
implementation 'androidx.media:media:1.5.0'
|
||||
implementation 'androidx.media:media:1.6.0'
|
||||
// Lifecycle - LiveData - ViewModel - Coroutines
|
||||
implementation "androidx.core:core-ktx:$android_core_version"
|
||||
implementation 'androidx.fragment:fragment-ktx:1.4.1'
|
||||
|
||||
@@ -150,7 +150,8 @@
|
||||
<activity
|
||||
android:name="com.kunzisoft.keepass.activities.AutofillLauncherActivity"
|
||||
android:theme="@style/Theme.Transparent"
|
||||
android:configChanges="keyboardHidden" />
|
||||
android:configChanges="keyboardHidden"
|
||||
android:excludeFromRecents="true"/>
|
||||
<activity
|
||||
android:name="com.kunzisoft.keepass.settings.SettingsAdvancedUnlockActivity" />
|
||||
<activity
|
||||
@@ -158,7 +159,7 @@
|
||||
<activity
|
||||
android:name="com.kunzisoft.keepass.activities.EntrySelectionLauncherActivity"
|
||||
android:theme="@style/Theme.Transparent"
|
||||
android:excludeFromRecents="true"
|
||||
android:launchMode="singleInstance"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.SEND" />
|
||||
|
||||
@@ -30,6 +30,7 @@ import androidx.core.text.HtmlCompat
|
||||
import com.kunzisoft.keepass.BuildConfig
|
||||
import com.kunzisoft.keepass.R
|
||||
import com.kunzisoft.keepass.activities.stylish.StylishActivity
|
||||
import com.kunzisoft.keepass.utils.UriUtil
|
||||
import org.joda.time.DateTime
|
||||
|
||||
class AboutActivity : StylishActivity() {
|
||||
@@ -45,6 +46,12 @@ class AboutActivity : StylishActivity() {
|
||||
supportActionBar?.setDisplayHomeAsUpEnabled(true)
|
||||
supportActionBar?.setDisplayShowHomeEnabled(true)
|
||||
|
||||
val appName = if (UriUtil.contributingUser(this))
|
||||
getString(R.string.app_name) + " " + getString(R.string.app_name_part3)
|
||||
else
|
||||
getString(R.string.app_name)
|
||||
findViewById<TextView>(R.id.activity_about_app_name).text = appName
|
||||
|
||||
var version: String
|
||||
var build: String
|
||||
try {
|
||||
|
||||
@@ -60,6 +60,7 @@ import com.kunzisoft.keepass.database.element.node.Node
|
||||
import com.kunzisoft.keepass.database.element.node.NodeId
|
||||
import com.kunzisoft.keepass.database.element.template.Template
|
||||
import com.kunzisoft.keepass.education.EntryEditActivityEducation
|
||||
import com.kunzisoft.keepass.magikeyboard.MagikeyboardService
|
||||
import com.kunzisoft.keepass.model.AttachmentState
|
||||
import com.kunzisoft.keepass.model.EntryAttachmentState
|
||||
import com.kunzisoft.keepass.model.RegisterInfo
|
||||
@@ -434,9 +435,10 @@ class EntryEditActivity : DatabaseLockActivity(),
|
||||
|
||||
private fun entryValidatedForKeyboardSelection(database: Database, entry: Entry) {
|
||||
// Populate Magikeyboard with entry
|
||||
populateKeyboardAndMoveAppToBackground(this,
|
||||
entry.getEntryInfo(database),
|
||||
intent)
|
||||
MagikeyboardService.populateKeyboardAndMoveAppToBackground(
|
||||
this,
|
||||
entry.getEntryInfo(database)
|
||||
)
|
||||
onValidateSpecialMode()
|
||||
// Don't keep activity history for entry edition
|
||||
finishForEntryResult(entry)
|
||||
@@ -477,6 +479,11 @@ class EntryEditActivity : DatabaseLockActivity(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Keep the screen on
|
||||
if (PreferencesUtil.isKeepScreenOnEnabled(this)) {
|
||||
window.addFlags(android.view.WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onPause() {
|
||||
|
||||
@@ -19,23 +19,18 @@
|
||||
*/
|
||||
package com.kunzisoft.keepass.activities
|
||||
|
||||
import android.app.Activity
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import android.util.Log
|
||||
import android.widget.Toast
|
||||
import com.kunzisoft.keepass.R
|
||||
import com.kunzisoft.keepass.activities.helpers.EntrySelectionHelper
|
||||
import com.kunzisoft.keepass.activities.legacy.DatabaseModeActivity
|
||||
import com.kunzisoft.keepass.database.element.Database
|
||||
import com.kunzisoft.keepass.database.search.SearchHelper
|
||||
import com.kunzisoft.keepass.magikeyboard.MagikeyboardService
|
||||
import com.kunzisoft.keepass.model.EntryInfo
|
||||
import com.kunzisoft.keepass.model.SearchInfo
|
||||
import com.kunzisoft.keepass.otp.OtpEntryFields
|
||||
import com.kunzisoft.keepass.settings.PreferencesUtil
|
||||
|
||||
/**
|
||||
* Activity to search or select entry in database,
|
||||
@@ -48,7 +43,7 @@ class EntrySelectionLauncherActivity : DatabaseModeActivity() {
|
||||
}
|
||||
|
||||
override fun finishActivityIfReloadRequested(): Boolean {
|
||||
return true
|
||||
return false
|
||||
}
|
||||
|
||||
override fun onDatabaseRetrieved(database: Database?) {
|
||||
@@ -61,7 +56,7 @@ class EntrySelectionLauncherActivity : DatabaseModeActivity() {
|
||||
keySelectionBundle.getParcelable<SearchInfo>(KEY_SEARCH_INFO)?.let { mSearchInfo ->
|
||||
searchInfo = mSearchInfo
|
||||
}
|
||||
launch(database, searchInfo, true)
|
||||
launch(database, searchInfo)
|
||||
} else {
|
||||
// To manage share
|
||||
var sharedWebDomain: String? = null
|
||||
@@ -78,6 +73,7 @@ class EntrySelectionLauncherActivity : DatabaseModeActivity() {
|
||||
sharedWebDomain = Uri.parse(extra).host
|
||||
}
|
||||
}
|
||||
launchSelection(database, sharedWebDomain, otpString)
|
||||
}
|
||||
Intent.ACTION_VIEW -> {
|
||||
// Retrieve OTP
|
||||
@@ -85,29 +81,40 @@ class EntrySelectionLauncherActivity : DatabaseModeActivity() {
|
||||
if (OtpEntryFields.isOTPUri(extra))
|
||||
otpString = extra
|
||||
}
|
||||
launchSelection(database, sharedWebDomain, otpString)
|
||||
}
|
||||
else -> {
|
||||
if (database != null) {
|
||||
GroupActivity.launch(this, database)
|
||||
} else {
|
||||
FileDatabaseSelectActivity.launch(this)
|
||||
}
|
||||
}
|
||||
else -> {}
|
||||
}
|
||||
}
|
||||
finish()
|
||||
}
|
||||
|
||||
// Build domain search param
|
||||
val searchInfo = SearchInfo().apply {
|
||||
this.webDomain = sharedWebDomain
|
||||
this.otpString = otpString
|
||||
}
|
||||
private fun launchSelection(database: Database?,
|
||||
sharedWebDomain: String?,
|
||||
otpString: String?) {
|
||||
// Build domain search param
|
||||
val searchInfo = SearchInfo().apply {
|
||||
this.webDomain = sharedWebDomain
|
||||
this.otpString = otpString
|
||||
}
|
||||
|
||||
SearchInfo.getConcreteWebDomain(this, searchInfo.webDomain) { concreteWebDomain ->
|
||||
searchInfo.webDomain = concreteWebDomain
|
||||
launch(database, searchInfo)
|
||||
}
|
||||
SearchInfo.getConcreteWebDomain(this, searchInfo.webDomain) { concreteWebDomain ->
|
||||
searchInfo.webDomain = concreteWebDomain
|
||||
launch(database, searchInfo)
|
||||
}
|
||||
}
|
||||
|
||||
private fun launch(database: Database?,
|
||||
searchInfo: SearchInfo,
|
||||
forceSelection: Boolean = false) {
|
||||
searchInfo: SearchInfo) {
|
||||
|
||||
// Setting to integrate Magikeyboard
|
||||
val searchShareForMagikeyboard = PreferencesUtil.isKeyboardSearchShareEnable(this)
|
||||
val searchShareForMagikeyboard = MagikeyboardService.activatedInSettings(this)
|
||||
|
||||
// If database is open
|
||||
val readOnly = database?.isReadOnly != false
|
||||
@@ -130,21 +137,22 @@ class EntrySelectionLauncherActivity : DatabaseModeActivity() {
|
||||
.show()
|
||||
}
|
||||
} else if (searchShareForMagikeyboard) {
|
||||
if (items.size == 1 && !forceSelection) {
|
||||
// Automatically populate keyboard
|
||||
val entryPopulate = items[0]
|
||||
populateKeyboardAndMoveAppToBackground(
|
||||
this,
|
||||
entryPopulate,
|
||||
intent)
|
||||
Log.e("TEST", "One item activity")
|
||||
} else {
|
||||
// Select the one we want
|
||||
GroupActivity.launchForKeyboardSelectionResult(this,
|
||||
openedDatabase,
|
||||
searchInfo,
|
||||
true)
|
||||
}
|
||||
MagikeyboardService.performSelection(
|
||||
items,
|
||||
{ entryInfo ->
|
||||
// Automatically populate keyboard
|
||||
MagikeyboardService.populateKeyboardAndMoveAppToBackground(
|
||||
this,
|
||||
entryInfo
|
||||
)
|
||||
},
|
||||
{ autoSearch ->
|
||||
GroupActivity.launchForKeyboardSelectionResult(this,
|
||||
openedDatabase,
|
||||
searchInfo,
|
||||
autoSearch)
|
||||
}
|
||||
)
|
||||
} else {
|
||||
GroupActivity.launchForSearchResult(this,
|
||||
openedDatabase,
|
||||
@@ -166,13 +174,13 @@ class EntrySelectionLauncherActivity : DatabaseModeActivity() {
|
||||
Toast.LENGTH_LONG)
|
||||
.show()
|
||||
}
|
||||
} else if (readOnly || searchShareForMagikeyboard) {
|
||||
} else if (searchShareForMagikeyboard) {
|
||||
GroupActivity.launchForKeyboardSelectionResult(this,
|
||||
openedDatabase,
|
||||
searchInfo,
|
||||
false)
|
||||
} else {
|
||||
GroupActivity.launchForSaveResult(this,
|
||||
GroupActivity.launchForSearchResult(this,
|
||||
openedDatabase,
|
||||
searchInfo,
|
||||
false)
|
||||
@@ -192,7 +200,6 @@ class EntrySelectionLauncherActivity : DatabaseModeActivity() {
|
||||
}
|
||||
}
|
||||
)
|
||||
finish()
|
||||
}
|
||||
|
||||
companion object {
|
||||
@@ -214,14 +221,3 @@ class EntrySelectionLauncherActivity : DatabaseModeActivity() {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun populateKeyboardAndMoveAppToBackground(activity: Activity,
|
||||
entry: EntryInfo,
|
||||
intent: Intent,
|
||||
toast: Boolean = true) {
|
||||
// Populate Magikeyboard with entry
|
||||
MagikeyboardService.addEntryAndLaunchNotificationIfAllowed(activity, entry, toast)
|
||||
// Consume the selection mode
|
||||
EntrySelectionHelper.removeModesFromIntent(intent)
|
||||
activity.moveTaskToBack(true)
|
||||
}
|
||||
|
||||
@@ -320,16 +320,6 @@ class FileDatabaseSelectActivity : DatabaseModeActivity(),
|
||||
}
|
||||
}
|
||||
|
||||
override fun onValidateSpecialMode() {
|
||||
super.onValidateSpecialMode()
|
||||
finish()
|
||||
}
|
||||
|
||||
override fun onCancelSpecialMode() {
|
||||
super.onCancelSpecialMode()
|
||||
finish()
|
||||
}
|
||||
|
||||
private fun launchPasswordActivityWithPath(databaseUri: Uri) {
|
||||
launchPasswordActivity(databaseUri, null)
|
||||
// Delete flickering for kitkat <=
|
||||
|
||||
@@ -67,6 +67,7 @@ import com.kunzisoft.keepass.database.element.node.Type
|
||||
import com.kunzisoft.keepass.database.search.SearchHelper
|
||||
import com.kunzisoft.keepass.database.search.SearchParameters
|
||||
import com.kunzisoft.keepass.education.GroupActivityEducation
|
||||
import com.kunzisoft.keepass.magikeyboard.MagikeyboardService
|
||||
import com.kunzisoft.keepass.model.GroupInfo
|
||||
import com.kunzisoft.keepass.model.MainCredential
|
||||
import com.kunzisoft.keepass.model.RegisterInfo
|
||||
@@ -123,8 +124,6 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
|
||||
private var mBreadcrumbAdapter: BreadcrumbAdapter? = null
|
||||
|
||||
private var mSearchMenuItem: MenuItem? = null
|
||||
|
||||
private var mGroupFragment: GroupFragment? = null
|
||||
private var mRecyclingBinEnabled = false
|
||||
private var mRecyclingBinIsCurrentGroup = false
|
||||
@@ -408,20 +407,14 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
val currentGroup = it.group
|
||||
mCurrentGroup = currentGroup
|
||||
if (currentGroup.isVirtual) {
|
||||
val searchParameters = it.searchParameters
|
||||
mSearchState = SearchState(searchParameters, it.showFromPosition)
|
||||
mSearchState = SearchState(
|
||||
it.searchParameters,
|
||||
it.showFromPosition
|
||||
)
|
||||
}
|
||||
// Main and search groups in activity are managed with another variables
|
||||
// to keep values during orientation
|
||||
|
||||
// Expand the search view if defined in settings
|
||||
if (mRequestStartupSearch
|
||||
&& PreferencesUtil.automaticallyFocusSearch(this@GroupActivity)) {
|
||||
// To request search only one time
|
||||
mRequestStartupSearch = false
|
||||
mSearchMenuItem?.expandActionView()
|
||||
}
|
||||
|
||||
loadingView?.hideByFading()
|
||||
}
|
||||
|
||||
@@ -728,8 +721,13 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
mSearchState = SearchState(PreferencesUtil.getDefaultSearchParameters(this).apply {
|
||||
searchQuery = stringQuery
|
||||
}, mSearchState?.firstVisibleItem ?: 0)
|
||||
} else if (mRequestStartupSearch
|
||||
&& PreferencesUtil.automaticallyFocusSearch(this@GroupActivity)) {
|
||||
// Expand the search view if defined in settings
|
||||
// To request search only one time
|
||||
mRequestStartupSearch = false
|
||||
addSearch()
|
||||
}
|
||||
loadGroup()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -890,10 +888,9 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
private fun entrySelectedForKeyboardSelection(database: Database, entry: Entry) {
|
||||
reloadCurrentGroup()
|
||||
// Populate Magikeyboard with entry
|
||||
populateKeyboardAndMoveAppToBackground(
|
||||
MagikeyboardService.populateKeyboardAndMoveAppToBackground(
|
||||
this,
|
||||
entry.getEntryInfo(database),
|
||||
intent
|
||||
entry.getEntryInfo(database)
|
||||
)
|
||||
onValidateSpecialMode()
|
||||
}
|
||||
@@ -1180,7 +1177,6 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
// Get the SearchView and set the searchable configuration
|
||||
menu.findItem(R.id.menu_search)?.let {
|
||||
mLockSearchListeners = true
|
||||
mSearchMenuItem = it
|
||||
it.setOnActionExpandListener(mOnSearchActionExpandListener)
|
||||
searchView = it.actionView as SearchView?
|
||||
searchView?.apply {
|
||||
@@ -1612,50 +1608,31 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
autofillActivityResultLauncher: ActivityResultLauncher<Intent>?) {
|
||||
EntrySelectionHelper.doSpecialAction(activity.intent,
|
||||
{
|
||||
GroupActivity.launch(
|
||||
// Default action
|
||||
launch(
|
||||
activity,
|
||||
database,
|
||||
true
|
||||
)
|
||||
},
|
||||
{ searchInfo ->
|
||||
SearchHelper.checkAutoSearchInfo(activity,
|
||||
// Search action
|
||||
if (database.loaded) {
|
||||
launchForSearchResult(activity,
|
||||
database,
|
||||
searchInfo,
|
||||
{ _, _ ->
|
||||
// Response is build
|
||||
GroupActivity.launchForSearchResult(activity,
|
||||
database,
|
||||
searchInfo,
|
||||
true)
|
||||
onLaunchActivitySpecialMode()
|
||||
},
|
||||
{
|
||||
// Here no search info found
|
||||
if (database.isReadOnly) {
|
||||
GroupActivity.launchForSearchResult(activity,
|
||||
database,
|
||||
searchInfo,
|
||||
false)
|
||||
} else {
|
||||
GroupActivity.launchForSaveResult(activity,
|
||||
database,
|
||||
searchInfo,
|
||||
false)
|
||||
}
|
||||
onLaunchActivitySpecialMode()
|
||||
},
|
||||
{
|
||||
// Simply close if database not opened, normally not happened
|
||||
onCancelSpecialMode()
|
||||
}
|
||||
)
|
||||
true)
|
||||
onLaunchActivitySpecialMode()
|
||||
} else {
|
||||
// Simply close if database not opened
|
||||
onCancelSpecialMode()
|
||||
}
|
||||
},
|
||||
{ searchInfo ->
|
||||
// Save info used with OTP
|
||||
// Save info
|
||||
if (database.loaded) {
|
||||
if (!database.isReadOnly) {
|
||||
GroupActivity.launchForSaveResult(
|
||||
launchForSaveResult(
|
||||
activity,
|
||||
database,
|
||||
searchInfo,
|
||||
@@ -1674,28 +1651,33 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
}
|
||||
},
|
||||
{ searchInfo ->
|
||||
// Keyboard selection
|
||||
SearchHelper.checkAutoSearchInfo(activity,
|
||||
database,
|
||||
searchInfo,
|
||||
{ _, items ->
|
||||
// Response is build
|
||||
if (items.size == 1) {
|
||||
populateKeyboardAndMoveAppToBackground(activity,
|
||||
items[0],
|
||||
activity.intent)
|
||||
onValidateSpecialMode()
|
||||
} else {
|
||||
// Select the one we want
|
||||
GroupActivity.launchForKeyboardSelectionResult(activity,
|
||||
database,
|
||||
searchInfo,
|
||||
true)
|
||||
onLaunchActivitySpecialMode()
|
||||
}
|
||||
MagikeyboardService.performSelection(
|
||||
items,
|
||||
{ entryInfo ->
|
||||
// Keyboard populated
|
||||
MagikeyboardService.populateKeyboardAndMoveAppToBackground(
|
||||
activity,
|
||||
entryInfo
|
||||
)
|
||||
onValidateSpecialMode()
|
||||
},
|
||||
{ autoSearch ->
|
||||
launchForKeyboardSelectionResult(activity,
|
||||
database,
|
||||
searchInfo,
|
||||
autoSearch)
|
||||
onLaunchActivitySpecialMode()
|
||||
}
|
||||
)
|
||||
},
|
||||
{
|
||||
// Here no search info found, disable auto search
|
||||
GroupActivity.launchForKeyboardSelectionResult(activity,
|
||||
launchForKeyboardSelectionResult(activity,
|
||||
database,
|
||||
searchInfo,
|
||||
false)
|
||||
@@ -1708,6 +1690,7 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
)
|
||||
},
|
||||
{ searchInfo, autofillComponent ->
|
||||
// Autofill selection
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||
SearchHelper.checkAutoSearchInfo(activity,
|
||||
database,
|
||||
@@ -1719,7 +1702,7 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
},
|
||||
{
|
||||
// Here no search info found, disable auto search
|
||||
GroupActivity.launchForAutofillResult(activity,
|
||||
launchForAutofillResult(activity,
|
||||
database,
|
||||
autofillActivityResultLauncher,
|
||||
autofillComponent,
|
||||
@@ -1737,20 +1720,21 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
}
|
||||
},
|
||||
{ registerInfo ->
|
||||
// Autofill registration
|
||||
if (!database.isReadOnly) {
|
||||
SearchHelper.checkAutoSearchInfo(activity,
|
||||
database,
|
||||
registerInfo?.searchInfo,
|
||||
{ _, _ ->
|
||||
// No auto search, it's a registration
|
||||
GroupActivity.launchForRegistration(activity,
|
||||
launchForRegistration(activity,
|
||||
database,
|
||||
registerInfo)
|
||||
onLaunchActivitySpecialMode()
|
||||
},
|
||||
{
|
||||
// Here no search info found, disable auto search
|
||||
GroupActivity.launchForRegistration(activity,
|
||||
launchForRegistration(activity,
|
||||
database,
|
||||
registerInfo)
|
||||
onLaunchActivitySpecialMode()
|
||||
|
||||
@@ -369,16 +369,6 @@ class MainCredentialActivity : DatabaseModeActivity(), AdvancedUnlockFragment.Bu
|
||||
}
|
||||
}
|
||||
|
||||
override fun onValidateSpecialMode() {
|
||||
super.onValidateSpecialMode()
|
||||
finish()
|
||||
}
|
||||
|
||||
override fun onCancelSpecialMode() {
|
||||
super.onCancelSpecialMode()
|
||||
finish()
|
||||
}
|
||||
|
||||
override fun retrieveCredentialForEncryption(): ByteArray {
|
||||
return mainCredentialView?.retrieveCredentialForStorage(credentialStorageListener)
|
||||
?: byteArrayOf()
|
||||
|
||||
@@ -27,7 +27,6 @@ import com.kunzisoft.keepass.view.TemplateView
|
||||
import com.kunzisoft.keepass.view.hideByFading
|
||||
import com.kunzisoft.keepass.view.showByFading
|
||||
import com.kunzisoft.keepass.viewmodels.EntryViewModel
|
||||
import java.util.*
|
||||
|
||||
class EntryFragment: DatabaseFragment() {
|
||||
|
||||
@@ -158,11 +157,9 @@ class EntryFragment: DatabaseFragment() {
|
||||
|
||||
setOnCopyActionClickListener { field ->
|
||||
mClipboardHelper?.timeoutCopyToClipboard(
|
||||
TemplateField.getLocalizedName(context, field.name),
|
||||
field.protectedValue.stringValue,
|
||||
getString(
|
||||
R.string.copy_field,
|
||||
TemplateField.getLocalizedName(context, field.name)
|
||||
)
|
||||
field.protectedValue.isProtected
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -251,8 +248,7 @@ class EntryFragment: DatabaseFragment() {
|
||||
|
||||
fun launchEntryCopyEducationAction() {
|
||||
val appNameString = getString(R.string.app_name)
|
||||
mClipboardHelper?.timeoutCopyToClipboard(appNameString,
|
||||
getString(R.string.copy_field, appNameString))
|
||||
mClipboardHelper?.timeoutCopyToClipboard(appNameString, appNameString)
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
@@ -78,9 +78,11 @@ class PassphraseGeneratorFragment : DatabaseFragment() {
|
||||
View.VISIBLE else View.GONE
|
||||
val clipboardHelper = ClipboardHelper(context)
|
||||
passphraseCopyView?.setOnClickListener {
|
||||
clipboardHelper.timeoutCopyToClipboard(passKeyView.passwordString,
|
||||
getString(R.string.copy_field,
|
||||
getString(R.string.entry_password)))
|
||||
clipboardHelper.timeoutCopyToClipboard(
|
||||
getString(R.string.passphrase),
|
||||
passKeyView.passwordString,
|
||||
true
|
||||
)
|
||||
}
|
||||
|
||||
wordCaseAdapter = ArrayAdapter(context,
|
||||
|
||||
@@ -99,9 +99,11 @@ class PasswordGeneratorFragment : DatabaseFragment() {
|
||||
View.VISIBLE else View.GONE
|
||||
val clipboardHelper = ClipboardHelper(context)
|
||||
passwordCopyView?.setOnClickListener {
|
||||
clipboardHelper.timeoutCopyToClipboard(passKeyView.passwordString,
|
||||
getString(R.string.copy_field,
|
||||
getString(R.string.entry_password)))
|
||||
clipboardHelper.timeoutCopyToClipboard(
|
||||
getString(R.string.password),
|
||||
passKeyView.passwordString,
|
||||
true
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -85,7 +85,7 @@ object EntrySelectionHelper {
|
||||
return intent.getParcelableExtra(KEY_SEARCH_INFO)
|
||||
}
|
||||
|
||||
fun addRegisterInfoInIntent(intent: Intent, registerInfo: RegisterInfo?) {
|
||||
private fun addRegisterInfoInIntent(intent: Intent, registerInfo: RegisterInfo?) {
|
||||
registerInfo?.let {
|
||||
intent.putExtra(KEY_REGISTER_INFO, it)
|
||||
}
|
||||
@@ -113,7 +113,7 @@ object EntrySelectionHelper {
|
||||
?: SpecialMode.DEFAULT
|
||||
}
|
||||
|
||||
fun addTypeModeInIntent(intent: Intent, typeMode: TypeMode) {
|
||||
private fun addTypeModeInIntent(intent: Intent, typeMode: TypeMode) {
|
||||
intent.putExtra(KEY_TYPE_MODE, typeMode as Serializable)
|
||||
}
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@ import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import android.util.Log
|
||||
import android.view.MotionEvent
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
@@ -31,6 +32,7 @@ import android.widget.Toast
|
||||
import androidx.activity.viewModels
|
||||
import androidx.appcompat.app.AlertDialog
|
||||
import com.kunzisoft.keepass.R
|
||||
import com.kunzisoft.keepass.activities.dialogs.DatabaseDialogFragment
|
||||
import com.kunzisoft.keepass.activities.dialogs.DeleteNodesDialogFragment
|
||||
import com.kunzisoft.keepass.activities.dialogs.PasswordEncodingDialogFragment
|
||||
import com.kunzisoft.keepass.activities.helpers.EntrySelectionHelper
|
||||
@@ -433,9 +435,7 @@ abstract class DatabaseLockActivity : DatabaseModeActivity(),
|
||||
|
||||
protected fun lockAndExit() {
|
||||
// Ask confirmation if modification not saved
|
||||
if (mDatabase?.isReadOnly == false
|
||||
&& mDatabase?.dataModifiedSinceLastLoading == true
|
||||
&& !PreferencesUtil.isAutoSaveDatabaseEnabled(this)) {
|
||||
if (mDatabase?.dataModifiedSinceLastLoading == true) {
|
||||
AlertDialog.Builder(this)
|
||||
.setMessage(R.string.discard_changes)
|
||||
.setNegativeButton(android.R.string.cancel, null)
|
||||
@@ -480,25 +480,33 @@ abstract class DatabaseLockActivity : DatabaseModeActivity(),
|
||||
*/
|
||||
@SuppressLint("ClickableViewAccessibility")
|
||||
fun View.resetAppTimeoutWhenViewTouchedOrFocused(context: Context, databaseLoaded: Boolean?) {
|
||||
// Log.d(DatabaseLockActivity.TAG, "View prepared to reset app timeout")
|
||||
setOnTouchListener { _, event ->
|
||||
when (event.action) {
|
||||
MotionEvent.ACTION_DOWN -> {
|
||||
// Log.d(DatabaseLockActivity.TAG, "View touched, try to reset app timeout")
|
||||
TimeoutHelper.checkTimeAndLockIfTimeoutOrResetTimeout(context,
|
||||
databaseLoaded ?: false)
|
||||
try {
|
||||
// Log.d(DatabaseLockActivity.TAG, "View prepared to reset app timeout")
|
||||
setOnTouchListener { _, event ->
|
||||
when (event.action) {
|
||||
MotionEvent.ACTION_DOWN -> {
|
||||
// Log.d(DatabaseLockActivity.TAG, "View touched, try to reset app timeout")
|
||||
TimeoutHelper.checkTimeAndLockIfTimeoutOrResetTimeout(
|
||||
context,
|
||||
databaseLoaded ?: false
|
||||
)
|
||||
}
|
||||
}
|
||||
false
|
||||
}
|
||||
setOnFocusChangeListener { _, _ ->
|
||||
// Log.d(DatabaseLockActivity.TAG, "View focused, try to reset app timeout")
|
||||
TimeoutHelper.checkTimeAndLockIfTimeoutOrResetTimeout(
|
||||
context,
|
||||
databaseLoaded ?: false
|
||||
)
|
||||
}
|
||||
if (this is ViewGroup) {
|
||||
for (i in 0..childCount) {
|
||||
getChildAt(i)?.resetAppTimeoutWhenViewTouchedOrFocused(context, databaseLoaded)
|
||||
}
|
||||
}
|
||||
false
|
||||
}
|
||||
setOnFocusChangeListener { _, _ ->
|
||||
// Log.d(DatabaseLockActivity.TAG, "View focused, try to reset app timeout")
|
||||
TimeoutHelper.checkTimeAndLockIfTimeoutOrResetTimeout(context,
|
||||
databaseLoaded ?: false)
|
||||
}
|
||||
if (this is ViewGroup) {
|
||||
for (i in 0..childCount) {
|
||||
getChildAt(i)?.resetAppTimeoutWhenViewTouchedOrFocused(context, databaseLoaded)
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
Log.e("AppTimeout", "Unable to reset app timeout", e)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
package com.kunzisoft.keepass.activities.legacy
|
||||
|
||||
import android.os.Build
|
||||
import android.os.Bundle
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.view.View
|
||||
import android.widget.Toast
|
||||
import com.kunzisoft.keepass.R
|
||||
@@ -96,9 +93,8 @@ abstract class DatabaseModeActivity : DatabaseActivity() {
|
||||
|
||||
private fun backToTheMainAppAndFinish() {
|
||||
// To move the app in background and return to the main app
|
||||
// Not visible as opened with FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS
|
||||
moveTaskToBack(true)
|
||||
// Not finish() to prevent service kill
|
||||
// Not using FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS or finish() because kills the service
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
|
||||
@@ -21,13 +21,13 @@ package com.kunzisoft.keepass.adapters
|
||||
|
||||
import android.content.Context
|
||||
import android.graphics.Color
|
||||
import android.util.Log
|
||||
import android.util.TypedValue
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.ImageView
|
||||
import android.widget.TextView
|
||||
import android.widget.Toast
|
||||
import androidx.annotation.ColorInt
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import androidx.recyclerview.widget.SortedList
|
||||
@@ -521,13 +521,14 @@ class NodesAdapter (private val context: Context,
|
||||
}
|
||||
holder?.otpContainer?.setOnClickListener {
|
||||
otpElement?.token?.let { token ->
|
||||
Toast.makeText(
|
||||
context,
|
||||
context.getString(R.string.copy_field,
|
||||
TemplateField.getLocalizedName(context, TemplateField.LABEL_TOKEN)),
|
||||
Toast.LENGTH_LONG
|
||||
).show()
|
||||
mClipboardHelper.copyToClipboard(token)
|
||||
try {
|
||||
mClipboardHelper.copyToClipboard(
|
||||
TemplateField.getLocalizedName(context, TemplateField.LABEL_TOKEN),
|
||||
token
|
||||
)
|
||||
} catch (e: Exception) {
|
||||
Log.e(TAG, "Unable to copy the OTP token", e)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -403,13 +403,11 @@ class AdvancedUnlockManager(private var retrieveContext: () -> FragmentActivity)
|
||||
}
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.M)
|
||||
fun isDeviceSecure(context: Context): Boolean {
|
||||
val keyguardManager = ContextCompat.getSystemService(context, KeyguardManager::class.java)
|
||||
return keyguardManager?.isDeviceSecure ?: false
|
||||
return ContextCompat.getSystemService(context, KeyguardManager::class.java)
|
||||
?.isDeviceSecure ?: false
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.M)
|
||||
fun biometricUnlockSupported(context: Context): Boolean {
|
||||
val biometricCanAuthenticate = try {
|
||||
BiometricManager.from(context).canAuthenticate(BIOMETRIC_STRONG)
|
||||
@@ -430,28 +428,23 @@ class AdvancedUnlockManager(private var retrieveContext: () -> FragmentActivity)
|
||||
)
|
||||
}
|
||||
|
||||
@RequiresApi(api = Build.VERSION_CODES.M)
|
||||
fun deviceCredentialUnlockSupported(context: Context): Boolean {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||
return if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
|
||||
val biometricCanAuthenticate = BiometricManager.from(context).canAuthenticate(DEVICE_CREDENTIAL)
|
||||
return (biometricCanAuthenticate == BiometricManager.BIOMETRIC_SUCCESS
|
||||
(biometricCanAuthenticate == BiometricManager.BIOMETRIC_SUCCESS
|
||||
|| biometricCanAuthenticate == BiometricManager.BIOMETRIC_STATUS_UNKNOWN
|
||||
|| biometricCanAuthenticate == BiometricManager.BIOMETRIC_ERROR_HW_UNAVAILABLE
|
||||
|| biometricCanAuthenticate == BiometricManager.BIOMETRIC_ERROR_NONE_ENROLLED
|
||||
|| biometricCanAuthenticate == BiometricManager.BIOMETRIC_ERROR_SECURITY_UPDATE_REQUIRED
|
||||
)
|
||||
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
|
||||
ContextCompat.getSystemService(context, KeyguardManager::class.java)?.apply {
|
||||
return isDeviceSecure
|
||||
}
|
||||
} else {
|
||||
true
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
/**
|
||||
* Remove entry key in keystore
|
||||
*/
|
||||
@RequiresApi(api = Build.VERSION_CODES.M)
|
||||
fun deleteEntryKeyInKeystoreForBiometric(fragmentActivity: FragmentActivity,
|
||||
advancedCallback: AdvancedUnlockErrorCallback) {
|
||||
AdvancedUnlockManager{ fragmentActivity }.apply {
|
||||
|
||||
@@ -248,7 +248,7 @@ class DatabaseTaskProvider {
|
||||
private fun bindService() {
|
||||
initServiceConnection()
|
||||
serviceConnection?.let {
|
||||
context.bindService(intentDatabaseTask, it, BIND_AUTO_CREATE or BIND_NOT_FOREGROUND or BIND_ABOVE_CLIENT)
|
||||
context.bindService(intentDatabaseTask, it, BIND_AUTO_CREATE or BIND_IMPORTANT or BIND_ABOVE_CLIENT)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -855,10 +855,6 @@ class DatabaseKDBX : DatabaseVersioned<UUID, UUID, GroupKDBX, EntryKDBX> {
|
||||
mFieldReferenceEngine.clear()
|
||||
}
|
||||
|
||||
fun containsPublicCustomData(): Boolean {
|
||||
return publicCustomData.size() > 0
|
||||
}
|
||||
|
||||
fun buildNewBinaryAttachment(smallSize: Boolean,
|
||||
compression: Boolean,
|
||||
protection: Boolean,
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
/*
|
||||
* Copyright 2019 Jeremy Jamet / Kunzisoft.
|
||||
*
|
||||
* This file is part of KeePassDX.
|
||||
*
|
||||
* KeePassDX is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* KeePassDX is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with KeePassDX. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
package com.kunzisoft.keepass.database.exception
|
||||
|
||||
class ClipboardException(e: Exception) : Exception(e)
|
||||
@@ -92,7 +92,7 @@ constructor(private val databaseKDBX: DatabaseKDBX,
|
||||
writeHeaderField(DatabaseHeaderKDBX.PwDbHeaderV4Fields.InnerRandomStreamID, uIntTo4Bytes(header.innerRandomStream!!.id))
|
||||
}
|
||||
|
||||
if (databaseKDBX.containsPublicCustomData()) {
|
||||
if (databaseKDBX.publicCustomData.size() > 0) {
|
||||
val bos = ByteArrayOutputStream()
|
||||
VariantDictionary.serialize(databaseKDBX.publicCustomData, bos)
|
||||
writeHeaderField(DatabaseHeaderKDBX.PwDbHeaderV4Fields.PublicCustomData, bos.toByteArray())
|
||||
|
||||
@@ -359,6 +359,7 @@ class DatabaseOutputKDBX(private val mDatabaseKDBX: DatabaseKDBX,
|
||||
writeBoolean(DatabaseKDBXXML.ElemEnableAutoType, group.enableAutoType)
|
||||
writeBoolean(DatabaseKDBXXML.ElemEnableSearching, group.enableSearching)
|
||||
writeUuid(DatabaseKDBXXML.ElemLastTopVisibleEntry, group.lastTopVisibleEntry)
|
||||
writeCustomData(group.customData)
|
||||
}
|
||||
|
||||
@Throws(IllegalArgumentException::class, IllegalStateException::class, IOException::class)
|
||||
|
||||
@@ -148,9 +148,9 @@ class SearchHelper {
|
||||
onDatabaseClosed.invoke()
|
||||
} else if (TimeoutHelper.checkTime(context)) {
|
||||
var searchWithoutUI = false
|
||||
if (PreferencesUtil.isAutofillAutoSearchEnable(context)
|
||||
&& searchInfo != null && !searchInfo.manualSelection
|
||||
&& !searchInfo.containsOnlyNullValues()) {
|
||||
if (searchInfo != null
|
||||
&& !searchInfo.manualSelection
|
||||
&& !searchInfo.containsOnlyNullValues()) {
|
||||
// If search provide results
|
||||
database.createVirtualGroupFromSearchInfo(
|
||||
searchInfo.toString(),
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
|
||||
package com.kunzisoft.keepass.magikeyboard
|
||||
|
||||
import android.app.Activity
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.inputmethodservice.InputMethodService
|
||||
@@ -36,8 +37,11 @@ import android.widget.TextView
|
||||
import androidx.core.content.ContextCompat
|
||||
import androidx.core.graphics.BlendModeColorFilterCompat
|
||||
import androidx.core.graphics.BlendModeCompat
|
||||
import androidx.recyclerview.widget.LinearLayoutManager
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
import com.kunzisoft.keepass.R
|
||||
import com.kunzisoft.keepass.activities.EntrySelectionLauncherActivity
|
||||
import com.kunzisoft.keepass.activities.helpers.EntrySelectionHelper
|
||||
import com.kunzisoft.keepass.adapters.FieldsAdapter
|
||||
import com.kunzisoft.keepass.database.action.DatabaseTaskProvider
|
||||
import com.kunzisoft.keepass.database.element.Database
|
||||
@@ -91,6 +95,14 @@ class MagikeyboardService : InputMethodService(), KeyboardView.OnKeyboardActionL
|
||||
switchToPreviousKeyboard()
|
||||
}
|
||||
|
||||
fieldsAdapter = FieldsAdapter(this)
|
||||
fieldsAdapter?.onItemClickListener = object : FieldsAdapter.OnItemClickListener {
|
||||
override fun onItemClick(item: Field) {
|
||||
currentInputConnection.commitText(getEntryInfo()?.getGeneratedFieldValue(item.name) , 1)
|
||||
actionTabAutomatically()
|
||||
}
|
||||
}
|
||||
|
||||
registerLockReceiver(lockReceiver, true)
|
||||
}
|
||||
|
||||
@@ -119,15 +131,8 @@ class MagikeyboardService : InputMethodService(), KeyboardView.OnKeyboardActionL
|
||||
contentView = popupFieldsView
|
||||
}
|
||||
|
||||
val recyclerView = popupFieldsView.findViewById<androidx.recyclerview.widget.RecyclerView>(R.id.keyboard_popup_fields_list)
|
||||
fieldsAdapter = FieldsAdapter(this)
|
||||
fieldsAdapter?.onItemClickListener = object : FieldsAdapter.OnItemClickListener {
|
||||
override fun onItemClick(item: Field) {
|
||||
currentInputConnection.commitText(getEntryInfo()?.getGeneratedFieldValue(item.name) , 1)
|
||||
actionTabAutomatically()
|
||||
}
|
||||
}
|
||||
recyclerView.layoutManager = androidx.recyclerview.widget.LinearLayoutManager(this, androidx.recyclerview.widget.LinearLayoutManager.HORIZONTAL, true)
|
||||
val recyclerView = popupFieldsView.findViewById<RecyclerView>(R.id.keyboard_popup_fields_list)
|
||||
recyclerView.layoutManager = LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, true)
|
||||
recyclerView.adapter = fieldsAdapter
|
||||
|
||||
val closeView = popupFieldsView.findViewById<View>(R.id.keyboard_popup_close)
|
||||
@@ -139,7 +144,7 @@ class MagikeyboardService : InputMethodService(), KeyboardView.OnKeyboardActionL
|
||||
return rootKeyboardView
|
||||
}
|
||||
|
||||
return super.onCreateInputView()
|
||||
return rootKeyboardView
|
||||
}
|
||||
|
||||
private fun getEntryInfo(): EntryInfo? {
|
||||
@@ -351,38 +356,35 @@ class MagikeyboardService : InputMethodService(), KeyboardView.OnKeyboardActionL
|
||||
mDatabase,
|
||||
searchInfo,
|
||||
{ _, items ->
|
||||
if (items.size == 1) {
|
||||
if (entryUUID == null) {
|
||||
performSelection(
|
||||
items,
|
||||
{
|
||||
// Automatically populate keyboard
|
||||
removeEntryInfo()
|
||||
addEntryAndLaunchNotificationIfAllowed(
|
||||
this,
|
||||
items[0],
|
||||
true
|
||||
)
|
||||
assignKeyboardView()
|
||||
} else {
|
||||
// Choose another one
|
||||
launchEntrySelection(null)
|
||||
},
|
||||
{
|
||||
launchEntrySelection(searchInfo)
|
||||
}
|
||||
} else {
|
||||
// Select if multiple
|
||||
launchEntrySelection(searchInfo)
|
||||
}
|
||||
)
|
||||
},
|
||||
{ _ ->
|
||||
{
|
||||
// Select if not found
|
||||
launchEntrySelection(searchInfo)
|
||||
},
|
||||
{
|
||||
// Select if database not opened
|
||||
removeEntryInfo()
|
||||
launchEntrySelection(searchInfo)
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
private fun launchEntrySelection(searchInfo: SearchInfo?) {
|
||||
removeEntryInfo()
|
||||
EntrySelectionLauncherActivity.launch(this, searchInfo)
|
||||
}
|
||||
|
||||
@@ -476,5 +478,35 @@ class MagikeyboardService : InputMethodService(), KeyboardView.OnKeyboardActionL
|
||||
it.packageName == context.packageName
|
||||
} ?: false
|
||||
}
|
||||
|
||||
fun performSelection(items: List<EntryInfo>,
|
||||
actionPopulateKeyboard: (entryInfo: EntryInfo) -> Unit,
|
||||
actionEntrySelection: (autoSearch: Boolean) -> Unit) {
|
||||
if (items.size == 1) {
|
||||
val itemFound = items[0]
|
||||
if (entryUUID != itemFound.id) {
|
||||
actionPopulateKeyboard.invoke(itemFound)
|
||||
} else {
|
||||
// Force selection if magikeyboard already populated
|
||||
actionEntrySelection.invoke(false)
|
||||
}
|
||||
} else if (items.size > 1) {
|
||||
// Select the one we want in the selection
|
||||
actionEntrySelection.invoke(true)
|
||||
} else {
|
||||
// Select an arbitrary one
|
||||
actionEntrySelection.invoke(false)
|
||||
}
|
||||
}
|
||||
|
||||
fun populateKeyboardAndMoveAppToBackground(activity: Activity,
|
||||
entry: EntryInfo,
|
||||
toast: Boolean = true) {
|
||||
// Populate Magikeyboard with entry
|
||||
addEntryAndLaunchNotificationIfAllowed(activity, entry, toast)
|
||||
// Consume the selection mode
|
||||
EntrySelectionHelper.removeModesFromIntent(activity.intent)
|
||||
activity.moveTaskToBack(true)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -27,6 +27,7 @@ import android.os.Binder
|
||||
import android.os.Build
|
||||
import android.os.IBinder
|
||||
import android.util.Log
|
||||
import androidx.core.app.ServiceCompat
|
||||
import com.kunzisoft.keepass.R
|
||||
import com.kunzisoft.keepass.database.action.DatabaseTaskProvider
|
||||
import com.kunzisoft.keepass.database.element.Attachment
|
||||
@@ -36,7 +37,10 @@ import com.kunzisoft.keepass.model.EntryAttachmentState
|
||||
import com.kunzisoft.keepass.model.StreamDirection
|
||||
import com.kunzisoft.keepass.tasks.BinaryDatabaseManager
|
||||
import com.kunzisoft.keepass.utils.UriUtil
|
||||
import kotlinx.coroutines.*
|
||||
import kotlinx.coroutines.CoroutineScope
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.launch
|
||||
import kotlinx.coroutines.withContext
|
||||
import java.util.*
|
||||
import java.util.concurrent.CopyOnWriteArrayList
|
||||
|
||||
@@ -275,7 +279,7 @@ class AttachmentFileNotificationService: LockNotificationService() {
|
||||
AttachmentState.COMPLETE,
|
||||
AttachmentState.CANCELED,
|
||||
AttachmentState.ERROR -> {
|
||||
stopForeground(false)
|
||||
ServiceCompat.stopForeground(this, ServiceCompat.STOP_FOREGROUND_DETACH)
|
||||
notificationManager?.notify(attachmentNotification.notificationId, builder.build())
|
||||
} else -> {
|
||||
startForeground(attachmentNotification.notificationId, builder.build())
|
||||
|
||||
@@ -33,6 +33,10 @@ class ClipboardEntryNotificationField : Parcelable {
|
||||
|
||||
private var id: NotificationFieldId = NotificationFieldId.UNKNOWN
|
||||
var label: String = ""
|
||||
val isSensitive: Boolean
|
||||
get() {
|
||||
return id == NotificationFieldId.PASSWORD
|
||||
}
|
||||
|
||||
val actionKey: String
|
||||
get() = getActionKey(id)
|
||||
|
||||
@@ -31,7 +31,6 @@ import com.kunzisoft.keepass.settings.PreferencesUtil
|
||||
import com.kunzisoft.keepass.timeout.ClipboardHelper
|
||||
import com.kunzisoft.keepass.timeout.TimeoutHelper.NEVER
|
||||
import com.kunzisoft.keepass.utils.LOCK_ACTION
|
||||
import java.util.*
|
||||
|
||||
class ClipboardEntryNotificationService : LockNotificationService() {
|
||||
|
||||
@@ -75,7 +74,7 @@ class ClipboardEntryNotificationService : LockNotificationService() {
|
||||
}
|
||||
ACTION_CLEAN_CLIPBOARD == intent.action -> {
|
||||
mTimerJob?.cancel()
|
||||
cleanClipboard()
|
||||
clipboardHelper?.cleanClipboard()
|
||||
stopNotificationAndSendLockIfNeeded()
|
||||
}
|
||||
else -> for (actionKey in ClipboardEntryNotificationField.allActionKeys) {
|
||||
@@ -153,7 +152,11 @@ class ClipboardEntryNotificationService : LockNotificationService() {
|
||||
|
||||
try {
|
||||
var generatedValue = fieldToCopy.getGeneratedValue(mEntryInfo)
|
||||
clipboardHelper?.copyToClipboard(fieldToCopy.label, generatedValue)
|
||||
clipboardHelper?.copyToClipboard(
|
||||
fieldToCopy.label,
|
||||
generatedValue,
|
||||
fieldToCopy.isSensitive
|
||||
)
|
||||
|
||||
val builder = buildNewNotification()
|
||||
.setSmallIcon(R.drawable.notification_ic_clipboard_key_24dp)
|
||||
@@ -186,13 +189,17 @@ class ClipboardEntryNotificationService : LockNotificationService() {
|
||||
// New auto generated value
|
||||
if (generatedValue != newGeneratedValue) {
|
||||
generatedValue = newGeneratedValue
|
||||
clipboardHelper?.copyToClipboard(fieldToCopy.label, generatedValue)
|
||||
clipboardHelper?.copyToClipboard(
|
||||
fieldToCopy.label,
|
||||
generatedValue,
|
||||
fieldToCopy.isSensitive
|
||||
)
|
||||
}
|
||||
}) {
|
||||
stopNotificationAndSendLockIfNeeded()
|
||||
// Clean password only if no next field
|
||||
if (nextFields.size <= 0)
|
||||
cleanClipboard()
|
||||
clipboardHelper?.cleanClipboard()
|
||||
}
|
||||
} else {
|
||||
// No timer
|
||||
@@ -202,25 +209,15 @@ class ClipboardEntryNotificationService : LockNotificationService() {
|
||||
} catch (e: Exception) {
|
||||
Log.e(TAG, "Clipboard can't be populate", e)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private fun cleanClipboard() {
|
||||
try {
|
||||
clipboardHelper?.cleanClipboard()
|
||||
} catch (e: Exception) {
|
||||
Log.e(TAG, "Clipboard can't be cleaned", e)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onTaskRemoved(rootIntent: Intent?) {
|
||||
cleanClipboard()
|
||||
|
||||
clipboardHelper?.cleanClipboard()
|
||||
super.onTaskRemoved(rootIntent)
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
cleanClipboard()
|
||||
clipboardHelper?.cleanClipboard()
|
||||
super.onDestroy()
|
||||
}
|
||||
|
||||
|
||||
@@ -149,30 +149,23 @@ class KeyboardEntryNotificationService : LockNotificationService() {
|
||||
|
||||
fun launchNotificationIfAllowed(context: Context, entry: EntryInfo, toast: Boolean) {
|
||||
|
||||
val containsURLToCopy = entry.url.isNotEmpty()
|
||||
val containsUsernameToCopy = entry.username.isNotEmpty()
|
||||
val containsPasswordToCopy = entry.password.isNotEmpty()
|
||||
val containsExtraFieldToCopy = entry.customFields.isNotEmpty()
|
||||
|
||||
var startService = false
|
||||
val intent = Intent(context, KeyboardEntryNotificationService::class.java)
|
||||
|
||||
if (containsURLToCopy || containsUsernameToCopy || containsPasswordToCopy || containsExtraFieldToCopy) {
|
||||
if (toast) {
|
||||
Toast.makeText(context,
|
||||
context.getString(R.string.keyboard_notification_entry_content_title, entry.title),
|
||||
Toast.LENGTH_SHORT).show()
|
||||
}
|
||||
if (toast) {
|
||||
Toast.makeText(context,
|
||||
context.getString(R.string.keyboard_notification_entry_content_title,
|
||||
entry.getVisualTitle()
|
||||
),
|
||||
Toast.LENGTH_SHORT).show()
|
||||
}
|
||||
|
||||
// Show the notification if allowed in Preferences
|
||||
if (PreferencesUtil.isKeyboardNotificationEntryEnable(context)) {
|
||||
startService = true
|
||||
context.startService(intent.apply {
|
||||
putExtra(ENTRY_INFO_KEY, entry)
|
||||
})
|
||||
}
|
||||
} else {
|
||||
MagikeyboardService.removeEntry(context)
|
||||
// Show the notification if allowed in Preferences
|
||||
if (PreferencesUtil.isKeyboardNotificationEntryEnable(context)) {
|
||||
startService = true
|
||||
context.startService(intent.apply {
|
||||
putExtra(ENTRY_INFO_KEY, entry)
|
||||
})
|
||||
}
|
||||
|
||||
if (!startService)
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
package com.kunzisoft.keepass.services
|
||||
|
||||
import android.content.Intent
|
||||
import androidx.core.app.ServiceCompat
|
||||
import com.kunzisoft.keepass.timeout.TimeoutHelper
|
||||
import com.kunzisoft.keepass.utils.LockReceiver
|
||||
import com.kunzisoft.keepass.utils.registerLockReceiver
|
||||
@@ -33,6 +34,7 @@ abstract class LockNotificationService : NotificationService() {
|
||||
|
||||
protected open fun actionOnLock() {
|
||||
// Stop the service in all cases
|
||||
ServiceCompat.stopForeground(this, ServiceCompat.STOP_FOREGROUND_REMOVE)
|
||||
stopSelf()
|
||||
}
|
||||
|
||||
|
||||
@@ -620,15 +620,8 @@ object PreferencesUtil {
|
||||
context.resources.getBoolean(R.bool.keyboard_selection_entry_default))
|
||||
}
|
||||
|
||||
fun isKeyboardSearchShareEnable(context: Context): Boolean {
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
|
||||
return prefs.getBoolean(context.getString(R.string.keyboard_search_share_key),
|
||||
context.resources.getBoolean(R.bool.keyboard_search_share_default))
|
||||
&& MagikeyboardService.activatedInSettings(context)
|
||||
}
|
||||
|
||||
fun isKeyboardSaveSearchInfoEnable(context: Context): Boolean {
|
||||
if (!isKeyboardSearchShareEnable(context))
|
||||
if (!MagikeyboardService.activatedInSettings(context))
|
||||
return false
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
|
||||
return prefs.getBoolean(context.getString(R.string.keyboard_save_search_info_key),
|
||||
@@ -683,12 +676,6 @@ object PreferencesUtil {
|
||||
context.resources.getBoolean(R.bool.autofill_close_database_default))
|
||||
}
|
||||
|
||||
fun isAutofillAutoSearchEnable(context: Context): Boolean {
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
|
||||
return prefs.getBoolean(context.getString(R.string.autofill_auto_search_key),
|
||||
context.resources.getBoolean(R.bool.autofill_auto_search_default))
|
||||
}
|
||||
|
||||
fun isAutofillInlineSuggestionsEnable(context: Context): Boolean {
|
||||
val prefs = PreferenceManager.getDefaultSharedPreferences(context)
|
||||
return prefs.getBoolean(context.getString(R.string.autofill_inline_suggestions_key),
|
||||
@@ -824,7 +811,6 @@ object PreferencesUtil {
|
||||
context.getString(R.string.keyboard_notification_entry_clear_close_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.keyboard_entry_timeout_key) -> editor.putString(name, value.toLong().toString())
|
||||
context.getString(R.string.keyboard_selection_entry_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.keyboard_search_share_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.keyboard_save_search_info_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.keyboard_auto_go_action_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.keyboard_key_vibrate_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
@@ -834,7 +820,6 @@ object PreferencesUtil {
|
||||
context.getString(R.string.keyboard_previous_fill_in_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.keyboard_previous_lock_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.autofill_close_database_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.autofill_auto_search_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.autofill_inline_suggestions_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.autofill_manual_selection_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
context.getString(R.string.autofill_save_search_info_key) -> editor.putBoolean(name, value.toBoolean())
|
||||
|
||||
@@ -24,117 +24,117 @@ import android.content.ClipData
|
||||
import android.content.ClipboardManager
|
||||
import android.content.Context
|
||||
import android.os.Build
|
||||
import android.os.PersistableBundle
|
||||
import android.text.SpannableString
|
||||
import android.text.method.LinkMovementMethod
|
||||
import android.text.util.Linkify
|
||||
import android.util.Log
|
||||
import android.widget.TextView
|
||||
import android.widget.Toast
|
||||
import androidx.appcompat.app.AlertDialog
|
||||
import com.kunzisoft.keepass.R
|
||||
import com.kunzisoft.keepass.database.exception.ClipboardException
|
||||
import com.kunzisoft.keepass.settings.PreferencesUtil
|
||||
import java.util.*
|
||||
|
||||
class ClipboardHelper(private val context: Context) {
|
||||
class ClipboardHelper(context: Context) {
|
||||
|
||||
private var mAppContext = context.applicationContext
|
||||
private var mClipboardManager: ClipboardManager? = null
|
||||
|
||||
private val mTimer = Timer()
|
||||
|
||||
private fun getClipboardManager(): ClipboardManager? {
|
||||
if (mClipboardManager == null)
|
||||
mClipboardManager = context.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager?
|
||||
mClipboardManager = mAppContext.getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager?
|
||||
return mClipboardManager
|
||||
}
|
||||
|
||||
fun timeoutCopyToClipboard(text: String, toastString: String = "") {
|
||||
if (toastString.isNotEmpty())
|
||||
Toast.makeText(context, toastString, Toast.LENGTH_LONG).show()
|
||||
|
||||
fun timeoutCopyToClipboard(label: String, text: String, sensitive: Boolean = false) {
|
||||
try {
|
||||
copyToClipboard(text)
|
||||
} catch (e: ClipboardException) {
|
||||
copyToClipboard(label, text, sensitive)
|
||||
} catch (e: Exception) {
|
||||
showClipboardErrorDialog()
|
||||
return
|
||||
}
|
||||
|
||||
val clipboardTimeout = PreferencesUtil.getClipboardTimeout(context)
|
||||
val clipboardTimeout = PreferencesUtil.getClipboardTimeout(mAppContext)
|
||||
if (clipboardTimeout > 0) {
|
||||
mTimer.schedule(ClearClipboardTask(context, text), clipboardTimeout)
|
||||
mTimer.schedule(ClearClipboardTask(text), clipboardTimeout)
|
||||
}
|
||||
}
|
||||
|
||||
fun getClipboard(context: Context): CharSequence {
|
||||
if (getClipboardManager()?.hasPrimaryClip() == true) {
|
||||
val data = getClipboardManager()?.primaryClip
|
||||
if (data != null && data.itemCount > 0) {
|
||||
val text = data.getItemAt(0).coerceToText(context)
|
||||
if (text != null) {
|
||||
return text
|
||||
fun copyToClipboard(label: String, value: String, sensitive: Boolean = false) {
|
||||
getClipboardManager()?.setPrimaryClip(ClipData.newPlainText(DEFAULT_LABEL, value).apply {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||
description.extras = PersistableBundle().apply {
|
||||
putBoolean("android.content.extra.IS_SENSITIVE", sensitive)
|
||||
}
|
||||
}
|
||||
})
|
||||
if (label.isNotEmpty() && Build.VERSION.SDK_INT < Build.VERSION_CODES.S_V2) {
|
||||
Toast.makeText(
|
||||
mAppContext,
|
||||
mAppContext.getString(
|
||||
R.string.copy_field,
|
||||
label
|
||||
),
|
||||
Toast.LENGTH_LONG
|
||||
).show()
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
@Throws(ClipboardException::class)
|
||||
fun copyToClipboard(value: String) {
|
||||
copyToClipboard("", value)
|
||||
}
|
||||
|
||||
@Throws(ClipboardException::class)
|
||||
fun copyToClipboard(label: String, value: String) {
|
||||
try {
|
||||
getClipboardManager()?.setPrimaryClip(ClipData.newPlainText(label, value))
|
||||
} catch (e: Exception) {
|
||||
throw ClipboardException(e)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Throws(ClipboardException::class)
|
||||
fun cleanClipboard(label: String = "") {
|
||||
fun cleanClipboard() {
|
||||
try {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
|
||||
getClipboardManager()?.clearPrimaryClip()
|
||||
} else {
|
||||
copyToClipboard(label, "")
|
||||
copyToClipboard(DEFAULT_LABEL, "")
|
||||
}
|
||||
} catch (e: Exception) {
|
||||
throw ClipboardException(e)
|
||||
Log.e("ClipboardHelper", "Unable to clean the clipboard", e)
|
||||
}
|
||||
}
|
||||
|
||||
// Task which clears the clipboard, and sends a toast to the foreground.
|
||||
private inner class ClearClipboardTask (private val mCtx: Context,
|
||||
private val mClearText: String) : TimerTask() {
|
||||
private inner class ClearClipboardTask (private val mClearText: String) : TimerTask() {
|
||||
override fun run() {
|
||||
val currentClip = getClipboard(mCtx).toString()
|
||||
if (currentClip == mClearText) {
|
||||
try {
|
||||
cleanClipboard()
|
||||
R.string.clipboard_cleared
|
||||
} catch (e: ClipboardException) {
|
||||
R.string.clipboard_error_clear
|
||||
if (getClipboard(mAppContext).toString() == mClearText) {
|
||||
cleanClipboard()
|
||||
}
|
||||
}
|
||||
|
||||
private fun getClipboard(context: Context): CharSequence {
|
||||
if (getClipboardManager()?.hasPrimaryClip() == true) {
|
||||
val data = getClipboardManager()?.primaryClip
|
||||
if (data != null && data.itemCount > 0) {
|
||||
val text = data.getItemAt(0).coerceToText(context)
|
||||
if (text != null) {
|
||||
return text
|
||||
}
|
||||
}
|
||||
}
|
||||
return ""
|
||||
}
|
||||
}
|
||||
|
||||
private fun showClipboardErrorDialog() {
|
||||
val textDescription = context.getString(R.string.clipboard_error)
|
||||
val textDescription = mAppContext.getString(R.string.clipboard_error)
|
||||
val spannableString = SpannableString(textDescription)
|
||||
val textView = TextView(context).apply {
|
||||
val textView = TextView(mAppContext).apply {
|
||||
text = spannableString
|
||||
autoLinkMask = Activity.RESULT_OK
|
||||
movementMethod = LinkMovementMethod.getInstance()
|
||||
}
|
||||
|
||||
Linkify.addLinks(spannableString, Linkify.WEB_URLS)
|
||||
AlertDialog.Builder(context)
|
||||
AlertDialog.Builder(mAppContext)
|
||||
.setTitle(R.string.clipboard_error_title)
|
||||
.setView(textView)
|
||||
.setPositiveButton(android.R.string.ok) { dialog, _ -> dialog.dismiss() }
|
||||
.show()
|
||||
}
|
||||
|
||||
companion object {
|
||||
private const val DEFAULT_LABEL = ""
|
||||
}
|
||||
}
|
||||
|
||||
@@ -269,17 +269,18 @@ object UriUtil {
|
||||
|
||||
fun contributingUser(context: Context): Boolean {
|
||||
return (Education.isEducationScreenReclickedPerformed(context)
|
||||
|| isExternalAppInstalled(context, "com.kunzisoft.keepass.pro")
|
||||
|| isExternalAppInstalled(context, "com.kunzisoft.keepass.pro", false)
|
||||
)
|
||||
}
|
||||
|
||||
private fun isExternalAppInstalled(context: Context, packageName: String): Boolean {
|
||||
private fun isExternalAppInstalled(context: Context, packageName: String, showError: Boolean = true): Boolean {
|
||||
try {
|
||||
context.applicationContext.packageManager.getPackageInfo(packageName, PackageManager.GET_ACTIVITIES)
|
||||
Education.setEducationScreenReclickedPerformed(context)
|
||||
return true
|
||||
} catch (e: Exception) {
|
||||
Log.e(TAG, "App not accessible", e)
|
||||
if (showError)
|
||||
Log.e(TAG, "App not accessible", e)
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -4,6 +4,8 @@ import android.content.Context
|
||||
import android.text.InputType
|
||||
import android.util.AttributeSet
|
||||
import android.widget.ArrayAdapter
|
||||
import android.widget.Filter
|
||||
import androidx.annotation.LayoutRes
|
||||
import androidx.appcompat.widget.AppCompatAutoCompleteTextView
|
||||
import com.kunzisoft.keepass.R
|
||||
|
||||
@@ -11,15 +13,55 @@ class InheritedCompletionView @JvmOverloads constructor(
|
||||
context: Context, attrs: AttributeSet? = null
|
||||
) : AppCompatAutoCompleteTextView(context, attrs) {
|
||||
|
||||
val adapter = ArrayAdapter(
|
||||
private val adapter = ArrayAdapterNoFilter(
|
||||
context,
|
||||
android.R.layout.simple_list_item_1,
|
||||
InheritedStatus.listOfStrings(context))
|
||||
android.R.layout.simple_list_item_1
|
||||
)
|
||||
|
||||
private class ArrayAdapterNoFilter(context: Context,
|
||||
@LayoutRes private val layoutResource: Int)
|
||||
: ArrayAdapter<String>(context, layoutResource) {
|
||||
val items = InheritedStatus.listOfStrings(context)
|
||||
|
||||
override fun getCount(): Int {
|
||||
return items.size
|
||||
}
|
||||
|
||||
override fun getItem(position: Int): String {
|
||||
return items[position]
|
||||
}
|
||||
|
||||
override fun getItemId(position: Int): Long {
|
||||
// Or just return p0
|
||||
return items[position].hashCode().toLong()
|
||||
}
|
||||
|
||||
override fun getFilter(): Filter {
|
||||
return object : Filter() {
|
||||
override fun performFiltering(p0: CharSequence?): FilterResults {
|
||||
return FilterResults().apply {
|
||||
values = items
|
||||
}
|
||||
}
|
||||
|
||||
override fun publishResults(p0: CharSequence?, p1: FilterResults?) {
|
||||
notifyDataSetChanged()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
init {
|
||||
setAdapter(adapter)
|
||||
isFocusable = false
|
||||
isFocusableInTouchMode = false
|
||||
//hardwareKeyCompletion.isEnabled = false
|
||||
isCursorVisible = false
|
||||
setTextIsSelectable(false)
|
||||
inputType = InputType.TYPE_NULL
|
||||
adapter.filter.filter(null)
|
||||
setAdapter(adapter)
|
||||
setOnClickListener {
|
||||
showDropDown()
|
||||
}
|
||||
}
|
||||
|
||||
fun getValue(): Boolean? {
|
||||
@@ -28,7 +70,6 @@ class InheritedCompletionView @JvmOverloads constructor(
|
||||
|
||||
fun setValue(inherited: Boolean?) {
|
||||
setText(context.getString(InheritedStatus.getStatusFromValue(inherited).stringId))
|
||||
adapter.filter.filter(null)
|
||||
}
|
||||
|
||||
private enum class InheritedStatus(val stringId: Int, val value: Boolean?) {
|
||||
|
||||
@@ -1,13 +1,10 @@
|
||||
package com.kunzisoft.keepass.view
|
||||
|
||||
import android.content.Context
|
||||
import android.graphics.Typeface
|
||||
import android.os.Build
|
||||
import android.text.InputFilter
|
||||
import android.text.InputType
|
||||
import android.text.Spannable
|
||||
import android.text.SpannableString
|
||||
import android.text.style.StyleSpan
|
||||
import android.util.AttributeSet
|
||||
import android.util.TypedValue
|
||||
import android.view.ContextThemeWrapper
|
||||
|
||||
@@ -20,12 +20,9 @@
|
||||
package com.kunzisoft.keepass.view
|
||||
|
||||
import android.content.Context
|
||||
import android.graphics.Typeface
|
||||
import android.os.Build
|
||||
import android.text.InputFilter
|
||||
import android.text.Spannable
|
||||
import android.text.SpannableString
|
||||
import android.text.style.StyleSpan
|
||||
import android.text.util.Linkify
|
||||
import android.util.AttributeSet
|
||||
import android.util.TypedValue
|
||||
|
||||
@@ -23,7 +23,8 @@
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/fingerprint_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true">
|
||||
|
||||
<androidx.appcompat.widget.AppCompatImageView
|
||||
android:id="@+id/biometric_image"
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:orientation="vertical">
|
||||
|
||||
@@ -71,28 +72,29 @@
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical"
|
||||
android:layout_toEndOf="@+id/activity_about_icon"
|
||||
android:layout_toRightOf="@+id/activity_about_icon"
|
||||
android:layout_toEndOf="@+id/activity_about_icon">
|
||||
android:orientation="vertical">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/activity_about_app_name"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/app_name"
|
||||
android:textSize="18sp"
|
||||
android:textStyle="bold"/>
|
||||
android:textStyle="bold" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/activity_about_version"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Small"/>
|
||||
android:textAppearance="@android:style/TextAppearance.Small" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/activity_about_build"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:textAppearance="@android:style/TextAppearance.Small"/>
|
||||
android:textAppearance="@android:style/TextAppearance.Small" />
|
||||
</LinearLayout>
|
||||
</RelativeLayout>
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
android:id="@+id/toolbar_coordinator"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:fitsSystemWindows="true">
|
||||
|
||||
<com.google.android.material.appbar.AppBarLayout
|
||||
|
||||
@@ -24,7 +24,8 @@
|
||||
android:importantForAutofill="noExcludeDescendants"
|
||||
tools:targetApi="o"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true">
|
||||
|
||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||
android:id="@+id/entry_edit_coordinator_layout"
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:importantForAutofill="noExcludeDescendants"
|
||||
tools:targetApi="o">
|
||||
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
android:id="@+id/drawer_layout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:fitsSystemWindows="true">
|
||||
|
||||
<RelativeLayout
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
android:id="@+id/icon_picker_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:id="@+id/image_viewer_container"
|
||||
android:background="?android:attr/windowBackground">
|
||||
<include
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
android:id="@+id/key_generator_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||
@@ -51,6 +52,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:contentDescription="@string/validate"
|
||||
android:src="@drawable/ic_check_white_24dp"
|
||||
android:tint="?attr/colorOnAccentColor"
|
||||
app:fabSize="mini"
|
||||
app:layout_constraintTop_toTopOf="@+id/toolbar"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:background="?android:attr/windowBackground"
|
||||
tools:targetApi="o">
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
android:id="@+id/toolbar_coordinator"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:background="?android:attr/windowBackground"
|
||||
android:fitsSystemWindows="true">
|
||||
|
||||
|
||||
@@ -30,11 +30,10 @@
|
||||
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="240dp">
|
||||
android:layout_height="wrap_content">
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="180dp"
|
||||
android:layout_height="68dp"
|
||||
android:background="?attr/colorPrimary" />
|
||||
<androidx.cardview.widget.CardView
|
||||
android:layout_width="match_parent"
|
||||
@@ -43,7 +42,7 @@
|
||||
android:layout_marginEnd="@dimen/card_view_margin_horizontal"
|
||||
android:layout_marginLeft="@dimen/card_view_margin_horizontal"
|
||||
android:layout_marginRight="@dimen/card_view_margin_horizontal"
|
||||
android:layout_marginTop="@dimen/card_view_margin_vertical"
|
||||
android:layout_marginTop="@dimen/default_margin"
|
||||
android:layout_marginBottom="@dimen/card_view_margin_vertical"
|
||||
android:layout_gravity="bottom"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
@@ -30,11 +30,10 @@
|
||||
|
||||
<FrameLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="180dp">
|
||||
android:layout_height="wrap_content">
|
||||
<View
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="120dp"
|
||||
android:layout_height="68dp"
|
||||
android:background="?attr/colorPrimary" />
|
||||
<androidx.cardview.widget.CardView
|
||||
android:layout_width="match_parent"
|
||||
@@ -43,7 +42,7 @@
|
||||
android:layout_marginEnd="@dimen/card_view_margin_horizontal"
|
||||
android:layout_marginLeft="@dimen/card_view_margin_horizontal"
|
||||
android:layout_marginRight="@dimen/card_view_margin_horizontal"
|
||||
android:layout_marginTop="@dimen/card_view_margin_vertical"
|
||||
android:layout_marginTop="@dimen/default_margin"
|
||||
android:layout_marginBottom="@dimen/card_view_margin_vertical"
|
||||
android:layout_gravity="bottom"
|
||||
app:cardCornerRadius="4dp">
|
||||
|
||||
@@ -22,4 +22,5 @@
|
||||
android:id="@+id/fingerprint_container"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
tools:visibility="gone" />
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<LinearLayout
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
<FrameLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content">
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true">
|
||||
<com.google.android.material.floatingactionbutton.FloatingActionButton
|
||||
android:id="@+id/lock_button"
|
||||
style="@style/KeepassDXStyle.Fab.Special"
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:orientation="vertical">
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
<FrameLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content">
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true">
|
||||
<!-- Icon -->
|
||||
<androidx.appcompat.widget.AppCompatImageButton
|
||||
android:id="@+id/template_icon_button"
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
android:layout_marginBottom="@dimen/default_margin"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:importantForAutofill="noExcludeDescendants"
|
||||
tools:ignore="UnusedAttribute">
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
android:orientation="vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:paddingTop="6dp"
|
||||
android:paddingLeft="12dp"
|
||||
android:paddingStart="12dp"
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:minHeight="?attr/actionBarSize"
|
||||
android:orientation="vertical">
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
@@ -68,34 +69,6 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?attr/colorPrimary"
|
||||
android:orientation="vertical">
|
||||
<com.google.android.material.chip.ChipGroup
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
app:chipSpacingVertical="16dp"
|
||||
android:paddingTop="18dp"
|
||||
android:paddingStart="@dimen/default_margin"
|
||||
android:paddingLeft="@dimen/default_margin"
|
||||
android:paddingEnd="@dimen/default_margin"
|
||||
android:paddingRight="@dimen/default_margin"
|
||||
android:paddingBottom="@dimen/default_margin">
|
||||
<com.google.android.material.chip.Chip
|
||||
android:id="@+id/search_chip_case_sensitive"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:checked="false"
|
||||
style="@style/KeepassDXStyle.Chip.Filter.Icon"
|
||||
android:text="@string/case_sensitive"
|
||||
app:closeIcon="@drawable/ic_case_sensitive_white_24dp" />
|
||||
<com.google.android.material.chip.Chip
|
||||
android:id="@+id/search_chip_regex"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:checked="false"
|
||||
style="@style/KeepassDXStyle.Chip.Filter.Icon"
|
||||
android:text="@string/regex"
|
||||
app:closeIcon="@drawable/ic_regex_white_24dp" />
|
||||
</com.google.android.material.chip.ChipGroup>
|
||||
<com.google.android.material.chip.ChipGroup
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -173,7 +146,7 @@
|
||||
android:text="@string/tags"/>
|
||||
</com.google.android.material.chip.ChipGroup>
|
||||
<com.google.android.material.chip.ChipGroup
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
app:chipSpacingVertical="16dp"
|
||||
android:paddingTop="12dp"
|
||||
@@ -208,5 +181,33 @@
|
||||
android:enabled="false"
|
||||
android:text="@string/template"/>
|
||||
</com.google.android.material.chip.ChipGroup>
|
||||
<com.google.android.material.chip.ChipGroup
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
app:chipSpacingVertical="16dp"
|
||||
android:paddingTop="18dp"
|
||||
android:paddingStart="@dimen/default_margin"
|
||||
android:paddingLeft="@dimen/default_margin"
|
||||
android:paddingEnd="@dimen/default_margin"
|
||||
android:paddingRight="@dimen/default_margin"
|
||||
android:paddingBottom="@dimen/default_margin">
|
||||
<com.google.android.material.chip.Chip
|
||||
android:id="@+id/search_chip_case_sensitive"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:checked="false"
|
||||
style="@style/KeepassDXStyle.Chip.Filter.Icon"
|
||||
android:text="@string/case_sensitive"
|
||||
app:closeIcon="@drawable/ic_case_sensitive_white_24dp" />
|
||||
<com.google.android.material.chip.Chip
|
||||
android:id="@+id/search_chip_regex"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:checked="false"
|
||||
style="@style/KeepassDXStyle.Chip.Filter.Icon"
|
||||
android:text="@string/regex"
|
||||
app:closeIcon="@drawable/ic_regex_white_24dp" />
|
||||
</com.google.android.material.chip.ChipGroup>
|
||||
</LinearLayout>
|
||||
</LinearLayout>
|
||||
@@ -19,10 +19,10 @@
|
||||
-->
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
tools:targetApi="o"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:filterTouchesWhenObscured="true"
|
||||
android:orientation="vertical">
|
||||
|
||||
<androidx.cardview.widget.CardView
|
||||
|
||||
@@ -180,7 +180,7 @@
|
||||
<string name="lock_database_screen_off_summary">اقفل قاعدة البيانات عند انغلاق الشاشة</string>
|
||||
<string name="biometric_delete_all_key_title">حذف مفاتيح التشفير</string>
|
||||
<string name="unavailable_feature_text">لا يمكن بدأ هذه الميزة .</string>
|
||||
<string name="unavailable_feature_version">نسخة الاندرويد %1$s لا تحقق ادنى متطلبات السنخة %2$s.</string>
|
||||
<string name="unavailable_feature_version">هذا الجهاز يعمل بأندرويد %1$s لكن يحتاج نسخة %2$s على الأقل.</string>
|
||||
<string name="file_name">اسم الملف</string>
|
||||
<string name="path">مسار</string>
|
||||
<string name="database_history">تأريخ</string>
|
||||
@@ -190,13 +190,13 @@
|
||||
<string name="biometric_unlock_enable_summary">يسمح بفحص البصمة لفتح قاعدة البيانات</string>
|
||||
<string name="monospace_font_fields_enable_summary">غير خط الحقول لتوضيح المحارف</string>
|
||||
<string name="allow_copy_password_title">الوثوق بالحافظة</string>
|
||||
<string name="allow_copy_password_summary">اسمح لكلمة السر والحقول المحمية بالدخول للحافظة</string>
|
||||
<string name="allow_copy_password_summary">اسمح بنسخ كلمة السر والحقول المحمية إلى للحافظة</string>
|
||||
<string name="allow_copy_password_warning">تحذير: الحافظة مشتركة بين التطبيقات وستتمكن التطبيقات الاخرى من الوصول الى المعلومات الحساسة.</string>
|
||||
<string name="database_name_title">اسم قاعدة البيانات</string>
|
||||
<string name="database_description_title">وصف قاعدة البيانات</string>
|
||||
<string name="database_version_title">نسخة قاعدة البيانات</string>
|
||||
<string name="text_appearance">نص</string>
|
||||
<string name="application_appearance">تطبيق</string>
|
||||
<string name="application_appearance">الواجهة</string>
|
||||
<string name="other">أخرى</string>
|
||||
<string name="keyboard">لوحة مفاتيح</string>
|
||||
<string name="keyboard_setting_label">إعدادات Magikeyboard</string>
|
||||
@@ -227,7 +227,7 @@
|
||||
<string name="sort_last_access_time">الوصول</string>
|
||||
<string name="lock">إقفال</string>
|
||||
<string name="assign_master_key">تعيين مفتاح رئيسي</string>
|
||||
<string name="recycle_bin_title">استخدم سلة المحذوفات</string>
|
||||
<string name="recycle_bin_title">استخدام سلة المحذوفات</string>
|
||||
<string name="magic_keyboard_title">Magikeyboard</string>
|
||||
<string name="keyboard_name">Magikeyboard</string>
|
||||
<string name="keyboard_label">Magikeyboard (KeePassDX)</string>
|
||||
@@ -334,7 +334,7 @@
|
||||
<string name="database_data_compression_title">ضغط البيانات</string>
|
||||
<string name="data">البيانات</string>
|
||||
<string name="unavailable_feature_hardware">تعذر العثور على ماسح البصمة.</string>
|
||||
<string name="biometric_delete_all_key_summary">احذف كل مفاتيح التشفير المرتبطة بالبصمة</string>
|
||||
<string name="biometric_delete_all_key_summary">احذف كل مفاتيح التعمية المرتبطة بفك القفل المتقدم</string>
|
||||
<string name="advanced_unlock_explanation_summary">استخدم إلغاء القفل المتقدم لفتح قاعدة البيانات بسهولة</string>
|
||||
<string name="lock_database_show_button_summary">يعرض زر القَفل في الواجهة</string>
|
||||
<string name="lock_database_show_button_title">اعرض زر القَفل</string>
|
||||
@@ -357,8 +357,6 @@
|
||||
<string name="autofill_web_domain_blocklist_title">قائمة النطاقات المحظورة</string>
|
||||
<string name="autofill_application_id_blocklist_summary">منع الملء التلقائي للتطبيقات الموجودة في القائمة</string>
|
||||
<string name="autofill_application_id_blocklist_title">قائمة التطبيقات المحظورة</string>
|
||||
<string name="autofill_auto_search_summary">يقترح تلقائيا نتائج البحث في النطاقات ومعرفات التطبيقات</string>
|
||||
<string name="autofill_auto_search_title">البحث التلقائي</string>
|
||||
<string name="content_description_repeat_toggle_password_visibility">بدِّل ظهور كلمة السر</string>
|
||||
<string name="hide_expired_entries_summary">لن تعرض المدخلات منتهية الصلاحية</string>
|
||||
<string name="education_read_only_summary">غيِّر وضع الجلسة.
|
||||
@@ -474,7 +472,6 @@
|
||||
<string name="credential_before_click_advanced_unlock_button">اكتب كلمة السر، وأنقر هذا الزر.</string>
|
||||
<string name="device_credential">بيانات الاعتماد للجهاز</string>
|
||||
<string name="advanced_unlock_tap_delete">انفر لحذف مفاتيح فك القفل المتقدم</string>
|
||||
<string name="keyboard_search_share_title">ابحث في المعلومات المشاركة</string>
|
||||
<string name="keyboard_auto_go_action_title">إجراء اللمس التلقائي</string>
|
||||
<string name="keyboard_previous_fill_in_title">إجراء لمس تلقائي</string>
|
||||
<string name="keyboard_previous_lock_title">اقفل قاعدة البيانات</string>
|
||||
@@ -504,4 +501,23 @@
|
||||
<string name="regex">تعابير نمطية</string>
|
||||
<string name="enable_keep_screen_on_title">أبق الشاشة شغّالة</string>
|
||||
<string name="enable_education_screens_summary">أبرز العناصر لتعلم طريقة عمل التطبيق</string>
|
||||
<string name="autofill_read_only_save">غير مسموح حفظ البيانات في قاعدة بيانات مفتوحة للقراءة فقط.</string>
|
||||
<string name="autofill_inline_suggestions_keyboard">أُضيف اقتراح ملء تلقائي.</string>
|
||||
<string name="keyboard_previous_database_credentials_summary">ارجع للوحة المفاتيح السابقة تلقائيًا في شاشة بيانات اعتماد قاعدة البيانات.</string>
|
||||
<string name="autofill_manual_selection_summary">اعرض خيارًا يسمح للمستخدم باختيار مدخلة من قاعدة البيانات</string>
|
||||
<string name="keyboard_previous_search_title">شاشة البحث</string>
|
||||
<string name="keyboard_previous_search_summary">ارجع للوحة المفاتيح السابقة تلقائيًا في شاشة البحث</string>
|
||||
<string name="autofill_save_search_info_summary">حاول حفظ معلومات البحث بعد اختيار مدخلة يدويًا وهذا لتسهيل استخدمها مستقبلًا</string>
|
||||
<string name="keyboard_previous_lock_summary">ارجع للوحة المفاتيح السابقة تلقائيًا بعد إغلاق قاعدة البيانات</string>
|
||||
<string name="autofill_close_database_summary">أغلق قاعدة البيانات بعد الملء التلقائي</string>
|
||||
<string name="autofill_ask_to_save_data_summary">اسأل عن حفظ البيانات عند ملئك لنموذج</string>
|
||||
<string name="templates_group_uuid_title">مجموعة القوالب</string>
|
||||
<string name="advanced_unlock_timeout">انتهت مهلة فك القفل المتقدم</string>
|
||||
<string name="temp_advanced_unlock_timeout_summary">مهلة استخدام فك القفل المتقدم قبل حذف محتواها</string>
|
||||
<string name="advanced_unlock_delete_all_key_warning">أتريد حذف كل مفاتيح التعمية المرتبطة بفك القفل المتقدم؟</string>
|
||||
<string name="templates">القوالب</string>
|
||||
<string name="templates_group_enable_title">استخدام القوالب</string>
|
||||
<string name="notification">الإشعارات</string>
|
||||
<string name="temp_advanced_unlock_enable_summary">لا تستخدم أي محتوى معمى لاستخدام فك القفل المتقدم</string>
|
||||
<string name="temp_advanced_unlock_timeout_title">انتهاء صلاحية فك القفل المتقدم</string>
|
||||
</resources>
|
||||
@@ -132,8 +132,6 @@
|
||||
<string name="keyboard_notification_entry_clear_close_summary">Zatvori bazu podataka prilikom zatvaranja obaveštenja</string>
|
||||
<string name="keyboard_notification_entry_clear_close_title">Isprazni pri zatvaranju</string>
|
||||
<string name="keyboard_save_search_info_summary">Pokušaj da sačuvaš podeljene informacije prilikom ručnog izbora unosa</string>
|
||||
<string name="keyboard_search_share_summary">Automatski тражите заједничке информације да бисте попунили тастатуру</string>
|
||||
<string name="keyboard_search_share_title">Traži podeljene informacije</string>
|
||||
<string name="keyboard_notification_entry_summary">Prikaži obaveštenje kada je unos dostupn</string>
|
||||
<string name="keyboard_notification_entry_title">Obaveštenje</string>
|
||||
<string name="keyboard_selection_entry_summary">Prikaži polja za unos podataka u Magikeyboard-u prilikom prikazivanja unosa</string>
|
||||
|
||||
@@ -41,4 +41,53 @@
|
||||
<string name="clipboard_cleared">ক্লিপবোর্ড পরিষ্কার করা হয়েছে</string>
|
||||
<string name="entry_accessed">শেষ ব্যবহার</string>
|
||||
<string name="clipboard_error">কিছু ডিভাইস অ্যাপ্লিকেশনগুলোকে ক্লিপবোর্ড ব্যবহার করতে দেয় না।</string>
|
||||
<string name="otp_digits">সংখ্যা</string>
|
||||
<string name="password">পাসওয়ার্ড</string>
|
||||
<string name="menu_open">খুলো</string>
|
||||
<string name="read_only">লিখন-সুরক্ষিত</string>
|
||||
<string name="space">স্পেস</string>
|
||||
<string name="menu_file_selection_read_only">লিখন-সুরক্ষিত</string>
|
||||
<string name="protection">সুরক্ষা</string>
|
||||
<string name="menu_cancel">বাতিল</string>
|
||||
<string name="root">মূল</string>
|
||||
<string name="sort_creation_time">সৃষ্টি</string>
|
||||
<string name="database_history">ইতিহাস</string>
|
||||
<string name="hint_length">দৈর্ঘ্য</string>
|
||||
<string name="length">দৈর্ঘ্য</string>
|
||||
<string name="about">সম্পর্কে</string>
|
||||
<string name="warning">সতর্কতা</string>
|
||||
<string name="menu_edit">সম্পাদনা</string>
|
||||
<string name="sort_title">শিরোনাম</string>
|
||||
<string name="sort_username">নাম</string>
|
||||
<string name="uppercase">বড় হাতের</string>
|
||||
<string name="menu_appearance_settings">চেহারা</string>
|
||||
<string name="entry_url">ইউআরএল</string>
|
||||
<string name="menu_donate">দান করো</string>
|
||||
<string name="menu_copy">অনুলিপি</string>
|
||||
<string name="menu_paste">লেপন</string>
|
||||
<string name="hint_pass">পাসওয়ার্ড</string>
|
||||
<string name="sort_last_modify_time">পরিবর্তন</string>
|
||||
<string name="otp_counter">গণক</string>
|
||||
<string name="parallelism">উপমা</string>
|
||||
<string name="minus">বিয়োগ</string>
|
||||
<string name="never">কখনো না</string>
|
||||
<string name="menu_move">স্থানান্তর</string>
|
||||
<string name="otp_secret">গোপন</string>
|
||||
<string name="entry_password">পাসওয়ার্ড</string>
|
||||
<string name="sort_menu">সাজাও</string>
|
||||
<string name="entry_title">শিরোনাম</string>
|
||||
<string name="otp_algorithm">অ্যালগরিদম</string>
|
||||
<string name="entry_otp">ওটিপি</string>
|
||||
<string name="entry_user_name">নাম</string>
|
||||
<string name="hint_keyfile">চাবিনথি(কি ফাইল)</string>
|
||||
<string name="settings">পছন্দসমূহ</string>
|
||||
<string name="lowercase">ছোটো হাতের</string>
|
||||
<string name="menu_delete">মুছো</string>
|
||||
<string name="menu_search">অনুসন্ধান</string>
|
||||
<string name="menu_open_file_read_and_write">পরিবর্তনযোগ্য</string>
|
||||
<string name="progress_title">কাজ করা হচ্ছে…</string>
|
||||
<string name="special">বিশেষ</string>
|
||||
<string name="underline">নিম্নরেখা</string>
|
||||
<string name="sort_last_access_time">প্রবেশ</string>
|
||||
<string name="search">অনুসন্ধান</string>
|
||||
</resources>
|
||||
96
app/src/main/res/values-bn/strings.xml
Normal file
96
app/src/main/res/values-bn/strings.xml
Normal file
@@ -0,0 +1,96 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="contact">যোগাযোগ</string>
|
||||
<string name="contribution">অবদান</string>
|
||||
<string name="feedback">প্রতিক্রিয়া</string>
|
||||
<string name="homepage">মূলপাতা</string>
|
||||
<string name="about_description">কিপাস পাসওয়ার্ড ম্যানেজারের অ্যান্ড্রয়েড বাস্তবায়ন</string>
|
||||
<string name="accept">গ্রহণ</string>
|
||||
<string name="add_entry">এন্টরি যোগ করুন</string>
|
||||
<string name="edit_entry">এন্টরি সম্পাদনা করুন</string>
|
||||
<string name="add_group">গ্রুপ যোগ করুন</string>
|
||||
<string name="master_key">প্রধান চাবি</string>
|
||||
<string name="security">নিরাপত্তা</string>
|
||||
<string name="encryption">এনক্রিপশন</string>
|
||||
<string name="encryption_algorithm">এনক্রিপশন অ্যালগরিদম</string>
|
||||
<string name="key_derivation_function">কি পাওয়ার ফাংশন</string>
|
||||
<string name="app_timeout">অ্যাপের সময় পার হয়ে গিয়েছিলো</string>
|
||||
<string name="app_timeout_summary">ডাটাবেস লক করার আগে অব্যবহৃত সময়</string>
|
||||
<string name="application">অ্যাপ</string>
|
||||
<string name="brackets">ব্র্যাকেট</string>
|
||||
<string name="extended_ASCII">বর্ধিত ASCII</string>
|
||||
<string name="file_manager_install_description">ACTION_CREATE_DOCUMENT এবং ACTION_OPEN_DOCUMENT অভিপ্রায় গ্রহণ করে এমন একটি ফাইল ম্যানেজার ডাটাবেস ফাইলগুলো তৈরি করা, খোলা এবং সংরক্ষণ করতে প্রয়োজন।</string>
|
||||
<string name="allow">অনুমোদন</string>
|
||||
<string name="clipboard_cleared">ক্লিপবোর্ড পরিষ্কার করা হয়েছে</string>
|
||||
<string name="clipboard_error_title">ক্লিপবোর্ড ত্রুটি</string>
|
||||
<string name="clipboard_error">কিছু ডিভাইস অ্যাপ্লিকেশনগুলোকে ক্লিপবোর্ড ব্যবহার করতে দেয় না।</string>
|
||||
<string name="content_description_background">পটভূমি</string>
|
||||
<string name="validate">সত্যায়ন</string>
|
||||
<string name="discard">বাতিল</string>
|
||||
<string name="content_description_update_from_list">হালনাগাদ</string>
|
||||
<string name="content_description_remove_from_list">সরাও</string>
|
||||
<string name="database">তথ্যভিত্তি</string>
|
||||
<string name="digits">ডিজিট</string>
|
||||
<string name="entry_accessed">শেষ ব্যবহার</string>
|
||||
<string name="entry_cancel">বাতিল</string>
|
||||
<string name="entry_notes">দ্রষ্টব্য</string>
|
||||
<string name="entry_created">তৈরিকৃত</string>
|
||||
<string name="entry_expires">মেয়াদ</string>
|
||||
<string name="entry_UUID">বিশেষ শনাক্তকরণ সংকেত(ইউইউআইডি)</string>
|
||||
<string name="entry_history">ইতিহাস</string>
|
||||
<string name="entry_attachments">সংযুক্তি</string>
|
||||
<string name="entry_keyfile">চাবিনথি(কিফাইল)</string>
|
||||
<string name="entry_modified">পরিবর্তিত</string>
|
||||
<string name="clipboard_error_clear">ক্লিপবোর্ড পরিষ্কার করা যায়নি</string>
|
||||
<string name="clipboard_timeout">ক্লিপবোর্ডের সময় শেষ</string>
|
||||
<string name="entry_password">পাসওয়ার্ড</string>
|
||||
<string name="entry_title">শিরোনাম</string>
|
||||
<string name="otp_secret">গোপন</string>
|
||||
<string name="hint_keyfile">চাবিনথি(কি ফাইল)</string>
|
||||
<string name="menu_donate">দান করো</string>
|
||||
<string name="menu_edit">সম্পাদনা</string>
|
||||
<string name="database_history">ইতিহাস</string>
|
||||
<string name="menu_appearance_settings">চেহারা</string>
|
||||
<string name="otp_counter">গণক</string>
|
||||
<string name="otp_digits">সংখ্যা</string>
|
||||
<string name="otp_algorithm">অ্যালগরিদম</string>
|
||||
<string name="entry_otp">ওটিপি</string>
|
||||
<string name="entry_url">ইউআরএল</string>
|
||||
<string name="entry_user_name">নাম</string>
|
||||
<string name="hint_length">দৈর্ঘ্য</string>
|
||||
<string name="hint_pass">পাসওয়ার্ড</string>
|
||||
<string name="password">পাসওয়ার্ড</string>
|
||||
<string name="length">দৈর্ঘ্য</string>
|
||||
<string name="lowercase">ছোটো হাতের</string>
|
||||
<string name="about">সম্পর্কে</string>
|
||||
<string name="settings">পছন্দসমূহ</string>
|
||||
<string name="menu_copy">অনুলিপি</string>
|
||||
<string name="menu_move">স্থানান্তর</string>
|
||||
<string name="menu_paste">লেপন</string>
|
||||
<string name="menu_delete">মুছো</string>
|
||||
<string name="menu_cancel">বাতিল</string>
|
||||
<string name="menu_open">খুলো</string>
|
||||
<string name="menu_search">অনুসন্ধান</string>
|
||||
<string name="menu_file_selection_read_only">লিখন-সুরক্ষিত</string>
|
||||
<string name="menu_open_file_read_and_write">পরিবর্তনযোগ্য</string>
|
||||
<string name="minus">বিয়োগ</string>
|
||||
<string name="never">কখনো না</string>
|
||||
<string name="progress_title">কাজ করা হচ্ছে…</string>
|
||||
<string name="protection">সুরক্ষা</string>
|
||||
<string name="read_only">লিখন-সুরক্ষিত</string>
|
||||
<string name="root">মূল</string>
|
||||
<string name="parallelism">উপমা</string>
|
||||
<string name="space">স্পেস</string>
|
||||
<string name="sort_menu">সাজাও</string>
|
||||
<string name="sort_title">শিরোনাম</string>
|
||||
<string name="sort_username">নাম</string>
|
||||
<string name="sort_creation_time">সৃষ্টি</string>
|
||||
<string name="sort_last_modify_time">পরিবর্তন</string>
|
||||
<string name="sort_last_access_time">প্রবেশ</string>
|
||||
<string name="special">বিশেষ</string>
|
||||
<string name="search">অনুসন্ধান</string>
|
||||
<string name="underline">নিম্নরেখা</string>
|
||||
<string name="uppercase">বড় হাতের</string>
|
||||
<string name="warning">সতর্কতা</string>
|
||||
<string name="clipboard_timeout_summary">ক্লিপবোর্ডে সংরক্ষণ সময়কাল (যদি তোমার যন্ত্র সনর্থন করে)</string>
|
||||
</resources>
|
||||
@@ -429,15 +429,11 @@
|
||||
<string name="validate">Zkontrolovat</string>
|
||||
<string name="education_setup_OTP_summary">Nastavit správu One-Time hesla (HOTP / TOTP) pro založení tokenu požadovaného pro dvoufázové ověření (2FA).</string>
|
||||
<string name="education_setup_OTP_title">Nastavit OTP</string>
|
||||
<string name="autofill_auto_search_summary">Automaticky navrhnout výsledky hledání z webové domény nebo ID aplikace</string>
|
||||
<string name="autofill_auto_search_title">Automatické vyhledávání</string>
|
||||
<string name="lock_database_show_button_summary">Zobrazí tlačítko zámku v uživatelském rozhraní</string>
|
||||
<string name="lock_database_show_button_title">Zobrazit tlačítko zámku</string>
|
||||
<string name="autofill_preference_title">Nastavení samovyplnění</string>
|
||||
<string name="warning_database_link_revoked">Přístup k souboru zrušenému správcem souborů</string>
|
||||
<string name="error_label_exists">Tento štítek už existuje.</string>
|
||||
<string name="keyboard_search_share_summary">Při sdílení URL s KeePassDX filtrovat záznamy podle URL domény</string>
|
||||
<string name="keyboard_search_share_title">Prohledat sdílené info</string>
|
||||
<string name="autofill_block_restart">Aktivovat zamezení restartováním aplikace obsahující formulář.</string>
|
||||
<string name="autofill_block">Zamezit samovyplnění</string>
|
||||
<string name="autofill_web_domain_blocklist_summary">Seznam domén, pro něž se zamezí samovyplnění</string>
|
||||
@@ -475,13 +471,13 @@
|
||||
<string name="autofill_read_only_save">Uložení dat není povoleno, je-li databáze v režimu pouze pro čtení.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Po dokončení vyplňování formuláře se zeptat na uložení dat</string>
|
||||
<string name="autofill_ask_to_save_data_title">Zeptat se před uložením</string>
|
||||
<string name="autofill_save_search_info_summary">Pokuste se uložit údaje hledání, když manuálně vybíráte položku</string>
|
||||
<string name="autofill_save_search_info_summary">Pokusit se uložit údaje hledání pro příští použití, vybíráte-li manuálně záznam</string>
|
||||
<string name="autofill_save_search_info_title">Uložit výsledky vyhledávání</string>
|
||||
<string name="autofill_close_database_summary">Zavřít databázi po samovyplnění polí</string>
|
||||
<string name="autofill_close_database_title">Zavřít databázi</string>
|
||||
<string name="keyboard_previous_lock_summary">Po uzamknutí databáze automaticky přepnout zpět na předchozí klávesnici</string>
|
||||
<string name="keyboard_previous_lock_title">Uzamknout databázi</string>
|
||||
<string name="keyboard_save_search_info_summary">Je-li po sdílení URL s KeePassDX vybrán záznam, pokusit se zapamatovat onen záznam pro další použití</string>
|
||||
<string name="keyboard_save_search_info_summary">Pokusit se uložit sdílený záznam pro příští použití, je-li záznam manuálně vybrán</string>
|
||||
<string name="keyboard_save_search_info_title">Uložit sdílené info</string>
|
||||
<string name="notification">Oznámení</string>
|
||||
<string name="biometric_security_update_required">Vyžadována aktualizace biometrického zabezpečení.</string>
|
||||
@@ -508,7 +504,7 @@
|
||||
<string name="advanced_unlock_invalid_key">Nedaří se načíst klíč rozšířeného odemknutí. Prosím, smažte ho a opakujte proces rozpoznání odemknutí.</string>
|
||||
<string name="advanced_unlock_prompt_extract_credential_message">Načíst důvěrný údaj pomocí dat rozšířeného odemknutí</string>
|
||||
<string name="advanced_unlock_prompt_extract_credential_title">Otevřít pomocí rozšířeného odemykání</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">Varování: Pokud použijete rozpoznání rozšířeného odemknutí, musíte si i nadále pamatovat hlavní heslo.</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">Pokud použijete rozpoznání rozšířeného odemknutí, musíte si i nadále pamatovat hlavní heslo.</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_title">Rozpoznání rozšířeného odemknutí</string>
|
||||
<string name="open_advanced_unlock_prompt_store_credential">Pro uložení důvěrných údajů otevřete pobídku rozšířeného odemknutí</string>
|
||||
<string name="open_advanced_unlock_prompt_unlock_database">Databázi otevřete i pomocí nabídky rozšířeného odemykání</string>
|
||||
@@ -626,4 +622,27 @@
|
||||
<string name="navigation_drawer_close">Zavření navigačního panelu</string>
|
||||
<string name="inherited">Převzít</string>
|
||||
<string name="auto_type_sequence">Posloupnost automatického vyplňování</string>
|
||||
<string name="content_description_passphrase_word_count">Počet slov hesla</string>
|
||||
<string name="passphrase">Heslo</string>
|
||||
<string name="colorize_password_title">Zabarvit hesla</string>
|
||||
<string name="colorize_password_summary">Zabarvit znaky hesla podle typu</string>
|
||||
<string name="warning_database_already_opened">Databáze je již otevřená, zavřete ji, než otevřete jinou</string>
|
||||
<string name="advanced_unlock_keystore_warning">Tato funkce uloží přihlašovací údaje v bezpečném úložišti klíčů Vašeho zařízení.
|
||||
\n
|
||||
\nV závislosti na implementaci nativního API operačního systému nemusí být plně funkční.
|
||||
\nOvěřte kompatibilitu a zabezpečení úložiště klíčů u výrobce svého zařízení a dodavatele operačního systému, jejž používáte.</string>
|
||||
<string name="keyboard_previous_search_title">Panel hledání</string>
|
||||
<string name="keyboard_previous_search_summary">Automaticky přepnout na předchozí klávesnici v panelu hledání</string>
|
||||
<string name="entropy">Entropie: %1$s bitů</string>
|
||||
<string name="entropy_calculate">Entropie: spočítat…</string>
|
||||
<string name="at_least_one_char">Alespoň jeden znak z každé</string>
|
||||
<string name="entropy_high">Entropie: vysoká</string>
|
||||
<string name="exclude_ambiguous_chars">Vyloučit víceznačné znaky</string>
|
||||
<string name="consider_chars_filter">Uvážit znaky</string>
|
||||
<string name="word_separator">Oddělovač</string>
|
||||
<string name="ignore_chars_filter">Vyloučit znaky</string>
|
||||
<string name="lower_case">malá písmena</string>
|
||||
<string name="upper_case">VELKÁ PÍSMENA</string>
|
||||
<string name="title_case">Titulové Psaní</string>
|
||||
<string name="character_count">Počet znaků: %1$d</string>
|
||||
</resources>
|
||||
@@ -429,15 +429,11 @@
|
||||
<string name="discard">Kassér</string>
|
||||
<string name="discard_changes">Kasser ændringer\?</string>
|
||||
<string name="validate">Valider</string>
|
||||
<string name="autofill_auto_search_summary">Foreslår automatisk søgeresultater fra webdomænet eller applikations-id</string>
|
||||
<string name="autofill_auto_search_title">Automatisk søgning</string>
|
||||
<string name="lock_database_show_button_summary">Viser låseknappen i brugergrænsefladen</string>
|
||||
<string name="lock_database_show_button_title">Vis låseknap</string>
|
||||
<string name="autofill_preference_title">Indstillinger for automatisk udfyldning</string>
|
||||
<string name="warning_database_link_revoked">Adgang til filen tilbagekaldt af filadministratoren</string>
|
||||
<string name="error_label_exists">Etiketten findes allerede.</string>
|
||||
<string name="keyboard_search_share_summary">Søg automatisk efter delte oplysninger for at udfylde tastaturet</string>
|
||||
<string name="keyboard_search_share_title">Søg i delte oplysninger</string>
|
||||
<string name="autofill_block_restart">Genstart programmet, der indeholder formularen for at aktivere blokeringen.</string>
|
||||
<string name="autofill_block">Bloker autofyld</string>
|
||||
<string name="autofill_web_domain_blocklist_summary">Blokeringsliste, der forhindrer automatisk udfyldning af webdomæner</string>
|
||||
@@ -559,4 +555,16 @@
|
||||
<string name="import_app_properties_title">Importer appegenskaber</string>
|
||||
<string name="error_move_group_here">Du kan flytte en gruppe her.</string>
|
||||
<string name="error_word_reserved">Dette ord er reseveret og kan ikke bruges.</string>
|
||||
<string name="expired">Udløbet</string>
|
||||
<string name="tags">Tags</string>
|
||||
<string name="content_description_database_color">Database farve</string>
|
||||
<string name="template_group_name">Skabeloner</string>
|
||||
<string name="searchable">Søgbar</string>
|
||||
<string name="inherited">Arve</string>
|
||||
<string name="custom_data">Brugerdefinerede data</string>
|
||||
<string name="search_filters">Søg filtre</string>
|
||||
<string name="current_group">Nuværende gruppe</string>
|
||||
<string name="number">Nummer</string>
|
||||
<string name="name">Navn</string>
|
||||
<string name="type">Type</string>
|
||||
</resources>
|
||||
@@ -445,8 +445,6 @@
|
||||
<string name="discard">Verwerfen</string>
|
||||
<string name="discard_changes">Änderungen verwerfen\?</string>
|
||||
<string name="validate">Validieren</string>
|
||||
<string name="autofill_auto_search_summary">Suchergebnisse automatisch nach Web-Domain oder Anwendungs-ID vorschlagen</string>
|
||||
<string name="autofill_auto_search_title">Automatische Suche</string>
|
||||
<string name="autofill_manual_selection_title">Manuelle Auswahl</string>
|
||||
<string name="autofill_manual_selection_summary">Manuelle Auswahl des Datenbankeintrags ermöglichen</string>
|
||||
<string name="lock_database_show_button_summary">Zeigt die Sperrtaste in der Benutzeroberfläche an</string>
|
||||
@@ -454,8 +452,6 @@
|
||||
<string name="autofill_preference_title">Einstellungen für automatisches Ausfüllen</string>
|
||||
<string name="warning_database_link_revoked">Zugriff auf die Datei durch den Dateimanager widerrufen</string>
|
||||
<string name="error_label_exists">Diese Bezeichnung existiert bereits.</string>
|
||||
<string name="keyboard_search_share_summary">Beim Teilen einer URL mit KeePassDX die Einträge nach dieser URL filtern</string>
|
||||
<string name="keyboard_search_share_title">Gemeinsame Infos auswählen</string>
|
||||
<string name="autofill_block_restart">Starten Sie die Anwendung, die das Formular enthält, neu, um die Sperrung zu aktivieren.</string>
|
||||
<string name="autofill_block">Automatisches Ausfüllen sperren</string>
|
||||
<string name="autofill_web_domain_blocklist_summary">Liste der Domains, auf denen ein automatisches Ausfüllen verhindert wird</string>
|
||||
@@ -501,12 +497,12 @@
|
||||
<string name="save_mode">Speichermodus</string>
|
||||
<string name="search_mode">Suchmodus</string>
|
||||
<string name="error_registration_read_only">Das Speichern eines neuen Elements in einer schreibgeschützten Datenbank ist nicht zulässig</string>
|
||||
<string name="autofill_save_search_info_summary">Suchdaten bei manueller Auswahl einer Eingabe, wenn möglich, speichern</string>
|
||||
<string name="autofill_save_search_info_summary">Wenn möglich, die Suchinformationen bei manueller Eintragsauswahl, zur einfacheren zukünftigen Verwendung, speichern</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Nachfragen, ob die Daten gespeichert werden sollen, wenn ein Formular ausgefüllt ist</string>
|
||||
<string name="autofill_ask_to_save_data_title">Speichern von Daten abfragen</string>
|
||||
<string name="autofill_save_search_info_title">Suchinformationen speichern</string>
|
||||
<string name="autofill_close_database_summary">Datenbank nach Auswahl eines Eintrags zum automatischen Ausfüllen schließen</string>
|
||||
<string name="keyboard_save_search_info_summary">Nachdem eine URL mit KeePassDX geteilt und ein Eintrag gewählt wurde, wird versucht, sich diesen Eintrag für die weitere Nutzung zu merken</string>
|
||||
<string name="keyboard_save_search_info_summary">Wenn möglich, die gemeinsamen Informationen bei manueller Eintragsauswahl, zur einfacheren zukünftigen Verwendung, speichern</string>
|
||||
<string name="keyboard_save_search_info_title">Gemeinsame Informationen speichern</string>
|
||||
<string name="warning_empty_recycle_bin">Sollen alle ausgewählten Knoten wirklich aus dem Papierkorb gelöscht werden\?</string>
|
||||
<string name="error_field_name_already_exists">Der Feldname existiert bereits.</string>
|
||||
|
||||
@@ -413,8 +413,6 @@
|
||||
<string name="contribution">Συνεισφορά</string>
|
||||
<string name="education_setup_OTP_summary">Ρύθμιση διαχείρισης μίας-χρήσης κωδικού πρόσβασης (HOTP / TOTP) για δημιουργία token που ζητήθηκε για έλεγχο ταυτότητας δύο παραγόντων (2FA).</string>
|
||||
<string name="education_setup_OTP_title">Ρύθμιση OTP</string>
|
||||
<string name="autofill_auto_search_summary">Προτείνετε αυτόματα αποτελέσματα αναζήτησης από τον τομέα ιστού ή το αναγνωριστικό εφαρμογής</string>
|
||||
<string name="autofill_auto_search_title">Αυτόματη αναζήτηση</string>
|
||||
<string name="lock_database_show_button_summary">Εμφανίζει το κουμπί κλειδώματος στη διεπαφή χρήστη</string>
|
||||
<string name="lock_database_show_button_title">Εμφάνιση κουμπιού κλειδώματος</string>
|
||||
<string name="autofill_preference_title">Ρυθμίσεις Αυτόματης Συμπλήρωσης</string>
|
||||
@@ -449,8 +447,6 @@
|
||||
<string name="keyboard_previous_database_credentials_summary">Επιστρέψτε αυτόματα στο προηγούμενο πληκτρολόγιο στην οθόνη διαπιστευτηρίων βάσης δεδομένων</string>
|
||||
<string name="keyboard_previous_database_credentials_title">Οθόνη διαπιστευτηρίων βάσης δεδομένων</string>
|
||||
<string name="keyboard_change">Εναλλαγή πληκτρολογίου</string>
|
||||
<string name="keyboard_search_share_title">Αναζήτηση κοινών πληροφοριών</string>
|
||||
<string name="keyboard_search_share_summary">Κατά την κοινή χρήση ενός URL στο KeePassDX, φιλτράρετε τις καταχωρήσεις χρησιμοποιώντας αυτόν τον τομέα URL</string>
|
||||
<string name="database_data_remove_unlinked_attachments_summary">Καταργεί συνημμένα που περιέχονται στη βάση δεδομένων, αλλά δεν συνδέονται με μια καταχώριση</string>
|
||||
<string name="database_data_remove_unlinked_attachments_title">Κατάργηση αποσυνδεδεμένων δεδομένων</string>
|
||||
<string name="data">Δεδομένα</string>
|
||||
@@ -474,13 +470,13 @@
|
||||
<string name="autofill_read_only_save">Δεν επιτρέπεται η αποθήκευση δεδομένων για μια βάση δεδομένων που ανοίγει ως μόνο για ανάγνωση.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Ζητήστε αποθήκευση δεδομένων όταν ολοκληρωθεί η συμπλήρωση μιας φόρμας</string>
|
||||
<string name="autofill_ask_to_save_data_title">Ζητήστε να αποθηκεύσετε δεδομένα</string>
|
||||
<string name="autofill_save_search_info_summary">Προσπαθήστε να αποθηκεύσετε πληροφορίες αναζήτησης κατά την επιλογή χειροκίνητης καταχώρισης</string>
|
||||
<string name="autofill_save_search_info_summary">Προσπαθήστε να αποθηκεύσετε πληροφορίες αναζήτησης όταν κάνετε μια χειροκίνητη επιλογή καταχώρησης για ευκολότερες μελλοντικές χρήσεις</string>
|
||||
<string name="autofill_save_search_info_title">Αποθήκευση πληροφοριών αναζήτησης</string>
|
||||
<string name="autofill_close_database_summary">Κλείστε τη βάση δεδομένων μετά από μια επιλογή αυτόματης συμπλήρωσης</string>
|
||||
<string name="autofill_close_database_title">Κλείσιμο βάσης δεδομένων</string>
|
||||
<string name="keyboard_previous_lock_summary">Επιστρέψτε αυτόματα στο προηγούμενο πληκτρολόγιο μετά το κλείδωμα της βάσης δεδομένων</string>
|
||||
<string name="keyboard_previous_lock_title">Κλείδωμα βάσης δεδομένων</string>
|
||||
<string name="keyboard_save_search_info_summary">Μετά την κοινή χρήση ενός URL στο KeePassDX , όταν έχει επιλεγεί μια καταχώρηση, προσπαθήστε να θυμηθείτε αυτήν την καταχώρηση για περαιτέρω χρήσεις</string>
|
||||
<string name="keyboard_save_search_info_summary">Προσπαθήστε να αποθηκεύσετε τις κοινές πληροφορίες όταν κάνετε μια χειροκίνητη επιλογή καταχώρισης για ευκολότερες μελλοντικές χρήσεις</string>
|
||||
<string name="keyboard_save_search_info_title">Αποθήκευση κοινόχρηστων πληροφοριών</string>
|
||||
<string name="notification">Ειδοποίηση</string>
|
||||
<string name="biometric_security_update_required">Απαιτείται ενημέρωση βιομετρικής ασφάλειας.</string>
|
||||
|
||||
24
app/src/main/res/values-en-rGB/strings.xml
Normal file
24
app/src/main/res/values-en-rGB/strings.xml
Normal file
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="warning_password_encoding">Avoid password characters outside of text encoding format in database file (unrecognised chars are converted to the same letter).</string>
|
||||
<string name="keystore_not_accessible">The keystore is not properly initialised.</string>
|
||||
<string name="colorize_password_summary">Colourise password characters by type</string>
|
||||
<string name="content_description_entry_background_color">Entry background colour</string>
|
||||
<string name="invalid_db_sig">Could not recognise the database format.</string>
|
||||
<string name="advanced_unlock_not_recognized">Could not recognise advanced unlock print</string>
|
||||
<string name="advanced_unlock_prompt_not_initialized">Unable to initialise advanced unlock prompt.</string>
|
||||
<string name="download_initialization">Initialising…</string>
|
||||
<string name="download_finalization">Finalising…</string>
|
||||
<string name="download_canceled">Cancelled!</string>
|
||||
<string name="database_custom_color_title">Custom database colour</string>
|
||||
<string name="colorize_password_title">Colourise passwords</string>
|
||||
<string name="content_description_entry_foreground_color">Entry foreground colour</string>
|
||||
<string name="show_entry_colors_title">Entry colours</string>
|
||||
<string name="content_description_database_color">Database colour</string>
|
||||
<string name="show_entry_colors_summary">Displays foreground and background colours in an entry</string>
|
||||
<string name="education_new_node_summary">Entries help manage your digital identities.
|
||||
\n
|
||||
\nGroups (~folders) organise entries in your database.</string>
|
||||
<string name="error_otp_type">The existing OTP type is not recognised by this form, its validation may no longer correctly generate the token.</string>
|
||||
<string name="html_text_buy_pro">By buying the pro version, you will have access to this <strong>visual style</strong> and you will especially help <strong>the realisation of community projects.</strong></string>
|
||||
</resources>
|
||||
@@ -26,17 +26,17 @@
|
||||
<string name="add_entry">Añadir entrada</string>
|
||||
<string name="add_group">Añadir grupo</string>
|
||||
<string name="encryption_algorithm">Algoritmo de cifrado</string>
|
||||
<string name="app_timeout">Tiempo de espera excedido</string>
|
||||
<string name="app_timeout">Tiempo de espera superado</string>
|
||||
<string name="app_timeout_summary">Inactividad antes del bloqueo de aplicación</string>
|
||||
<string name="application">Aplicación</string>
|
||||
<string name="menu_app_settings">Configuración de la aplicación</string>
|
||||
<string name="brackets">Paréntesis</string>
|
||||
<string name="brackets">Corchete</string>
|
||||
<string name="file_manager_install_description">Se requiere un administrador de archivos que acepte la acciones de intención ACTION_CREATE_DOCUMENT y ACTION_OPEN_DOCUMENT para crear, abrir y guardar los archivos de la base de datos.</string>
|
||||
<string name="clipboard_cleared">Portapapeles limpiado</string>
|
||||
<string name="clipboard_cleared">Portapapeles vaciado</string>
|
||||
<string name="clipboard_timeout">Portapapeles caducado</string>
|
||||
<string name="clipboard_timeout_summary">Duración del almacenamiento en el portapapeles (si lo admite su dispositivo)</string>
|
||||
<string name="select_to_copy">Seleccionar para copiar %1$s en el portapapeles</string>
|
||||
<string name="retrieving_db_key">Recuperando la clave de la base de datos…</string>
|
||||
<string name="clipboard_timeout_summary">Duración del almacenaje en el portapapeles (si lo admite su dispositivo)</string>
|
||||
<string name="select_to_copy">Seleccionar para copiar %1$s al portapapeles</string>
|
||||
<string name="retrieving_db_key">Recuperando clave de BdD…</string>
|
||||
<string name="database">Base de datos</string>
|
||||
<string name="decrypting_db">Descifrando el contenido de la base de datos…</string>
|
||||
<string name="default_checkbox">Utilizar como base de datos por defecto</string>
|
||||
@@ -46,11 +46,11 @@
|
||||
<string name="select_database_file">Abrir base de datos existente</string>
|
||||
<string name="entry_accessed">Accedido</string>
|
||||
<string name="entry_cancel">Cancelar</string>
|
||||
<string name="entry_notes">Notas</string>
|
||||
<string name="entry_notes">Anotaciones</string>
|
||||
<string name="entry_confpassword">Confirmar contraseña</string>
|
||||
<string name="entry_created">Creado</string>
|
||||
<string name="entry_expires">Caduca</string>
|
||||
<string name="entry_keyfile">Archivo de clave</string>
|
||||
<string name="entry_keyfile">Cerrojo</string>
|
||||
<string name="entry_modified">Modificada</string>
|
||||
<string name="entry_password">Contraseña</string>
|
||||
<string name="save">Guardar</string>
|
||||
@@ -132,8 +132,8 @@
|
||||
<string name="extended_ASCII">ASCII extendido</string>
|
||||
<string name="allow">Permitir</string>
|
||||
<string name="clipboard_error_title">Error del portapapeles</string>
|
||||
<string name="clipboard_error">Algunos dispositivos no permiten que las aplicaciones usen el portapapeles.</string>
|
||||
<string name="clipboard_error_clear">No se pudo limpiar el portapapeles</string>
|
||||
<string name="clipboard_error">Algunos dispositivos no permiten que las aplicaciones utilicen el portapapeles.</string>
|
||||
<string name="clipboard_error_clear">No se pudo vaciar el portapapeles</string>
|
||||
<string name="error_string_key">Cada cadena debe tener un nombre de campo.</string>
|
||||
<string name="error_autofill_enable_service">El servicio de autocompletado no se ha podido habilitar.</string>
|
||||
<string name="field_name">Nombre del campo</string>
|
||||
@@ -310,18 +310,18 @@
|
||||
<string name="delete_entered_password_title">Eliminar contraseña</string>
|
||||
<string name="delete_entered_password_summary">Elimina la contraseña introducida tras un intento de conexión a una bse de datos</string>
|
||||
<string name="content_description_open_file">Abrir archivo</string>
|
||||
<string name="content_description_node_children">Nodos hijo</string>
|
||||
<string name="content_description_node_children">Nodo heredado</string>
|
||||
<string name="content_description_add_node">Añadir nodo</string>
|
||||
<string name="content_description_add_entry">Añadir entrada</string>
|
||||
<string name="content_description_add_entry">Añadir apunte</string>
|
||||
<string name="content_description_add_group">Añadir grupo</string>
|
||||
<string name="content_description_file_information">Información del archivo</string>
|
||||
<string name="content_description_password_checkbox">Casilla de verificación de la contraseña</string>
|
||||
<string name="content_description_keyfile_checkbox">Casilla de verificación del archivo de clave</string>
|
||||
<string name="content_description_entry_icon">Icono de entrada</string>
|
||||
<string name="content_description_file_information">Informe de archivo</string>
|
||||
<string name="content_description_password_checkbox">Casilla de contraseña</string>
|
||||
<string name="content_description_keyfile_checkbox">Casilla del cerrojo</string>
|
||||
<string name="content_description_entry_icon">Icono de apunte</string>
|
||||
<string name="entry_password_generator">Generador de contraseñas</string>
|
||||
<string name="content_description_password_length">Longitud de contraseña</string>
|
||||
<string name="entry_add_field">Añadir campo</string>
|
||||
<string name="content_description_remove_field">Eliminar el campo</string>
|
||||
<string name="content_description_remove_field">Retirar campo</string>
|
||||
<string name="entry_UUID">UUID</string>
|
||||
<string name="error_move_entry_here">No se puede mover una entrada aquí.</string>
|
||||
<string name="error_copy_entry_here">No puede copiar una entrada aquí.</string>
|
||||
@@ -342,7 +342,7 @@
|
||||
\n\"Protegido contra escritura\" evita cambios no deseados en la base de datos.
|
||||
\n\"Modificable\" le permite agregar, eliminar o modificar todos los elementos como desee.</string>
|
||||
<string name="lock_database_back_root_title">Presione \'Atrás\' para bloquear</string>
|
||||
<string name="content_description_repeat_toggle_password_visibility">Repetir la visibilidad de la contraseña</string>
|
||||
<string name="content_description_repeat_toggle_password_visibility">Repetir conmutación de visibilidad de contraseña</string>
|
||||
<string name="master_key">Clave maestra</string>
|
||||
<string name="security">Seguridad</string>
|
||||
<string name="entry_history">Historial</string>
|
||||
@@ -426,9 +426,9 @@
|
||||
<string name="auto_focus_search_title">Búsqueda rápida</string>
|
||||
<string name="menu_delete_entry_history">Eliminar el historial</string>
|
||||
<string name="error_otp_digits">El token debe contener de %1$d a %2$d dígitos.</string>
|
||||
<string name="entry_attachments">Archivos adjuntos</string>
|
||||
<string name="entry_add_attachment">Añadir el archivo adjunto</string>
|
||||
<string name="content_description_credentials_information">Información de credenciales</string>
|
||||
<string name="entry_attachments">Adjuntos</string>
|
||||
<string name="entry_add_attachment">Añadir adjunto</string>
|
||||
<string name="content_description_credentials_information">Informe de credenciales</string>
|
||||
<string name="database_opened">Base de datos abierta</string>
|
||||
<string name="education_add_attachment_title">Adjuntar</string>
|
||||
<string name="education_add_attachment_summary">Cargue un archivo adjunto a la entrada para guardar datos externos importantes.</string>
|
||||
@@ -461,7 +461,7 @@
|
||||
<string name="advanced_unlock_invalid_key">No se puede leer la clave de desbloqueo avanzada. Por favor, bórrela y repita el procedimiento de reconocimiento del desbloqueo.</string>
|
||||
<string name="advanced_unlock_prompt_extract_credential_message">Extraer la credencial de la base de datos con datos de desbloqueo avanzado</string>
|
||||
<string name="advanced_unlock_prompt_extract_credential_title">Abrir la base de datos con reconocimiento de desbloqueo avanzado</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">Advertencia: Aún debes recordar tu contraseña maestra si usas el reconocimiento de desbloqueo avanzado.</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">Aún debe recordar su contraseña maestra si emplea el reconocimiento de desbloqueo avanzado.</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_title">Reconocimiento de desbloqueo avanzado</string>
|
||||
<string name="open_advanced_unlock_prompt_store_credential">Abrir el indicador de desbloqueo avanzado para almacenar las credenciales</string>
|
||||
<string name="open_advanced_unlock_prompt_unlock_database">Abrir el aviso de desbloqueo avanzado para desbloquear la base de datos</string>
|
||||
@@ -486,7 +486,6 @@
|
||||
<string name="settings_database_recommend_changing_master_key_summary">Recomendar cambiar la contraseña maestra (días)</string>
|
||||
<string name="notification">Notificación</string>
|
||||
<string name="hide_expired_entries_title">Ocultar las entradas expiradas</string>
|
||||
<string name="keyboard_search_share_title">Buscar información compartida</string>
|
||||
<string name="upload_attachment">Cargar %1$s</string>
|
||||
<string name="education_setup_OTP_summary">Configurar la gestión de contraseñas de un solo uso (HOTP / TOTP) para generar un token solicitado para la autenticación de dos factores (2FA).</string>
|
||||
<string name="education_setup_OTP_title">Establecer la contaseña de un solo uso</string>
|
||||
@@ -502,8 +501,6 @@
|
||||
<string name="autofill_ask_to_save_data_title">Pedir que se guarden los datos</string>
|
||||
<string name="autofill_save_search_info_summary">Intente guardar la información de la búsqueda cuando haga una selección de entrada manual</string>
|
||||
<string name="autofill_save_search_info_title">Guardar la información de la búsqueda</string>
|
||||
<string name="autofill_auto_search_summary">Sugerir automáticamente los resultados de la búsqueda desde el dominio web o el ID de la aplicación</string>
|
||||
<string name="autofill_auto_search_title">Búsqueda automática</string>
|
||||
<string name="autofill_close_database_summary">Cerrar la base de datos después de una selección de autocompletado</string>
|
||||
<string name="autofill_close_database_title">Cerrar la base de datos</string>
|
||||
<string name="enter">Entrar</string>
|
||||
@@ -518,9 +515,8 @@
|
||||
<string name="keyboard_previous_database_credentials_summary">Cambiar automáticamente al teclado anterior en la pantalla de credenciales de la base de datos</string>
|
||||
<string name="keyboard_previous_database_credentials_title">Pantalla de credenciales de la base de datos</string>
|
||||
<string name="keyboard_auto_go_action_title">Acción de la tecla automática</string>
|
||||
<string name="keyboard_save_search_info_summary">Luego de compartir un URL con KeePassDX, cuando se selecciona una entrada, intentar recordarla para futuros usos</string>
|
||||
<string name="keyboard_save_search_info_summary">Tras compartir informe a KeePassDX, cuando esté seleccionado un apunte, intente guardar el informe dentro del apunte para posibles futuros usos</string>
|
||||
<string name="keyboard_save_search_info_title">Guardar información compartida</string>
|
||||
<string name="keyboard_search_share_summary">Al compartir un URL con KeePassDX, filtrar las entradas utilizando el dominio de ese URL</string>
|
||||
<string name="show_uuid_summary">Muestra el UUID vinculado a una entrada o a un grupo</string>
|
||||
<string name="show_uuid_title">Mostrar UUID</string>
|
||||
<string name="error_rebuild_list">No es posible reconstruir adecuadamente la lista.</string>
|
||||
@@ -541,7 +537,7 @@
|
||||
<string name="error_duplicate_file">Los datos del archivo ya existen.</string>
|
||||
<string name="error_upload_file">Se produjo un error al cargar los datos del archivo.</string>
|
||||
<string name="description_app_properties">Propiedades de KeePassDX para gestionar la configuración de la aplicación</string>
|
||||
<string name="content_description_otp_information">Información de contraseña de un solo uso</string>
|
||||
<string name="content_description_otp_information">Informe de contraseña de un solo uso</string>
|
||||
<string name="icon_section_custom">Personalizado</string>
|
||||
<string name="icon_section_standard">Estándar</string>
|
||||
<string name="style_brightness_summary">Seleccionar temas oscuros o claros</string>
|
||||
@@ -604,8 +600,8 @@
|
||||
<string name="warning_exact_alarm">No ha permitido que la app use una alarma exacta. Como resultado, las funciones que requieren un temporizador no se harán con una hora exacta.</string>
|
||||
<string name="permission">Permiso</string>
|
||||
<string name="content_description_database_color">Color de la base de datos</string>
|
||||
<string name="content_description_entry_foreground_color">Color de primer plano de la entrada</string>
|
||||
<string name="content_description_entry_background_color">Color de fondo de la entrada</string>
|
||||
<string name="content_description_entry_foreground_color">Color de primer plano del apunte</string>
|
||||
<string name="content_description_entry_background_color">Color de fondo del apunte</string>
|
||||
<string name="tags">Etiquetas</string>
|
||||
<string name="warning_database_info_reloaded">La recarga de la base de datos borrará los datos modificados localmente.</string>
|
||||
<string name="warning_keyfile_integrity">El hash del archivo no está garantizado porque Android puede cambiar sus datos sobre la marcha. Cambia la extensión del archivo a .bin para una correcta integridad.</string>
|
||||
@@ -628,4 +624,27 @@
|
||||
<string name="menu_save_copy_to">Guardar una copia en …</string>
|
||||
<string name="inherited">Heredar</string>
|
||||
<string name="expired">Caducada</string>
|
||||
<string name="colorize_password_summary">Colorear caracteres de contraseña por el tipo</string>
|
||||
<string name="warning_database_already_opened">Ya hay abierta una base de datos, cierrela antes de abrir otra</string>
|
||||
<string name="exclude_ambiguous_chars">Excluya caracteres ambiguos</string>
|
||||
<string name="consider_chars_filter">Considere caracteres</string>
|
||||
<string name="entropy_calculate">Entropía: calcular…</string>
|
||||
<string name="word_separator">Separador</string>
|
||||
<string name="advanced_unlock_keystore_warning">Esta característica almacenará credenciales cifradas en el almacenaje seguro KeyStore de su dispositivo.
|
||||
\n
|
||||
\nDependiendo de la implementación del API nativo del sistema operativo, tal vez no sea completamente funcional.
|
||||
\nCompruebe la compatibilidad y garantía del almacenaje KeyStore con el fabricante de su dispositivo y el creadas de la ROM que está utilizando.</string>
|
||||
<string name="content_description_passphrase_word_count">Conteo de palabras de contraseña-frase</string>
|
||||
<string name="passphrase">Contraseña frase</string>
|
||||
<string name="colorize_password_title">Colorear contraseñas</string>
|
||||
<string name="keyboard_previous_search_title">Pantalla de búsqueda</string>
|
||||
<string name="keyboard_previous_search_summary">Volver automáticamente al teclado anterior en la pantalla de búsqueda</string>
|
||||
<string name="entropy">Entropía: %1$s bit</string>
|
||||
<string name="entropy_high">Entropía: Alta</string>
|
||||
<string name="at_least_one_char">Al menos un carácter desde cada</string>
|
||||
<string name="ignore_chars_filter">Descartar caracteres</string>
|
||||
<string name="lower_case">minúsculas</string>
|
||||
<string name="upper_case">MAYÚSCULAS</string>
|
||||
<string name="title_case">Tipo Titular</string>
|
||||
<string name="character_count">Conteo de caracteres: %1$d</string>
|
||||
</resources>
|
||||
@@ -291,7 +291,7 @@
|
||||
\n\"Modifiable\" vous permet d’ajouter, de supprimer ou de modifier tous les éléments comme vous le souhaitez.</string>
|
||||
<string name="edit_entry">Modifier l’entrée</string>
|
||||
<string name="error_load_database">Impossible de charger votre base de données.</string>
|
||||
<string name="error_load_database_KDF_memory">Impossible de charger la clé. Veuillez essayer de diminuer l’utilisation mémoire de la fonction de dérivation de clé.</string>
|
||||
<string name="error_load_database_KDF_memory">Impossible de charger la clé. Essayez de diminuer l’utilisation mémoire de la fonction de dérivation de clé.</string>
|
||||
<string name="list_entries_show_username_title">Afficher les noms d’utilisateur</string>
|
||||
<string name="list_entries_show_username_summary">Affiche les noms d’utilisateur dans les listes d’entrées</string>
|
||||
<string name="build_label">Compilation %1$s</string>
|
||||
@@ -449,8 +449,6 @@
|
||||
<string name="discard">Abandonner</string>
|
||||
<string name="discard_changes">Abandonner les modifications \?</string>
|
||||
<string name="validate">Valider</string>
|
||||
<string name="autofill_auto_search_summary">Suggérer automatiquement des résultats de recherche à partir du domaine Web ou de l’identifiant de l’application</string>
|
||||
<string name="autofill_auto_search_title">Recherche automatique</string>
|
||||
<string name="lock_database_show_button_summary">Affiche le bouton de verrouillage dans l’interface utilisateur</string>
|
||||
<string name="lock_database_show_button_title">Afficher le bouton de verrouillage</string>
|
||||
<string name="autofill_preference_title">Paramètres de remplissage automatique</string>
|
||||
@@ -462,8 +460,6 @@
|
||||
<string name="autofill_web_domain_blocklist_title">Liste de blocage de domaine Web</string>
|
||||
<string name="autofill_application_id_blocklist_summary">Liste de blocage qui empêche le remplissage automatique des applications</string>
|
||||
<string name="autofill_application_id_blocklist_title">Liste de blocage d’application</string>
|
||||
<string name="keyboard_search_share_summary">Lorsque des infos sont partagées avec KeePassDX, filtre les entrées en utilisant ces infos pour alimenter le Magiclavier</string>
|
||||
<string name="keyboard_search_share_title">Sélectionner les infos partagées</string>
|
||||
<string name="filter">Filtre</string>
|
||||
<string name="subdomain_search_summary">Recherche des domaines Web avec des contraintes de sous-domaines</string>
|
||||
<string name="subdomain_search_title">Recherche de sous-domaine</string>
|
||||
@@ -490,13 +486,13 @@
|
||||
<string name="autofill_read_only_save">L’enregistrement des données n’est pas autorisé pour une base de données ouverte en lecture seule.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Demande de sauvegarde des données à la fin du remplissage d\'un formulaire</string>
|
||||
<string name="autofill_ask_to_save_data_title">Demander à enregistrer des données</string>
|
||||
<string name="autofill_save_search_info_summary">Essaye d’enregistrer les informations de recherche lors de la sélection manuelle d’une entrée</string>
|
||||
<string name="autofill_save_search_info_summary">Essaye d’enregistrer les informations de recherche lors de la sélection manuelle d’une entrée pour faciliter les utilisations futures</string>
|
||||
<string name="autofill_save_search_info_title">Enregistrer les infos de recherche</string>
|
||||
<string name="autofill_close_database_summary">Ferme la base de données après une sélection de remplissage automatique</string>
|
||||
<string name="autofill_close_database_title">Fermer la base de données</string>
|
||||
<string name="keyboard_previous_lock_summary">Revient automatiquement au clavier précédent après le verrouillage de la base de données</string>
|
||||
<string name="keyboard_previous_lock_title">Verrouiller la base de données</string>
|
||||
<string name="keyboard_save_search_info_summary">Après avoir partagé des infos avec KeePassDX, lorsqu\'une entrée est sélectionnée, essaye d\'enregistrer les infos dans l\'entrée pour faciliter les utilisations futures</string>
|
||||
<string name="keyboard_save_search_info_summary">Essaye de sauvegarder les informations partagées lors de la sélection manuelle d\'une entrée pour faciliter les utilisations futures.</string>
|
||||
<string name="keyboard_save_search_info_title">Enregistrer les infos partagées</string>
|
||||
<string name="notification">Notification</string>
|
||||
<string name="biometric_security_update_required">Mise à jour de sécurité biométrique requise.</string>
|
||||
|
||||
@@ -336,7 +336,6 @@
|
||||
<string name="homepage">Početna stranica</string>
|
||||
<string name="remember_keyfile_locations_title">Zapamti mjesto datoteke ključa</string>
|
||||
<string name="unavailable_feature_version">Uređaj koristi Android verziju %1$s, ali potrebna je verzija %2$s ili novija.</string>
|
||||
<string name="autofill_auto_search_summary">Automatski predloži rezultate pretrage od web domene ili ID-a aplikacije</string>
|
||||
<string name="hide_broken_locations_summary">Sakrij pokvarene poveznice u popisu nedavnih baza podataka</string>
|
||||
<string name="html_text_dev_feature">Ova se funkcija nalazi <strong>u razvoju</strong> i treba tvoj <strong>doprinos</strong> kako bi uskoro bila dostupna.</string>
|
||||
<string name="education_generate_password_title">Stvori sigurnu lozinku</string>
|
||||
@@ -346,7 +345,6 @@
|
||||
<string name="autofill_application_id_blocklist_title">Popis blokiranja aplikacija</string>
|
||||
<string name="validate">Provjeri valjanost</string>
|
||||
<string name="education_entry_edit_title">Uredi unos</string>
|
||||
<string name="autofill_auto_search_title">Automatska pretraga</string>
|
||||
<string name="html_text_dev_feature_work_hard">Trudimo se brzo izdati ovu funkciju.</string>
|
||||
<string name="html_text_dev_feature_encourage">potičeš programere da stvore <strong>nove funkcije</strong> i <strong>isprave greške</strong> na osnovi tvojih napomena.</string>
|
||||
<string name="keyboard_auto_go_action_summary">Radnja tipke „Idi” nakon pritiskanja tipke „Polje”</string>
|
||||
@@ -368,7 +366,6 @@
|
||||
<string name="warning_password_encoding">Izbjegni u lozinkama koristiti znakove koji su izvan formata kodiranja teksta u datoteci baze podataka (neprepoznati znakovi pretvaraju se u isto slovo).</string>
|
||||
<string name="rounds_explanation">Dodatni prolazi šifriranja pružaju veću zaštitu od brutalnih napada, ali stvarno mogu usporiti učitavanje i spremanje.</string>
|
||||
<string name="subdomain_search_summary">Traži web domene s ograničenjima poddomena</string>
|
||||
<string name="keyboard_search_share_title">Traži dijeljene informacije</string>
|
||||
<string name="html_text_dev_feature_upgrade">Redovito aktualiziraj aplikaciju instaliranjem najnovijih verzija.</string>
|
||||
<string name="autofill_block_restart">Za aktiviranje blokiranja, ponovo pokreni aplikaciju koja sadrži obrazac.</string>
|
||||
<string name="education_sort_summary">Odaberi način razvrstavanja unosa i grupa.</string>
|
||||
@@ -412,7 +409,6 @@
|
||||
<string name="html_text_dev_feature_buy_pro">Kupnjom <strong>pro</strong> verzije,</string>
|
||||
<string name="keyboard_selection_entry_summary">Prilikom prikaza unosa u KeePassDX-u, popuni Magikeyboard s tim unosom</string>
|
||||
<string name="education_new_node_title">Dodaj elemente u bazu podataka</string>
|
||||
<string name="keyboard_search_share_summary">Prilikom dijeljenja URL-a u KeePassDX-u, filtriraj unose koristeći tu domenu URL-a</string>
|
||||
<string name="education_donation_summary">Pomogni povećati stabilnost i sigurnost dodavanjem dodatnih funkcija.</string>
|
||||
<string name="error_string_type">Ovaj se tekst ne poklapa sa zatraženim elementom.</string>
|
||||
<string name="html_text_buy_pro">Kupnjom pro verzije imat ćaš pristup ovom <strong>vizualnom stilu</strong> i k tome ćeš pomoći <strong>u realizaciji projekata zajednice.</strong></string>
|
||||
@@ -465,7 +461,7 @@
|
||||
<string name="data">Podaci</string>
|
||||
<string name="warning_sure_remove_data">Svejedno ukloniti ove podatke\?</string>
|
||||
<string name="content_description_credentials_information">Podaci za prijavu</string>
|
||||
<string name="autofill_save_search_info_summary">Pokušaj spremiti podatke pretrage prilikom odabira ručnog unosa</string>
|
||||
<string name="autofill_save_search_info_summary">Pokušaj spremiti podatke prilikom odabira ručnog unosa za jednostavniju buduću upotrebu</string>
|
||||
<string name="notification">Obavijest</string>
|
||||
<string name="error_registration_read_only">Nije dopušteno spremati novi element u zaštićenoj bazi podataka</string>
|
||||
<string name="autofill_read_only_save">Spremanje podataka nije dopušteno za bazu podataka koja je otvorena u zaštićenom stanju.</string>
|
||||
@@ -478,7 +474,7 @@
|
||||
<string name="autofill_close_database_title">Zatvori bazu podataka</string>
|
||||
<string name="keyboard_previous_lock_summary">Automatski prebaci na prethodnu tipkovnicu nakon zaključavanja baze podataka</string>
|
||||
<string name="keyboard_previous_lock_title">Zaključaj bazu podataka</string>
|
||||
<string name="keyboard_save_search_info_summary">Nakon dijeljenja URL-a s KeePassDX-om, kad je unos odabran, pokušaj zapamtiti taj unos za daljnje korištenje</string>
|
||||
<string name="keyboard_save_search_info_summary">Pokušaj spremiti dijeljene podatke prilikom ručnog odabira unosa za jednostavniju buduću upotrebu</string>
|
||||
<string name="keyboard_save_search_info_title">Spremi dijeljene informacije</string>
|
||||
<string name="warning_empty_recycle_bin">Trajno izbrisati sve čvorove iz smeća\?</string>
|
||||
<string name="biometric_security_update_required">Potrebno je aktualizirati biometrijsku zaštitu.</string>
|
||||
|
||||
@@ -314,8 +314,6 @@
|
||||
<string name="error_create_database_file">Ezzel a jelszó és kulcsfájl kombinációval nem hozható létre adatbázis.</string>
|
||||
<string name="education_setup_OTP_summary">Állítson be egyszer használatos jelszókezelést (HOTP/TOTP), hogy tokent állítson elő a kétfaktoros hitelesítéshez (2FA).</string>
|
||||
<string name="education_setup_OTP_title">OTP beállítása</string>
|
||||
<string name="autofill_auto_search_summary">Keresési találatok automatikus javaslata a webes domain vagy az alkalmazásazonosító alapján</string>
|
||||
<string name="autofill_auto_search_title">Automatikus keresés</string>
|
||||
<string name="clear_clipboard_notification_summary">Az adatbázis zárolása, ha a vágólap ideje lejár, vagy ha a használata után bezárja az értesítést</string>
|
||||
<string name="clear_clipboard_notification_title">Zárolás bezáráskor</string>
|
||||
<string name="lock_database_show_button_summary">Megjeleníti a zárolás gombot a felhasználói felületen</string>
|
||||
@@ -438,8 +436,6 @@
|
||||
<string name="keyboard_previous_database_credentials_title">Adatbázis-hitelesítőadatok képernyője</string>
|
||||
<string name="keyboard_change">Billentyűzet váltása</string>
|
||||
<string name="keyboard_save_search_info_title">Megosztott információk mentése</string>
|
||||
<string name="keyboard_search_share_summary">Ha egy URL-t oszt meg a KeePassDX-szel, akkor az elemek szűrése arra az URL domainnel</string>
|
||||
<string name="keyboard_search_share_title">Megosztott információk keresése</string>
|
||||
<string name="notification">Értesítés</string>
|
||||
<string name="database_data_remove_unlinked_attachments_summary">Eltávolítja azokat a mellékleteket, melyek az adatbázisban szerepelnek, de nem tartoznak bejegyzéshez</string>
|
||||
<string name="database_data_remove_unlinked_attachments_title">Nem összekapcsolt adatok eltávolítása</string>
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
<string name="creating_database">Pembuatan basisdata…</string>
|
||||
<string name="list_size_summary">Ukuran teks dalam daftar elemen</string>
|
||||
<string name="list_size_title">Ukuran daftar item</string>
|
||||
<string name="list_groups_show_number_entries_summary">Tampilkan jumlah entri dalam sebuah grup</string>
|
||||
<string name="list_groups_show_number_entries_summary">Menampilkan jumlah entri dalam sebuah grup</string>
|
||||
<string name="list_groups_show_number_entries_title">Tampilkan jumlah entri</string>
|
||||
<string name="list_entries_show_username_summary">Tampilkan nama pengguna di daftar entri</string>
|
||||
<string name="list_entries_show_username_title">Tampilkan nama pengguna</string>
|
||||
@@ -70,8 +70,8 @@
|
||||
<string name="error_create_database_file">Tidak bisa membuat basisdata dengan kata sandi dan file kunci ini.</string>
|
||||
<string name="error_create_database">Tidak bisa membuat berkas database.</string>
|
||||
<string name="error_copy_group_here">Anda tidak bisa menyalin grup di sini.</string>
|
||||
<string name="error_copy_entry_here">Anda tidak bisa menyalin entri di sini.</string>
|
||||
<string name="error_move_entry_here">Anda tidak bisa memindahkan entri ke sini.</string>
|
||||
<string name="error_copy_entry_here">Anda tidak dapat menyalin entri di sini.</string>
|
||||
<string name="error_move_entry_here">Anda tidak dapat memindahkan sebuah entri ke sini.</string>
|
||||
<string name="error_autofill_enable_service">Tidak bisa mengaktifkan layanan IsiOtomatis.</string>
|
||||
<string name="error_wrong_length">Masukkan bilangan bulat di bidang \"Panjang\".</string>
|
||||
<string name="error_label_exists">Label ini sudah ada.</string>
|
||||
@@ -213,7 +213,7 @@
|
||||
<string name="sort_db">Pengurutan alami</string>
|
||||
<string name="sort_recycle_bin_bottom">Tong Sampah di bawah</string>
|
||||
<string name="sort_groups_before">Grup sebelumnya</string>
|
||||
<string name="build_label">Build %1$s</string>
|
||||
<string name="build_label">Bangun %1$s</string>
|
||||
<string name="version_label">Versi %1$s</string>
|
||||
<string name="warning_empty_keyfile_explanation">Isi dari keyfile sebaiknya tidak di ubah, dan yang terbaik harus berupa data acak.</string>
|
||||
<string name="warning_empty_keyfile">Tidak disarankan menambah keyfile kosong.</string>
|
||||
@@ -256,7 +256,7 @@
|
||||
<string name="lock_database_show_button_title">Tampilkan tombol kunci</string>
|
||||
<string name="lock_database_back_root_summary">Kunci database saat pengguna mengklik tombol kembali di layar root</string>
|
||||
<string name="lock_database_back_root_title">Tekan \'Kembali\' untuk mengunci</string>
|
||||
<string name="lock_database_screen_off_summary">Kunci database saat layar mati</string>
|
||||
<string name="lock_database_screen_off_summary">Kunci basis data setelah beberapa detik ketika layar mati</string>
|
||||
<string name="lock_database_screen_off_title">Kunci layar</string>
|
||||
<string name="lock">Kunci</string>
|
||||
<string name="clipboard_warning">Jika penghapusan otomatis papan klip gagal, hapus riwayatnya secara manual.</string>
|
||||
@@ -324,13 +324,11 @@
|
||||
<string name="autofill_web_domain_blocklist_title">Daftar blokir domain web</string>
|
||||
<string name="autofill_application_id_blocklist_summary">Daftar blokir yang mencegah pengisian otomatis aplikasi</string>
|
||||
<string name="autofill_application_id_blocklist_title">Daftar blokir aplikasi</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Meminta untuk menyimpan data saat formulir divalidasi</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Minta untuk menyimpan data ketika pengisian formulir selesai</string>
|
||||
<string name="autofill_ask_to_save_data_title">Minta untuk menyimpan data</string>
|
||||
<string name="autofill_save_search_info_summary">Cobalah untuk menyimpan informasi pencarian saat membuat pilihan entri manual</string>
|
||||
<string name="autofill_save_search_info_summary">Cobalah untuk menyimpan informasi pencarian saat membuat pilihan entri manual untuk penggunaan mudah di waktu mendatang</string>
|
||||
<string name="autofill_save_search_info_title">Simpan info pencarian</string>
|
||||
<string name="autofill_inline_suggestions_title">Saran sebaris</string>
|
||||
<string name="autofill_auto_search_summary">Secara otomatis menyarankan hasil pencarian dari domain web atau ID aplikasi</string>
|
||||
<string name="autofill_auto_search_title">Pencarian otomatis</string>
|
||||
<string name="autofill_close_database_summary">Menutup database setelah pilihan isi-auto</string>
|
||||
<string name="autofill_close_database_title">Tutup database</string>
|
||||
<string name="enter">Enter</string>
|
||||
@@ -355,10 +353,9 @@
|
||||
<string name="keyboard_entry_timeout_title">Waktu habis</string>
|
||||
<string name="keyboard_notification_entry_clear_close_summary">Tutup database saat menutup notifikasi</string>
|
||||
<string name="keyboard_notification_entry_clear_close_title">Bersihkan saat menutup</string>
|
||||
<string name="keyboard_search_share_title">Telusuri info yang dibagikan</string>
|
||||
<string name="keyboard_notification_entry_summary">Tampilkan notifikasi ketika entri tersedia</string>
|
||||
<string name="keyboard_notification_entry_title">Info notifikasi</string>
|
||||
<string name="keyboard_selection_entry_summary">Tampilkan bidang input di Magikeyboard saat melihat entri</string>
|
||||
<string name="keyboard_selection_entry_summary">Saat menampilkan entri dalam KeePassDX, isi Magikeyboard dengan entrinya</string>
|
||||
<string name="keyboard_selection_entry_title">Pilihan entri</string>
|
||||
<string name="keyboard_entry_category">Entri</string>
|
||||
<string name="keyboard_setting_label">Pengaturan Magikeyboard</string>
|
||||
@@ -395,7 +392,7 @@
|
||||
<string name="education_setup_OTP_title">Atur OTP</string>
|
||||
<string name="education_donation_title">Partisipasi</string>
|
||||
<string name="advanced_unlock_prompt_extract_credential_title">Buka basisdata dengan pengenalan pembuka kunci tingkat lanjut</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">Peringatan: Anda tetap harus mengingat kata sandi induk Anda jika Anda menggunakan pengenalan pembukaan kunci tingkat lanjut.</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">Anda tetap harus mengingat kata sandi utama Anda jika Anda menggunakan pengenalan pembukaan kunci tingkat lanjut.</string>
|
||||
<string name="warning_database_revoked">Akses ke berkas dicabut oleh pengelola berkas, tutup basisdata dan buka kembali dari lokasi tempatnya.</string>
|
||||
<string name="warning_database_info_changed_options">Gabungkan data, timpa perubahan dengan cara menyimpan database atau muat ulang dengan perubahan terbaru.</string>
|
||||
<string name="warning_database_info_changed">Informasi yang tersimpan di berkas basisdata Anda sudah diubah di luar aplikasi.</string>
|
||||
@@ -414,7 +411,7 @@
|
||||
<string name="import_app_properties_summary">Pilih sebuah berkas untuk mengimpor setelan aplikasi</string>
|
||||
<string name="import_app_properties_title">Impor setelan aplikasi</string>
|
||||
<string name="error_start_database_action">Timbul galat ketika melaksanakan sebuah aksi di basisdata.</string>
|
||||
<string name="error_move_group_here">Anda tidak bisa memindahkan sebuah grup ke sini.</string>
|
||||
<string name="error_move_group_here">Anda tidak dapat memindahkan sebuah grup ke sini.</string>
|
||||
<string name="device_credential_unlock_enable_title">Membuka kredensial perangkat</string>
|
||||
<string name="biometric_unlock_enable_summary">Memperbolehkan Anda memindai biometrik Anda untuk membuka basis data</string>
|
||||
<string name="biometric_unlock_enable_title">Membuka kunci biometrik</string>
|
||||
@@ -460,7 +457,7 @@
|
||||
<string name="ssid">SSID</string>
|
||||
<string name="token">Token</string>
|
||||
<string name="seed">Bibit</string>
|
||||
<string name="bank_identifier_code">SWIFT/BIC</string>
|
||||
<string name="bank_identifier_code">SWIFT / BIC</string>
|
||||
<string name="secure_note">Catatan Aman</string>
|
||||
<string name="menu_external_icon">Ikon eksternal</string>
|
||||
<string name="holder">Penyangga</string>
|
||||
@@ -531,11 +528,98 @@
|
||||
<string name="content_description_database_color">Warna basis data</string>
|
||||
<string name="menu_merge_database">Gabung data</string>
|
||||
<string name="warning_database_info_reloaded">Memuat ulang database akan menghapus data yang diubah secara lokal.</string>
|
||||
<string name="warning_keyfile_integrity">Hash file tidak terjamin karena Android dapat mengubah datanya saat itu juga. Ubah ekstensi file menjadi .bin agar integritas bisa dihasilkan secara tepat.</string>
|
||||
<string name="warning_keyfile_integrity">Hash file tidak dijamin karena Android dapat mengubah datanya dengan cepat. Ubah ekstensi file menjadi .bin untuk integritas yang benar.</string>
|
||||
<string name="content_description_entry_foreground_color">Warna latar depan entri</string>
|
||||
<string name="content_description_entry_background_color">Warna latar belakang entri</string>
|
||||
<string name="wireless">Wi-Fi</string>
|
||||
<string name="tags">Label</string>
|
||||
<string name="open_advanced_unlock_prompt_store_credential">Buka penguncian lanjutan untuk menyimpan kredensial</string>
|
||||
<string name="warning_permanently_delete_nodes">Hapus permanen node yang dipilih\?</string>
|
||||
<string name="magic_keyboard_explanation_summary">Aktifkan keyboard kustom yang mengisi kata sandi Anda dan semua bidang identitas</string>
|
||||
<string name="autofill_manual_selection_title">Pemilihan manual</string>
|
||||
<string name="expired">Kadaluwarsa</string>
|
||||
<string name="education_add_attachment_summary">Unggah lampiran ke entri Anda untuk menyimpan data eksternal penting.</string>
|
||||
<string name="content_description_passphrase_word_count">Jumlah kata frasa sandi</string>
|
||||
<string name="searchable">Dapat dicari</string>
|
||||
<string name="search_filters">Saringan pencarian</string>
|
||||
<string name="passphrase">Frasa sandi</string>
|
||||
<string name="colorize_password_summary">Warnai karakter kata sandi berdasarkan tipe</string>
|
||||
<string name="colorize_password_title">Warnai kata sandi</string>
|
||||
<string name="biometric_auto_open_prompt_title">Buka prompt secara otomatis</string>
|
||||
<string name="allow_copy_password_summary">Izinkan menyalin entri kata sandi dan bidang yang dilindungi ke papan klip</string>
|
||||
<string name="keyboard_previous_search_title">Layar pencarian</string>
|
||||
<string name="keyboard_previous_search_summary">Secara otomatis beralih kembali ke keyboard sebelumnya di layar pencarian</string>
|
||||
<string name="keyboard_previous_fill_in_summary">Secara otomatis beralih kembali ke keyboard sebelumnya setelah menjalankan \"Tindakan tombol otomatis\"</string>
|
||||
<string name="keyboard_previous_database_credentials_summary">Secara otomatis beralih kembali ke keyboard sebelumnya di layar kredensial basis data</string>
|
||||
<string name="autofill_manual_selection_summary">Tampilkan opsi untuk memungkinkan pengguna memilih entri basis data</string>
|
||||
<string name="autofill_read_only_save">Penyimpanan data tidak diperbolehkan untuk basis data yang dibuka sebagai baca-saja.</string>
|
||||
<string name="allow_no_password_title">Izinkan tidak ada kunci utama</string>
|
||||
<string name="allow_no_password_summary">Memungkinkan mengetuk tombol \"Buka\" jika tidak ada kredensial yang dipilih</string>
|
||||
<string name="delete_entered_password_summary">Menghapus kata sandi yang dimasukkan setelah upaya koneksi ke basis data</string>
|
||||
<string name="enable_read_only_summary">Buka basis data baca-saja secara baku</string>
|
||||
<string name="enable_keep_screen_on_title">Biarkan layar nyala</string>
|
||||
<string name="enable_education_screens_summary">Sorot elemen untuk mempelajari cara kerja aplikasi</string>
|
||||
<string name="education_create_database_summary">Buat file pengelola kata sandi pertama Anda.</string>
|
||||
<string name="education_new_node_summary">Entri membantu mengelola identitas digital Anda.
|
||||
\n
|
||||
\nGrup (~folder) mengatur entri dalam basis data Anda.</string>
|
||||
<string name="education_search_summary">Masukkan judul, nama pengguna atau konten bidang lain untuk mengambil kata sandi Anda.</string>
|
||||
<string name="education_advanced_unlock_title">Pembukaan kunci basis data tingkat lanjut</string>
|
||||
<string name="education_advanced_unlock_summary">Tautkan kata sandi Anda ke kredensial biometrik atau perangkat yang dipindai untuk membuka kunci basis data Anda dengan cepat.</string>
|
||||
<string name="education_entry_new_field_title">Tambahkan bidang kustom</string>
|
||||
<string name="education_entry_new_field_summary">Daftarkan bidang tambahan, tambahkan nilai, dan lindungi secara opsional.</string>
|
||||
<string name="education_setup_OTP_summary">Siapkan pengelola kata sandi satu kali (HOTP / TOTP) untuk menghasilkan token yang diminta untuk otentikasi dua faktor (2FA).</string>
|
||||
<string name="education_unlock_summary">Masukkan kata sandi dan/atau berkas kunci untuk membuka basis data Anda.
|
||||
\n
|
||||
\nCadangkan file basis data Anda di tempat yang aman setelah setiap perubahan.</string>
|
||||
<string name="entropy">Entropi: %1$s bit</string>
|
||||
<string name="entropy_high">Entropi: Tinggi</string>
|
||||
<string name="entropy_calculate">Entropi: Hitung…</string>
|
||||
<string name="at_least_one_char">Setidaknya satu karakter dari masing-masing</string>
|
||||
<string name="exclude_ambiguous_chars">Kecualikan karakter ambigu</string>
|
||||
<string name="consider_chars_filter">Pertimbangkan karakter</string>
|
||||
<string name="word_separator">Pemisah</string>
|
||||
<string name="ignore_chars_filter">Abaikan karakter</string>
|
||||
<string name="lower_case">huruf kecil</string>
|
||||
<string name="upper_case">HURUF BESAR</string>
|
||||
<string name="title_case">Huruf Judul</string>
|
||||
<string name="character_count">Jumlah karakter: %1$d</string>
|
||||
<string name="advanced_unlock_scanning_error">Terjadi kesalahan buka kunci lanjutan: %1$s</string>
|
||||
<string name="advanced_unlock_prompt_not_initialized">Tidak dapat menginisialisasi prompt buka kunci tingkat lanjut.</string>
|
||||
<string name="monospace_font_fields_enable_title">Bidang tipe huruf</string>
|
||||
<string name="keyboard_save_search_info_title">Simpan info terbagi</string>
|
||||
<string name="keyboard_previous_fill_in_title">Tindakan tombol otomatis</string>
|
||||
<string name="keyboard_previous_lock_summary">Secara otomatis beralih kembali ke keyboard sebelumnya setelah mengunci basis data</string>
|
||||
<string name="autofill_inline_suggestions_summary">Coba tampilkan saran pengisian otomatis langsung dari keyboard yang kompatibel</string>
|
||||
<string name="enable_education_screens_title">Petunjuk pendidikan</string>
|
||||
<string name="education_select_database_summary">Buka file basis data Anda sebelumnya dari peramban file Anda untuk terus menggunakannya.</string>
|
||||
<string name="show_entry_colors_title">Warna entri</string>
|
||||
<string name="show_entry_colors_summary">Menampilkan warna latar depan dan latar belakang dalam entri</string>
|
||||
<string name="reset_education_screens_title">Atur ulang petunjuk pendidikan</string>
|
||||
<string name="reset_education_screens_summary">Tampilkan semua info pendidikan lagi</string>
|
||||
<string name="education_entry_edit_summary">Edit entri Anda dengan bidang kustom. Kumpulan data dapat dirujuk antara bidang entri yang berbeda.</string>
|
||||
<string name="navigation_drawer_open">Laci navigasi terbuka</string>
|
||||
<string name="navigation_drawer_close">Laci navigasi tertutup</string>
|
||||
<string name="inherited">Wariskan</string>
|
||||
<string name="auto_type_sequence">Urutan Pengetikan Otomatis</string>
|
||||
<string name="case_sensitive">Kepekaan kapital</string>
|
||||
<string name="regex">Ekspresi reguler</string>
|
||||
<string name="menu_merge_from">Gabung dari …</string>
|
||||
<string name="menu_save_copy_to">Simpan sebuah salinan ke …</string>
|
||||
<string name="reset_education_screens_text">Atur ulang petunjuk pendidikan</string>
|
||||
<string name="education_search_title">Cari melalui entri</string>
|
||||
<string name="education_generate_password_title">Buat kata sandi yang kuat</string>
|
||||
<string name="education_generate_password_summary">Buat kata sandi yang kuat untuk dikaitkan dengan entri Anda, tentukan dengan mudah sesuai dengan kriteria formulir dan jangan lupa kata sandi yang aman.</string>
|
||||
<string name="current_group">Grup saat ini</string>
|
||||
<string name="enable_auto_save_database_summary">Simpan basis data setelah setiap tindakan penting (dalam mode \"Bisa dimodifikasi\")</string>
|
||||
<string name="custom_data">Data kustom</string>
|
||||
<string name="warning_database_already_opened">Sebuah basis data sudah dibuka, tutup terlebih dahulu untuk membuka yang baru</string>
|
||||
<string name="advanced_unlock_keystore_warning">Fitur ini akan menyimpan data kredensial terenkripsi di KeyStore perangkat Anda yang aman.
|
||||
\n
|
||||
\nBergantung pada implementasi API asli dari sistem operasi, mungkin tidak berfungsi penuh.
|
||||
\nPeriksa kompatibilitas dan keamanan KeyStore dengan produsen perangkat Anda dan pembuat ROM yang Anda gunakan.</string>
|
||||
<string name="education_read_only_title">Lindungi database Anda dari penulisan</string>
|
||||
<string name="keyboard_save_search_info_summary">Coba simpan informasi terbagi ketika membuat sebuah pilihan entri manual untuk penggunaan mudah di waktu mendatang</string>
|
||||
<string name="enable_read_only_title">Terlindungi-tulis</string>
|
||||
<string name="enable_keep_screen_on_summary">Jaga layar tetap menyala saat melihat entri</string>
|
||||
</resources>
|
||||
@@ -193,19 +193,19 @@
|
||||
<string name="lock_database_screen_off_title">Blocco schermo</string>
|
||||
<string name="lock_database_screen_off_summary">Blocca il database dopo alcuni secondi quando lo schermo è spento</string>
|
||||
<string name="advanced_unlock">Impronta digitale</string>
|
||||
<string name="biometric_unlock_enable_title">Scansione di impronte</string>
|
||||
<string name="biometric_unlock_enable_title">Scansione biometrica</string>
|
||||
<string name="biometric_unlock_enable_summary">Consente la scansione biometrica per aprire il database</string>
|
||||
<string name="biometric_delete_all_key_title">Elimina chiavi di cifratura</string>
|
||||
<string name="biometric_delete_all_key_summary">Elimina tutte le chiavi di cifratura relative allo sblocco avanzato</string>
|
||||
<string name="unavailable_feature_text">Impossibile avviare questa funzione.</string>
|
||||
<string name="unavailable_feature_version">Il dispositivo usa Android %1$s, ma richiede %2$s o versioni successive.</string>
|
||||
<string name="unavailable_feature_hardware">L\'hardware relativo non è stato trovato.</string>
|
||||
<string name="file_name">Nome file</string>
|
||||
<string name="file_name">Nome del file</string>
|
||||
<string name="path">Percorso</string>
|
||||
<string name="assign_master_key">Assegna una chiave master</string>
|
||||
<string name="create_keepass_file">Crea un nuovo database</string>
|
||||
<string name="recycle_bin_title">Uso del Cestino</string>
|
||||
<string name="recycle_bin_summary">Sposta i gruppi e le voci nel gruppo «Cestino» prima di eliminarlo</string>
|
||||
<string name="recycle_bin_title">Utilizzo del Cestino</string>
|
||||
<string name="recycle_bin_summary">Sposta i gruppi e le voci nel gruppo «Cestino» prima di eliminarli</string>
|
||||
<string name="monospace_font_fields_enable_title">Carattere campi</string>
|
||||
<string name="monospace_font_fields_enable_summary">Cambia il carattere usato nei campi per una migliore visibilità</string>
|
||||
<string name="allow_copy_password_title">Fiducia appunti</string>
|
||||
@@ -392,9 +392,9 @@
|
||||
<string name="validate">Convalida</string>
|
||||
<string name="max_history_size_title">Dimensione massima</string>
|
||||
<string name="max_history_items_title">Numero massimo</string>
|
||||
<string name="biometric_auto_open_prompt_title">Apri automaticamente la richiesta</string>
|
||||
<string name="max_history_size_summary">Limita la dimensione della cronologia per voce</string>
|
||||
<string name="max_history_items_summary">Limita il numero di elementi della cronologia per voce</string>
|
||||
<string name="biometric_auto_open_prompt_title">Messaggio di apertura automatica</string>
|
||||
<string name="max_history_size_summary">Limita la dimensione della cronologia per ciascuna voce</string>
|
||||
<string name="max_history_items_summary">Limita il numero di elementi della cronologia per ciascuna voce</string>
|
||||
<string name="recycle_bin_group_title">Gruppo cestino</string>
|
||||
<string name="database_data_compression_summary">La compressione dei dati riduce le dimensioni del database</string>
|
||||
<string name="database_data_compression_title">Compressione dati</string>
|
||||
@@ -417,8 +417,6 @@
|
||||
<string name="education_setup_OTP_title">Imposta password usa e getta (OTP)</string>
|
||||
<string name="enable_auto_save_database_summary">Salva il database dopo ogni azione importante (in modalità «Modificabile»)</string>
|
||||
<string name="enable_auto_save_database_title">Salvataggio automatico del database</string>
|
||||
<string name="autofill_auto_search_summary">Suggerisci automaticamente risultati dal dominio web o ID dell\'applicazione</string>
|
||||
<string name="autofill_auto_search_title">Ricerca automatica</string>
|
||||
<string name="keyboard_auto_go_action_summary">Azione del tasto \"Vai\" dopo aver premuto un tasto \"Campo\"</string>
|
||||
<string name="keyboard_auto_go_action_title">Tasto di azione automatica</string>
|
||||
<string name="device_keyboard_setting_title">Impostazioni della tastiera del dispositivo</string>
|
||||
@@ -444,8 +442,6 @@
|
||||
<string name="autofill_web_domain_blocklist_title">Lista di blocco per domini web</string>
|
||||
<string name="autofill_application_id_blocklist_title">Lista di blocco per app</string>
|
||||
<string name="autofill_application_id_blocklist_summary">La lista di blocco impedisce l\'auto riempimento nelle app</string>
|
||||
<string name="keyboard_search_share_summary">Durante la condivisione di una URL a KeePassDX, filtra le voci che usano quel dominio</string>
|
||||
<string name="keyboard_search_share_title">Cerca informazioni condivise</string>
|
||||
<string name="filter">Filtro</string>
|
||||
<string name="error_string_type">Questo testo non soddisfa l\'elemento richiesto.</string>
|
||||
<string name="subdomain_search_summary">Cerca nei domini web includendo i sotto-domini</string>
|
||||
@@ -459,7 +455,7 @@
|
||||
<string name="upload_attachment">Carica %1$s</string>
|
||||
<string name="education_add_attachment_summary">Carica un allegato alla voce per salvare dati esterni importanti.</string>
|
||||
<string name="education_add_attachment_title">Aggiungi allegato</string>
|
||||
<string name="database_data_remove_unlinked_attachments_summary">Rimuovi gli allegati contenuti nel database ma non collegati ad una voce</string>
|
||||
<string name="database_data_remove_unlinked_attachments_summary">Rimuovi gli allegati contenuti nel database ma non riferiti ad alcuna voce</string>
|
||||
<string name="database_data_remove_unlinked_attachments_title">Rimuovi i dati scollegati</string>
|
||||
<string name="data">Dati</string>
|
||||
<string name="warning_empty_keyfile_explanation">Il contenuto del file chiave non deve mai essere modificato e, nel migliore dei casi, dovrebbe contenere dati generati casualmente.</string>
|
||||
@@ -475,15 +471,15 @@
|
||||
<string name="show_uuid_summary">Visualizza l\'UUID collegato a una voce o a un gruppo</string>
|
||||
<string name="show_uuid_title">Mostra UUID</string>
|
||||
<string name="autofill_read_only_save">Il salvataggio dei dati non è consentito per un database aperto in sola lettura.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Chiedi di salvare i dati quando un modulo viene convalidato</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Chiedi di salvare i dati quando l\'immissione dei dati in un form viene completata</string>
|
||||
<string name="autofill_ask_to_save_data_title">Chiedi di salvare i dati</string>
|
||||
<string name="autofill_save_search_info_summary">Prova a salvare le informazioni di ricerca quando effettui una selezione di immissione manuale</string>
|
||||
<string name="autofill_save_search_info_summary">Provare a salvare le informazioni di ricerca quando viene selezionato manualmente un elemento per facilitarne gli utilizzi futuri</string>
|
||||
<string name="autofill_save_search_info_title">Salva le informazioni di ricerca</string>
|
||||
<string name="autofill_close_database_summary">Chiudi il database dopo aver usato l\'autocompletamento</string>
|
||||
<string name="autofill_close_database_title">Chiudi database</string>
|
||||
<string name="keyboard_previous_lock_summary">Torna automaticamente alla tastiera precedente dopo aver bloccato il database</string>
|
||||
<string name="keyboard_previous_lock_title">Blocca il database</string>
|
||||
<string name="keyboard_save_search_info_summary">Dopo la una URL in KeePassDX, quando viene selezionata una voce, prova a salvare quella voce per usi futuri</string>
|
||||
<string name="keyboard_save_search_info_summary">Provare a salvare l\'informazione condivisa quando viene selezionato manualmente un elemento, per poterne facilitare gli utilizzi futuri</string>
|
||||
<string name="keyboard_save_search_info_title">Salva le informazioni condivise</string>
|
||||
<string name="notification">Notifica</string>
|
||||
<string name="biometric_security_update_required">È necessario un aggiornamento della sicurezza biometrica.</string>
|
||||
@@ -502,20 +498,20 @@
|
||||
<string name="back_to_previous_keyboard">Torna alla tasitera precedente</string>
|
||||
<string name="custom_fields">Campi personalizzati</string>
|
||||
<string name="advanced_unlock_delete_all_key_warning">Vuoi eliminare le chiavi di cifratura relative allo sblocco avanzato\?</string>
|
||||
<string name="advanced_unlock_timeout">Scadenza sblocco avanzato</string>
|
||||
<string name="advanced_unlock_timeout">Durata dello sblocco avanzato</string>
|
||||
<string name="temp_advanced_unlock_enable_summary">Non salvare alcun contenuto criptato per usare lo sblocco avanzato</string>
|
||||
<string name="temp_advanced_unlock_timeout_summary">Validità dello sblocco avanzato prima di eliminarne il contenuto</string>
|
||||
<string name="temp_advanced_unlock_timeout_title">Scadenza sblocco avanzato</string>
|
||||
<string name="temp_advanced_unlock_timeout_title">Scadenza dello sblocco avanzato</string>
|
||||
<string name="temp_advanced_unlock_enable_title">Sblocco avanzato temporaneo</string>
|
||||
<string name="device_credential_unlock_enable_summary">Utilizza le credenziali del dispositivo per sbloccare il database</string>
|
||||
<string name="device_credential_unlock_enable_title">Sblocco con credenziali dispositivo</string>
|
||||
<string name="device_credential_unlock_enable_summary">Permette di usare le credenziali del dispositivo per sbloccare il database</string>
|
||||
<string name="device_credential_unlock_enable_title">Sblocco con le credenziali del dispositivo</string>
|
||||
<string name="advanced_unlock_tap_delete">Tocca per eliminare le chiavi di sblocco avanzato</string>
|
||||
<string name="content">Contenuto</string>
|
||||
<string name="advanced_unlock_prompt_not_initialized">Non è possibile inizializzare lo sblocco avanzato.</string>
|
||||
<string name="advanced_unlock_not_recognized">Non è possibile riconoscere lo sblocco avanzato</string>
|
||||
<string name="advanced_unlock_invalid_key">Non è possibile leggere la chiave di sblocco avanzato. Eliminala e ripeti la procedura di riconoscimento dello sblocco.</string>
|
||||
<string name="advanced_unlock_prompt_extract_credential_message">Estrai le credenziali del database con i dati dallo sblocco avanzato</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">Attenzione: dovrai sempre ricordare la password principale anche se usi lo sblocco avanzato.</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">Attenzione: dovrai comunque ricordare la password principale anche se usi lo sblocco avanzato.</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_title">Riconoscimento con sblocco avanzato</string>
|
||||
<string name="device_credential">Credenziali del dispositivo</string>
|
||||
<string name="credential_before_click_advanced_unlock_button">Inserisci la password, poi clicca questo pulsante.</string>
|
||||
@@ -562,8 +558,8 @@
|
||||
<string name="error_word_reserved">Questa parola è riservata e non può essere usata.</string>
|
||||
<string name="error_move_group_here">Non puoi spostare un gruppo qui.</string>
|
||||
<string name="templates">Modelli</string>
|
||||
<string name="templates_group_uuid_title">Gruppo di modelli</string>
|
||||
<string name="templates_group_enable_summary">Usa modelli dinamici per riempire i campi di una voce</string>
|
||||
<string name="templates_group_uuid_title">Gruppo dei modelli</string>
|
||||
<string name="templates_group_enable_summary">Usa i modelli dinamici per riempire i campi di una voce</string>
|
||||
<string name="templates_group_enable_title">Utilizzo dei modelli</string>
|
||||
<string name="version">Versione</string>
|
||||
<string name="template">Modello</string>
|
||||
@@ -621,10 +617,34 @@
|
||||
<string name="navigation_drawer_close">Chiusura del cassetto di navigazione</string>
|
||||
<string name="searchable">Ricercabile</string>
|
||||
<string name="content_description_nav_header">Intestazione di navigazione</string>
|
||||
<string name="inherited">Ereditato</string>
|
||||
<string name="inherited">Eredita</string>
|
||||
<string name="search_filters">Filtri di ricerca</string>
|
||||
<string name="regex">Espressione regolare</string>
|
||||
<string name="menu_merge_from">Unisci da …</string>
|
||||
<string name="menu_save_copy_to">Salva una copia in …</string>
|
||||
<string name="case_sensitive">Distinzione tra maiuscole e minuscole</string>
|
||||
<string name="content_description_passphrase_word_count">Numero di parole della password</string>
|
||||
<string name="expired">Scaduta</string>
|
||||
<string name="passphrase">Frase di accesso</string>
|
||||
<string name="colorize_password_title">Colora le password</string>
|
||||
<string name="colorize_password_summary">Colora i tipi di carattere della password</string>
|
||||
<string name="warning_database_already_opened">Un database è già aperto, chiuderlo prima di aprirne un altro.</string>
|
||||
<string name="auto_type_sequence">Sequenza di autodigitazione</string>
|
||||
<string name="advanced_unlock_keystore_warning">Questa funzione memorizzerà le informazioni cifrate di accesso nel KeyStore protetto del dispositivo.
|
||||
\nA seconda di come è stata implementata l\'API nativa del sistema operativo, potrebbe non essere pienanente funzionante.
|
||||
\nVerificare la compatibilità e la sicurezza del KeyStore consultando sia il costruttore del dispositivo che il creatore della ROM in uso nel dispositivo stesso.</string>
|
||||
<string name="keyboard_previous_search_title">Schermata di ricerca</string>
|
||||
<string name="keyboard_previous_search_summary">Ritornare automaticamente alla tastiera precedente quando ci si trova sulla schermata di ricerca</string>
|
||||
<string name="entropy_high">Entropia: Alta</string>
|
||||
<string name="entropy_calculate">Entropia: Calcolo in corso…</string>
|
||||
<string name="at_least_one_char">Almeno un carattere di ciascuno</string>
|
||||
<string name="exclude_ambiguous_chars">Escludere i caratteri ambigui</string>
|
||||
<string name="consider_chars_filter">Includi i caratteri</string>
|
||||
<string name="word_separator">Separatore</string>
|
||||
<string name="ignore_chars_filter">Ignorare i caratteri</string>
|
||||
<string name="lower_case">minuscolo</string>
|
||||
<string name="upper_case">MAIUSCOLO</string>
|
||||
<string name="title_case">Iniziali maiuscole</string>
|
||||
<string name="character_count">Numero di caratteri: %1$d</string>
|
||||
<string name="entropy">Entropia: %1$s bit</string>
|
||||
</resources>
|
||||
@@ -332,8 +332,8 @@
|
||||
<string name="allow_copy_password_title">クリップボードの信頼</string>
|
||||
<string name="allow_copy_password_summary">エントリーのパスワードと保護されたフィールドを、クリップボードにコピーすることを許可します</string>
|
||||
<string name="allow_copy_password_warning">警告:クリップボードはすべてのアプリで共有されます。機密データがコピーされた場合、他のソフトウェアがデータを復元する可能性があります。</string>
|
||||
<string name="enable">有効にする</string>
|
||||
<string name="disable">無効にする</string>
|
||||
<string name="enable">有効</string>
|
||||
<string name="disable">無効</string>
|
||||
<string name="notification">通知</string>
|
||||
<string name="clear_clipboard_notification_title">データベースを閉じて消去</string>
|
||||
<string name="clear_clipboard_notification_summary">クリップボードでの保存期間が終了したとき、または使用開始後に通知が閉じられたとき、データベースをロックします</string>
|
||||
@@ -361,10 +361,8 @@
|
||||
<string name="keyboard_selection_entry_summary">KeePassDX のエントリーを開いているとき、Magikeyboard にそのエントリーを格納します</string>
|
||||
<string name="keyboard_notification_entry_title">通知情報</string>
|
||||
<string name="keyboard_notification_entry_summary">エントリーが利用可能なとき、通知を表示します</string>
|
||||
<string name="keyboard_search_share_title">共有情報の検索</string>
|
||||
<string name="keyboard_search_share_summary">URL を KeePassDX に共有するとそのドメインを使ってエントリーを検索します</string>
|
||||
<string name="keyboard_save_search_info_title">共有情報の保存</string>
|
||||
<string name="keyboard_save_search_info_summary">KeePassDX に URL を共有して、エントリーが選択されたとき、さらなる使用のためそのエントリーを記憶しておきます</string>
|
||||
<string name="keyboard_save_search_info_summary">手動でエントリーが選択されたときに、次回以降の自動選択のために共有情報の保存を試みます</string>
|
||||
<string name="keyboard_notification_entry_clear_close_title">データベースを閉じて消去</string>
|
||||
<string name="keyboard_notification_entry_clear_close_summary">通知を閉じるとき、データベースも閉じます</string>
|
||||
<string name="keyboard_entry_timeout_title">タイムアウト</string>
|
||||
@@ -388,13 +386,11 @@
|
||||
<string name="keyboard_previous_lock_summary">データベースのロック後、切り替え前のキーボードへ自動的に戻します</string>
|
||||
<string name="autofill_close_database_title">データベースを閉じる</string>
|
||||
<string name="autofill_close_database_summary">自動入力の選択後、データベースを閉じます</string>
|
||||
<string name="autofill_auto_search_title">自動検索</string>
|
||||
<string name="autofill_auto_search_summary">ウェブドメインまたはアプリケーション ID から検索結果を自動的に提案します</string>
|
||||
<string name="autofill_application_id_blocklist_title">アプリケーションのブロックリスト</string>
|
||||
<string name="autofill_save_search_info_title">検索情報の保存</string>
|
||||
<string name="autofill_save_search_info_summary">手動でエントリーを選択したとき、検索情報の保存を試みます</string>
|
||||
<string name="autofill_save_search_info_summary">手動でエントリーを選択したとき、次回以降の自動選択のために検索情報の保存を試みます</string>
|
||||
<string name="autofill_ask_to_save_data_title">データ保存の確認</string>
|
||||
<string name="autofill_ask_to_save_data_summary">フォームが検証されたとき、データを保存するか確認します</string>
|
||||
<string name="autofill_ask_to_save_data_summary">フォームの入力が完了したとき、データを保存するか確認します</string>
|
||||
<string name="autofill_application_id_blocklist_summary">自動入力を行わないアプリの一覧</string>
|
||||
<string name="autofill_web_domain_blocklist_title">ウェブドメインのブロックリスト</string>
|
||||
<string name="autofill_web_domain_blocklist_summary">自動入力を行わないウェブドメインの一覧</string>
|
||||
@@ -508,7 +504,7 @@
|
||||
<string name="advanced_unlock_invalid_key">高度なロック解除用の鍵が読み取れません。削除してロック解除の手順をやり直してください。</string>
|
||||
<string name="advanced_unlock_prompt_extract_credential_message">高度なロック解除を使ってデータベース認証情報を取り出します</string>
|
||||
<string name="advanced_unlock_prompt_extract_credential_title">高度なロック解除を使ってデータベースを開く</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">警告:高度なロック解除を使用する場合も、マスター パスワードを記憶する必要があります。</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_message">高度なロック解除を使用する場合も、主たる認証情報は記憶する必要があります。</string>
|
||||
<string name="advanced_unlock_prompt_store_credential_title">高度なロック解除の認証</string>
|
||||
<string name="open_advanced_unlock_prompt_store_credential">ログイン プロンプトを開いて認証情報を保存する</string>
|
||||
<string name="open_advanced_unlock_prompt_unlock_database">ログイン プロンプトを開いてロックを解除する</string>
|
||||
@@ -600,7 +596,7 @@
|
||||
<string name="template">テンプレート</string>
|
||||
<string name="hint_icon_name">アイコン名</string>
|
||||
<string name="tags">タグ</string>
|
||||
<string name="menu_merge_database">マージする</string>
|
||||
<string name="menu_merge_database">データベースの統合</string>
|
||||
<string name="warning_keyfile_integrity">Android は実行中にデータを変更しうるため、ファイルのハッシュ値は保証されません。整合性を正しく保つにはファイルの拡張子を.binに変更してください。</string>
|
||||
<string name="permission">権限</string>
|
||||
<string name="enable_keep_screen_on_title">画面の表示を保つ</string>
|
||||
@@ -609,8 +605,44 @@
|
||||
<string name="content_description_entry_foreground_color">エントリーのフォアグラウンド カラー</string>
|
||||
<string name="content_description_entry_background_color">エントリーのバックグラウンド カラー</string>
|
||||
<string name="wireless">Wi-Fi</string>
|
||||
<string name="warning_database_info_reloaded">データベースを再度読み込むとローカルで変更されたデータが削除されます。</string>
|
||||
<string name="warning_database_info_reloaded">データベースを再読込すると、ローカルで変更されたデータは破棄されます。</string>
|
||||
<string name="warning_exact_alarm">アプリに正確なアラームの使用を許可していません。その結果、タイマーを必要とする機能が正確な時間で行われなくなります。</string>
|
||||
<string name="show_entry_colors_title">エントリー カラー</string>
|
||||
<string name="show_entry_colors_summary">フォアグラウンド・バックグラウンド カラーをエントリー内に表示します</string>
|
||||
<string name="regex">正規表現</string>
|
||||
<string name="case_sensitive">ケース・センシティブ</string>
|
||||
<string name="content_description_passphrase_word_count">パスフレーズの単語数</string>
|
||||
<string name="inherited">上の階層のグループに合わせる</string>
|
||||
<string name="expired">有効期限切れ</string>
|
||||
<string name="passphrase">パスフレーズ</string>
|
||||
<string name="colorize_password_title">パスワードを色付けする</string>
|
||||
<string name="searchable">検索可能</string>
|
||||
<string name="custom_data">カスタムデータ</string>
|
||||
<string name="search_filters">検索フィルター</string>
|
||||
<string name="keyboard_previous_search_title">検索画面</string>
|
||||
<string name="entropy">エントロピー:%1$s ビット</string>
|
||||
<string name="colorize_password_summary">文字種を基準にパスワードを色付けします</string>
|
||||
<string name="lower_case">すべて小文字</string>
|
||||
<string name="upper_case">すべて大文字</string>
|
||||
<string name="character_count">文字数:%1$d</string>
|
||||
<string name="entropy_high">エントロピー:高</string>
|
||||
<string name="warning_database_already_opened">データベースがすでに開いているため、まず閉じてから新しく開き直してください</string>
|
||||
<string name="advanced_unlock_keystore_warning">この機能は、暗号化された認証情報をデバイスの安全な KeyStore に保存します。
|
||||
\n
|
||||
\nオペレーティング システムのネイティブ API の実装によっては、完全に機能しない場合があります。
|
||||
\nKeyStore の互換性と安全性については、お使いのデバイスの製造元および使用するROMの作成者にご確認ください。</string>
|
||||
<string name="navigation_drawer_open">ナビゲーション ドロワーが開いています</string>
|
||||
<string name="navigation_drawer_close">ナビゲーション ドロワーが閉じています</string>
|
||||
<string name="auto_type_sequence">Auto-Type シークエンス</string>
|
||||
<string name="current_group">選択されたグループ</string>
|
||||
<string name="keyboard_previous_search_summary">検索画面で切り替え前のキーボードに自動的に戻します</string>
|
||||
<string name="menu_merge_from">マージ…</string>
|
||||
<string name="entropy_calculate">エントロピー:計算中…</string>
|
||||
<string name="at_least_one_char">各文字種から少なくとも 1 文字を含めるようにする</string>
|
||||
<string name="exclude_ambiguous_chars">見分けのつきにくい文字を除外する</string>
|
||||
<string name="word_separator">区切り文字</string>
|
||||
<string name="menu_save_copy_to">コピーを保存…</string>
|
||||
<string name="consider_chars_filter">対象に加える文字</string>
|
||||
<string name="ignore_chars_filter">使用しない文字</string>
|
||||
<string name="title_case">語頭を大文字</string>
|
||||
</resources>
|
||||
@@ -16,8 +16,7 @@
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with KeePassDX. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<resources>
|
||||
--><resources>
|
||||
<string name="feedback">피드백</string>
|
||||
<string name="homepage">홈페이지</string>
|
||||
<string name="about_description">KeePass 암호 관리자의 Android 구현본</string>
|
||||
@@ -28,19 +27,19 @@
|
||||
<string name="encryption">암호화</string>
|
||||
<string name="encryption_algorithm">안호화 방식</string>
|
||||
<string name="key_derivation_function">키 파생 기능</string>
|
||||
<string name="app_timeout">앱 자동 종료 시간</string>
|
||||
<string name="app_timeout_summary">앱이 잠기기 전에 비활성화됨</string>
|
||||
<string name="app_timeout">자동 종료 시간</string>
|
||||
<string name="app_timeout_summary">데이터베이스를 잠그기 전 유휴 시간</string>
|
||||
<string name="application">앱</string>
|
||||
<string name="brackets">브라켓</string>
|
||||
<string name="extended_ASCII">확장 ASCII</string>
|
||||
<string name="file_manager_install_description">OpenIntents File Manager를 설치하여 파일 찾아보기</string>
|
||||
<string name="file_manager_install_description">파일 관리자는 데이터베이스 파일 생성, 열기 및 저장하기 위해 ACTION_CREATE_DOCUMENT 및 ACTION_OPEN_DOCUMENT 인텐트 액션의 허가가 필요합니다.</string>
|
||||
<string name="allow">허가</string>
|
||||
<string name="clipboard_cleared">클립보드 비워짐</string>
|
||||
<string name="clipboard_error_title">클립보드 오류</string>
|
||||
<string name="clipboard_error">일부 삼성 안드로이드 폰은 앱이 클립보드를 사용하지 못하게 합니다.</string>
|
||||
<string name="clipboard_error">일부 장치는 앱이 클립보드를 사용하지 못하게 할 수 있습니다.</string>
|
||||
<string name="clipboard_error_clear">클립보드를 비울 수 없음</string>
|
||||
<string name="clipboard_timeout">클립보드 시간 초과</string>
|
||||
<string name="clipboard_timeout_summary">클립보드 저장이 유지될 시간</string>
|
||||
<string name="clipboard_timeout_summary">클립보드 저장이 유지될 시간 (장치가 지원한다면)</string>
|
||||
<string name="select_to_copy">%1$s 을(를) 클립보드에 복사하려면 선택하십시오.</string>
|
||||
<string name="retrieving_db_key">데이터베이스 키를 검색하는 중…</string>
|
||||
<string name="database">데이터베이스</string>
|
||||
@@ -152,7 +151,7 @@
|
||||
<string name="content_description_add_group">그룹 추가</string>
|
||||
<string name="content_description_file_information">파일 정보</string>
|
||||
<string name="content_description_password_checkbox">비밀번호 체크박스</string>
|
||||
<string name="content_description_keyfile_checkbox">내용_설명_키파일_체크박스</string>
|
||||
<string name="content_description_keyfile_checkbox">키파일 체크박스</string>
|
||||
<string name="content_description_repeat_toggle_password_visibility">토글 비밀번호 가시성 반복</string>
|
||||
<string name="entry_password_generator">비밀번호 생성</string>
|
||||
<string name="content_description_password_length">비밀번호 길이</string>
|
||||
@@ -160,4 +159,44 @@
|
||||
<string name="content_description_remove_field">필드 제거</string>
|
||||
<string name="error_move_entry_here">항목을 여기로 옮길 수 없습니다.</string>
|
||||
<string name="error_copy_entry_here">항목을 여기로 복사할 수 없습니다.</string>
|
||||
<string name="content_description_credentials_information">인증서</string>
|
||||
<string name="master_key">마스터키</string>
|
||||
<string name="contribution">기여</string>
|
||||
<string name="entry_add_attachment">첨부파일 추가</string>
|
||||
<string name="content_description_passphrase_word_count">비밀구절 단어 수</string>
|
||||
<string name="expired">만료됨</string>
|
||||
<string name="case_sensitive">대소문자 구분</string>
|
||||
<string name="error_create_database">데이터베이스 파일을 생성할 수 없습니다.</string>
|
||||
<string name="id_card">신분증</string>
|
||||
<string name="place_of_issue">발행지</string>
|
||||
<string name="cryptocurrency">가상 화폐 지갑</string>
|
||||
<string name="error_word_reserved">이 단어는 예약되어 사용할 수 없습니다.</string>
|
||||
<string name="error_invalid_OTP">OTP 비밀키가 유효하지 않습니다.</string>
|
||||
<string name="error_disallow_no_credentials">하나 이상의 자격 증명을 설정해야 합니다.</string>
|
||||
<string name="error_save_database">데이터베이스를 저장할 수 없습니다.</string>
|
||||
<string name="error_otp_secret_key">비밀키는 Base32 포맷이어야 합니다.</string>
|
||||
<string name="error_create_database_file">이 비밀번호와 키파일로 데이터베이스를 생성할 수 없습니다.</string>
|
||||
<string name="content_description_database_color">데이터베이스 색상</string>
|
||||
<string name="content_description_entry_foreground_color">항목 전면 색상</string>
|
||||
<string name="content_description_entry_background_color">항목 배경 색상</string>
|
||||
<string name="discard_changes">변경사항을 취소하시겠습니까\?</string>
|
||||
<string name="debit_credit_card">직불 / 신용 카드</string>
|
||||
<string name="otp_algorithm">알고리즘</string>
|
||||
<string name="date_of_issue">발행일자</string>
|
||||
<string name="error_move_group_here">그룹을 여기로 옮길 수 없습니다.</string>
|
||||
<string name="error_copy_group_here">그룹을 여기로 복사할 수 없습니다.</string>
|
||||
<string name="content_description_otp_information">일회용 암호 정보</string>
|
||||
<string name="security">보안</string>
|
||||
<string name="content_description_entry_icon">항목 아이콘</string>
|
||||
<string name="content_description_add_item">아이템 추가</string>
|
||||
<string name="contact">문의</string>
|
||||
<string name="content_description_update_from_list">갱신</string>
|
||||
<string name="validate">검증</string>
|
||||
<string name="html_about_contribution"><strong>우리의 자유를 지키고</strong>, <strong>버그를 고치고</strong>, <strong>기능을 추가</strong>하고, <strong>언제나 활성화</strong>되기 위해 우리는 당신의 <strong>기여</strong>를 믿습니다.</string>
|
||||
<string name="entry_setup_otp">일회용 비밀번호 설정</string>
|
||||
<string name="otp_type">OTP 유형</string>
|
||||
<string name="otp_period">주기 (초)</string>
|
||||
<string name="search_filters">검색 필터</string>
|
||||
<string name="regex">정규 표현식</string>
|
||||
<string name="error_label_exists">이미 존재하는 라벨입니다.</string>
|
||||
</resources>
|
||||
@@ -152,7 +152,6 @@
|
||||
<string name="about_description">KeePass പാസ്വേഡ് മാനേജറിന്റെ Android നടപ്പിലാക്കൽ</string>
|
||||
<string name="download_complete">പൂർത്തിയാക്കി!</string>
|
||||
<string name="education_create_database_title">നിങ്ങളുടെ ഡാറ്റാബേസ് ഫയൽ സൃഷ്ടിക്കുക</string>
|
||||
<string name="autofill_auto_search_title">സ്വയം തിരയൽ</string>
|
||||
<string name="keyboard_change">കീബോർഡ് മാറ്റുക</string>
|
||||
<string name="keyboard_label">Magikeyboard (KeePassDX)</string>
|
||||
<string name="compression_gzip">Gzip</string>
|
||||
@@ -200,7 +199,6 @@
|
||||
<string name="keyboard_theme_title">കീബോർഡ് തീം</string>
|
||||
<string name="keyboard_notification_entry_content_text">%1$s</string>
|
||||
<string name="keyboard_notification_entry_clear_close_title">അടയ്ക്കുമ്പോൾ മായ്ക്കുക</string>
|
||||
<string name="keyboard_search_share_title">പങ്കിട്ട വിവരങ്ങൾ തിരയുക</string>
|
||||
<string name="keyboard_setting_label">Magikeyboard ക്രമീകരണങ്ങൾ</string>
|
||||
<string name="keyboard_name">Magikeyboard</string>
|
||||
<string name="keyboard">കീബോർഡ്</string>
|
||||
|
||||
12
app/src/main/res/values-mr/strings.xml
Normal file
12
app/src/main/res/values-mr/strings.xml
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="contribution">योगदान</string>
|
||||
<string name="homepage">मुख्य पान</string>
|
||||
<string name="feedback">प्रतिक्रिया</string>
|
||||
<string name="contact">संपर्क</string>
|
||||
<string name="accept">स्वीकार करा</string>
|
||||
<string name="about_description">किपास सांकेतांक व्यवस्थापनाचे अँड्रॉइड अंतर्भूतीकरण</string>
|
||||
<string name="master_key">राणी चावी</string>
|
||||
<string name="add_group">गट जोडा</string>
|
||||
<string name="security">सुरक्षा</string>
|
||||
</resources>
|
||||
@@ -383,7 +383,6 @@
|
||||
<string name="entry_add_attachment">Legg til vedlegg</string>
|
||||
<string name="contribution">Bidrag</string>
|
||||
<string name="contact">Kontakt</string>
|
||||
<string name="autofill_auto_search_title">Autosøk</string>
|
||||
<string name="enable_auto_save_database_summary">Lagre database etter hver viktige handling i (i \"modifiserbart\" modus)</string>
|
||||
<string name="download_initialization">Igangsetter…</string>
|
||||
<string name="hide_expired_entries_summary">Utløpte oppføringer er skjult</string>
|
||||
@@ -436,7 +435,6 @@
|
||||
<string name="keyboard_previous_lock_title">Lås databasen</string>
|
||||
<string name="keyboard_previous_lock_summary">Bytt automatisk tilbake til forrige tastatur etter å ha låst databasen</string>
|
||||
<string name="autofill_close_database_summary">Lukk databasen etter et autofyllvalg</string>
|
||||
<string name="autofill_auto_search_summary">Foreslå automatisk søkeresultater fra webdomenet eller applikasjons-IDen</string>
|
||||
<string name="autofill_save_search_info_summary">Prøv å lagre søkeinformasjon når du foretar et manuelt valg</string>
|
||||
<string name="autofill_block">Blokker autofyll</string>
|
||||
<string name="autofill_block_restart">Start appen på nytt som inneholder skjemaet for å aktivere blokkeringen.</string>
|
||||
@@ -454,7 +452,6 @@
|
||||
<string name="style_brightness_title">Draktlysstyrke</string>
|
||||
<string name="backspace">Rettetast</string>
|
||||
<string name="keyboard_save_search_info_title">Lagre delt info</string>
|
||||
<string name="keyboard_search_share_title">Søk i delt info</string>
|
||||
<string name="device_keyboard_setting_title">Innstillinger for enhetens tastatur</string>
|
||||
<string name="notification">Merknad</string>
|
||||
<string name="data">Data</string>
|
||||
@@ -573,7 +570,6 @@
|
||||
<string name="show_otp_token_title">Vis OTP-symbol</string>
|
||||
<string name="keyboard_auto_go_action_summary">«Start»-nøkkelhandling etter at en «Felt»-nøkkel trykkes</string>
|
||||
<string name="keyboard_auto_go_action_title">Automatisk nøkkelhandling</string>
|
||||
<string name="keyboard_search_share_summary">Filtrer oppføringene ved bruk av nettadressedomenet ved deling av en nettadresse til KeePassDX</string>
|
||||
<string name="settings_database_force_changing_master_key_next_time_summary">Krev endring av hovednøkkelen neste gang (én gang)</string>
|
||||
<string name="settings_database_force_changing_master_key_next_time_title">Påtving fornyelse neste gang</string>
|
||||
<string name="database_data_remove_unlinked_attachments_title">Fjen ulenket data</string>
|
||||
|
||||
@@ -403,8 +403,6 @@
|
||||
<string name="download_attachment">Download %1$s</string>
|
||||
<string name="education_setup_OTP_summary">Stel eenmalig wachtwoordbeheer (HOTP / TOTP) in om een token te genereren voor tweefactorauthenticatie (2FA).</string>
|
||||
<string name="enable_auto_save_database_title">Automatisch opslaan</string>
|
||||
<string name="autofill_auto_search_summary">Automatisch zoekresultaten voorstellen vanuit het webdomein of de toepassings-ID</string>
|
||||
<string name="autofill_auto_search_title">Automatisch zoeken</string>
|
||||
<string name="recycle_bin_group_title">Prullenbak</string>
|
||||
<string name="lock_database_show_button_summary">Toont de vergrendelknop in de gebruikersinterface</string>
|
||||
<string name="lock_database_show_button_title">Vergrendelknop tonen</string>
|
||||
@@ -435,8 +433,6 @@
|
||||
<string name="validate">Valideren</string>
|
||||
<string name="contribution">Bijdragen</string>
|
||||
<string name="contact">Contact</string>
|
||||
<string name="keyboard_search_share_summary">Filter, wanneer een URL met KeePassDX is gedeeld, de items met dat URL-domein</string>
|
||||
<string name="keyboard_search_share_title">Gedeelde informatie zoeken</string>
|
||||
<string name="autofill_block_restart">Start de app met het formulier opnieuw op om de blokkering te activeren.</string>
|
||||
<string name="autofill_block">Blokkering van automatisch invullen</string>
|
||||
<string name="autofill_web_domain_blocklist_summary">Lijst die het automatisch invullen bij webdomeinen voorkomt</string>
|
||||
@@ -476,13 +472,13 @@
|
||||
<string name="autofill_read_only_save">Het opslaan van gegevens is niet toegestaan voor een database die is geopend als alleen-lezen.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Vraag om gegevens op te slaan wanneer het invullen van een formulier is voltooid</string>
|
||||
<string name="autofill_ask_to_save_data_title">Vragen om gegevens op te slaan</string>
|
||||
<string name="autofill_save_search_info_summary">Probeer zoekinformatie op te slaan bij het maken van een handmatige selectie</string>
|
||||
<string name="autofill_save_search_info_summary">Probeer zoekinformatie op te slaan bij het maken van een handmatige invoerselectie voor eenvoudiger toekomstig gebruik</string>
|
||||
<string name="autofill_save_search_info_title">Zoekinformatie opslaan</string>
|
||||
<string name="autofill_close_database_summary">Sluit de database na een selectie voor automatisch aanvullen</string>
|
||||
<string name="autofill_close_database_title">Database sluiten</string>
|
||||
<string name="keyboard_previous_lock_summary">Schakel na het vergrendelen van de database automatisch terug naar het vorige toetsenbord</string>
|
||||
<string name="keyboard_previous_lock_title">Database vergrendelen</string>
|
||||
<string name="keyboard_save_search_info_summary">Probeer, wanneer een URL met KeePassDX is gedeeld en een item is geselecteerd, dat item te onthouden voor verder gebruik</string>
|
||||
<string name="keyboard_save_search_info_summary">Probeer gedeelde informatie op te slaan bij het maken van een handmatige invoerselectie voor eenvoudiger toekomstig gebruik</string>
|
||||
<string name="keyboard_save_search_info_title">Gedeelde info opslaan</string>
|
||||
<string name="notification">Melding</string>
|
||||
<string name="biometric_security_update_required">Biometrische beveiligingsupdate vereist.</string>
|
||||
@@ -632,4 +628,22 @@
|
||||
\nAfhankelijk van de specifieke API-implementatie van het besturingssysteem, is dit mogelijk niet volledig functioneel.
|
||||
\nControleer de compatibiliteit en beveiliging van de KeyStore met de fabrikant van uw apparaat en de maker van de ROM die u gebruikt.</string>
|
||||
<string name="warning_database_already_opened">Er is al een database geopend, sluit deze eerst alvorens een nieuwe te openen</string>
|
||||
<string name="content_description_passphrase_word_count">Lengte wachtwoordzin</string>
|
||||
<string name="passphrase">Wachtwoordzin</string>
|
||||
<string name="colorize_password_title">Wachtwoorden kleuren</string>
|
||||
<string name="colorize_password_summary">Wachtwoordtekens kleuren per type</string>
|
||||
<string name="keyboard_previous_search_title">Zoekvenster</string>
|
||||
<string name="keyboard_previous_search_summary">Schakel in het zoekvenster automatisch terug naar het vorige toetsenbord</string>
|
||||
<string name="entropy">Entropie: %1$s bit</string>
|
||||
<string name="entropy_high">Entropie: Hoog</string>
|
||||
<string name="entropy_calculate">Entropie: Berekenen…</string>
|
||||
<string name="word_separator">Scheidingsteken</string>
|
||||
<string name="lower_case">kleine letters</string>
|
||||
<string name="upper_case">GROTE LETTERS</string>
|
||||
<string name="at_least_one_char">Minstens een teken van elk</string>
|
||||
<string name="exclude_ambiguous_chars">Dubbelzinnige tekens uitsluiten</string>
|
||||
<string name="consider_chars_filter">Tekens overwegen</string>
|
||||
<string name="ignore_chars_filter">Tekens negeren</string>
|
||||
<string name="title_case">Woordhoofdletters</string>
|
||||
<string name="character_count">Aantal tekens: %1$d</string>
|
||||
</resources>
|
||||
@@ -428,15 +428,11 @@
|
||||
<string name="discard">Odrzuć</string>
|
||||
<string name="discard_changes">Odrzucić zmiany\?</string>
|
||||
<string name="validate">Walidacja</string>
|
||||
<string name="autofill_auto_search_summary">Automatyczne sugerowanie wyników wyszukiwania z domeny internetowej lub identyfikatora aplikacji</string>
|
||||
<string name="autofill_auto_search_title">Automatyczne wyszukiwanie</string>
|
||||
<string name="lock_database_show_button_summary">Wyświetla przycisk blokady w interfejsie użytkownika</string>
|
||||
<string name="lock_database_show_button_title">Pokaż przycisk blokady</string>
|
||||
<string name="autofill_preference_title">Ustawienia autouzupełniania</string>
|
||||
<string name="warning_database_link_revoked">Dostęp do pliku anulowany przez menedżera plików</string>
|
||||
<string name="error_label_exists">Ta etykieta już istnieje.</string>
|
||||
<string name="keyboard_search_share_summary">Udostępniając KeePassDX adres URL, filtruj wpisy przy użyciu tej domeny adresu URL</string>
|
||||
<string name="keyboard_search_share_title">Wyszukaj udostępnione informacje</string>
|
||||
<string name="autofill_block_restart">Zrestartuj aplikację zawierającą formularz, aby aktywować blokadę.</string>
|
||||
<string name="autofill_block">Blokowanie autouzupełniania</string>
|
||||
<string name="autofill_application_id_blocklist_summary">Lista zablokowanych, która uniemożliwia automatyczne wypełnianie aplikacji</string>
|
||||
@@ -474,13 +470,13 @@
|
||||
<string name="autofill_read_only_save">Zapisywanie danych nie jest dozwolone dla bazy danych otwartej jako tylko do odczytu.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Pytaj o zapisanie danych po zakończeniu wypełniania formularza</string>
|
||||
<string name="autofill_ask_to_save_data_title">Pytaj o zapisanie danych</string>
|
||||
<string name="autofill_save_search_info_summary">Spróbuj zapisać informacje wyszukiwania podczas dokonywania ręcznego wyboru pozycji</string>
|
||||
<string name="autofill_save_search_info_summary">Staraj się zapisywać informacje wyszukiwania podczas dokonywania ręcznego wyboru wpisu, aby ułatwić sobie przyszłe użycie</string>
|
||||
<string name="autofill_save_search_info_title">Zapisz informacje wyszukiwania</string>
|
||||
<string name="autofill_close_database_summary">Zamknij bazę danych po wybraniu autouzupełniania</string>
|
||||
<string name="autofill_close_database_title">Zamknij bazę danych</string>
|
||||
<string name="keyboard_previous_lock_summary">Automatycznie przełącz się z powrotem do poprzedniej klawiatury po zablokowaniu bazy danych</string>
|
||||
<string name="keyboard_previous_lock_title">Zablokuj bazę danych</string>
|
||||
<string name="keyboard_save_search_info_summary">Po udostępnieniu KeePassDX adresu URL, kiedy wpis jest wybrany, spróbuj zapamiętać ten wpis do dalszych zastosowań</string>
|
||||
<string name="keyboard_save_search_info_summary">Staraj się zapisywać udostępnione informacje podczas dokonywania ręcznego wyboru wpisu, aby ułatwić sobie przyszłe użycie</string>
|
||||
<string name="keyboard_save_search_info_title">Zapisz udostępnione informacje</string>
|
||||
<string name="notification">Powiadomienia</string>
|
||||
<string name="biometric_security_update_required">Wymagana aktualizacja zabezpieczeń biometrycznych.</string>
|
||||
|
||||
@@ -402,7 +402,6 @@
|
||||
<string name="auto_focus_search_title">Busca rápida</string>
|
||||
<string name="menu_delete_entry_history">Apagar histórico</string>
|
||||
<string name="menu_restore_entry_history">Restaurar histórico</string>
|
||||
<string name="autofill_auto_search_summary">Sugerir resultados de busca de domínios da internet ou de aplicativos automaticamente</string>
|
||||
<string name="hide_expired_entries_summary">Entradas expiradas foram escondidas</string>
|
||||
<string name="hide_expired_entries_title">Esconder entradas expiradas</string>
|
||||
<string name="download_complete">Completo!</string>
|
||||
@@ -412,7 +411,6 @@
|
||||
<string name="download_attachment">Baixar %1$s</string>
|
||||
<string name="education_setup_OTP_summary">Configure o gerenciamento de senha descartável (HOTP / TOTP) para gerar um token solicitado para autenticação de dois fatores (2FA).</string>
|
||||
<string name="education_setup_OTP_title">Configurar OTP</string>
|
||||
<string name="autofill_auto_search_title">Busca automática</string>
|
||||
<string name="keyboard_auto_go_action_summary">Ação da tecla \"Ir\" após pressionar a tecla \"Campo\"</string>
|
||||
<string name="keyboard_auto_go_action_title">Ação de tecla automática</string>
|
||||
<string name="lock_database_show_button_summary">Mostrar o botão de bloqueio na interface do usuário</string>
|
||||
@@ -435,8 +433,6 @@
|
||||
<string name="discard_changes">Descartar mudanças\?</string>
|
||||
<string name="validate">Validar</string>
|
||||
<string name="contribution">Contribuição</string>
|
||||
<string name="keyboard_search_share_summary">Ao compartilhar um URL para KeePassDX, filtre as entradas usando esse domínio de URL</string>
|
||||
<string name="keyboard_search_share_title">Procurar informação compartilhada</string>
|
||||
<string name="upload_attachment">Upload %1$s</string>
|
||||
<string name="keyboard_previous_fill_in_summary">Retornar automaticamente para o teclado anterior após executar a \"ação de tecla automática\"</string>
|
||||
<string name="keyboard_previous_fill_in_title">Ação automática de tecla</string>
|
||||
@@ -563,7 +559,7 @@
|
||||
<string name="autofill_read_only_save">A salvação de dados não é permitida para um banco de dados aberto apenas como leitura.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Pedir para salvar dados ao terminar de preencher um formulário</string>
|
||||
<string name="autofill_ask_to_save_data_title">Perguntar para salvar dados</string>
|
||||
<string name="autofill_save_search_info_summary">Tente salvar informações de pesquisa ao fazer uma seleção manual de entrada</string>
|
||||
<string name="autofill_save_search_info_summary">Tente salvar informações de pesquisa ao fazer uma seleção manual de entrada para facilitar usos posteriores</string>
|
||||
<string name="autofill_save_search_info_title">Salvar informações de busca</string>
|
||||
<string name="autofill_manual_selection_summary">Exibir opção para permitir que o usuário selecione a entrada do banco de dados</string>
|
||||
<string name="autofill_manual_selection_title">Seleção manual</string>
|
||||
@@ -578,7 +574,7 @@
|
||||
<string name="custom_fields">Campos personalizados</string>
|
||||
<string name="keyboard_previous_lock_summary">Retornar automaticamente para o teclado anterior depois de bloquear o banco de dados</string>
|
||||
<string name="keyboard_previous_lock_title">Bloquear banco de dados</string>
|
||||
<string name="keyboard_save_search_info_summary">Depois de compartilhar uma URL para o KeePassDX, quando uma entrada é selecionada, tente lembrar que a entrada para usos adicionais</string>
|
||||
<string name="keyboard_save_search_info_summary">Tente salvar informações compartilhadas ao fazer uma seleção manual de entrada para facilitar usos posteriores</string>
|
||||
<string name="keyboard_save_search_info_title">Salvar informações compartilhadas</string>
|
||||
<string name="templates">Modelos</string>
|
||||
<string name="notification">Notificação</string>
|
||||
|
||||
@@ -343,7 +343,6 @@
|
||||
<string name="autofill_web_domain_blocklist_title">Lista de bloqueio de domínios da web</string>
|
||||
<string name="autofill_application_id_blocklist_summary">Lista de aplicações bloqueadas sem permissão de preenchimento automático</string>
|
||||
<string name="autofill_application_id_blocklist_title">Lista de bloqueio de aplicações</string>
|
||||
<string name="autofill_auto_search_summary">Sugerir resultados de pesquisa automaticamente do domínio da web ou do ID da aplicação</string>
|
||||
<string name="keyboard_previous_fill_in_summary">Mudar automaticamente para o teclado anterior depois de executar a \"tecla automática\"</string>
|
||||
<string name="keyboard_previous_fill_in_title">Ação da tecla automática</string>
|
||||
<string name="keyboard_previous_database_credentials_summary">Voltar automaticamente para o teclado anterior no ecrã de credenciais da base de dados</string>
|
||||
@@ -405,7 +404,6 @@
|
||||
<string name="auto_focus_search_title">Pesquisa rápida</string>
|
||||
<string name="biometric_delete_all_key_title">Eliminar chaves de encriptação</string>
|
||||
<string name="invalid_db_same_uuid">%1$s com o mesmo UUID %2$s já existe.</string>
|
||||
<string name="autofill_auto_search_title">Pesquisa automática</string>
|
||||
<string name="settings_database_force_changing_master_key_summary">Forçar alteração da chave mestra (em dias)</string>
|
||||
<string name="command_execution">A executar o comando…</string>
|
||||
<string name="otp_algorithm">Algorítimo</string>
|
||||
@@ -417,7 +415,6 @@
|
||||
<string name="content_description_keyboard_close_fields">Fechar campos</string>
|
||||
<string name="biometric">Biométrico</string>
|
||||
<string name="error_create_database">Não foi possível criar o ficheiro da base de dados.</string>
|
||||
<string name="keyboard_search_share_summary">Ao partilhar um URL com o KeePassDX, filtrar as entradas usando esse domínio de URL</string>
|
||||
<string name="error_otp_counter">O contador tem de estar entre %1$d e %2$d.</string>
|
||||
<string name="otp_period">Período (segundos)</string>
|
||||
<string name="device_keyboard_setting_title">Configurações do teclado do dispositivo</string>
|
||||
@@ -441,7 +438,6 @@
|
||||
<string name="hide_expired_entries_summary">As entradas expiradas não são mostradas</string>
|
||||
<string name="menu_master_key_settings">Configurações da chave mestra</string>
|
||||
<string name="entry_setup_otp">Configurar palavra-passe de uso único</string>
|
||||
<string name="keyboard_search_share_title">Procurar informação partilhada</string>
|
||||
<string name="menu_empty_recycle_bin">Esvaziar caixote da reciclagem</string>
|
||||
<string name="settings_database_force_changing_master_key_next_time_summary">Forçar alteração da chave mestra na próxima vez (uma vez)</string>
|
||||
<string name="contains_duplicate_uuid_procedure">Resolver o problema gerando novas UUIDs para os duplicados para continuar\?</string>
|
||||
|
||||
@@ -229,10 +229,6 @@
|
||||
<string name="subdomain_search_title">Pesquisa de subdomínios</string>
|
||||
<string name="error_string_type">Este texto não corresponde ao item solicitado.</string>
|
||||
<string name="content_description_add_item">Adicionar item</string>
|
||||
<string name="keyboard_search_share_summary">Ao partilhar um URL com o KeePassDX, filtrar as entradas usando esse domínio de URL</string>
|
||||
<string name="keyboard_search_share_title">Procurar informação partilhada</string>
|
||||
<string name="autofill_auto_search_summary">Sugerir resultados de pesquisa automaticamente do domínio da web ou do ID da aplicação</string>
|
||||
<string name="autofill_auto_search_title">Pesquisa automática</string>
|
||||
<string name="lock_database_show_button_summary">Mostrar o botão de bloqeuar na interface do utilizador</string>
|
||||
<string name="lock_database_show_button_title">Mostrar botão de bloquear</string>
|
||||
<string name="autofill_preference_title">Configurações de preenchimento automático</string>
|
||||
@@ -497,7 +493,7 @@
|
||||
<string name="autofill_read_only_save">Não é possível guardar dados numa base de dados aberta apenas com permissão de leitura.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Pedir para guardar dados quando terminar de preencher um formulário</string>
|
||||
<string name="autofill_ask_to_save_data_title">Pedir para guardar dados</string>
|
||||
<string name="autofill_save_search_info_summary">Tentar guardar as informações de pesquisas ao fazer uma seleção de entrada manual</string>
|
||||
<string name="autofill_save_search_info_summary">Tentar guardar as informações de pesquisas ao fazer uma seleção de entrada manual para facilitar utilizações posteriores</string>
|
||||
<string name="autofill_save_search_info_title">Guardar informações de pesquisas</string>
|
||||
<string name="autofill_manual_selection_summary">Mostrar opção para permitir que o utilizador selecione a entrada da base de dados</string>
|
||||
<string name="autofill_manual_selection_title">Seleção manual</string>
|
||||
@@ -512,7 +508,7 @@
|
||||
<string name="custom_fields">Campos personalizados</string>
|
||||
<string name="keyboard_previous_lock_summary">Mudar automaticamente para o teclado anterior após bloquear a base de dados</string>
|
||||
<string name="keyboard_previous_lock_title">Bloquear base de dados</string>
|
||||
<string name="keyboard_save_search_info_summary">Depois de partilhar um URL com o KeePassDX, quando uma entrada for selecionada, memorizar essa entrada para utilizações posteriores</string>
|
||||
<string name="keyboard_save_search_info_summary">Tentar guardar informação partilhada ao fazer uma seleção manual de entradas para uma utilização futura mais fácil</string>
|
||||
<string name="keyboard_save_search_info_title">Guardar informação partilhada</string>
|
||||
<string name="templates">Modelos</string>
|
||||
<string name="notification">Notificação</string>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
--><resources>
|
||||
<string name="feedback">Отзыв</string>
|
||||
<string name="homepage">Сайт</string>
|
||||
<string name="about_description">Android-версия менеджера паролей KeePass</string>
|
||||
<string name="about_description">Android–версия менеджера паролей KeePass</string>
|
||||
<string name="accept">Принять</string>
|
||||
<string name="add_entry">Новая запись</string>
|
||||
<string name="add_group">Новая группа</string>
|
||||
@@ -44,13 +44,13 @@
|
||||
<string name="digits">Цифры</string>
|
||||
<string name="html_about_licence">KeePassDX © %1$d Kunzisoft — это программное обеспечение <strong>с открытым исходным кодом</strong> и <strong>без рекламы</strong>.
|
||||
\nРаспространяется под лицензией <strong>GPLv3</strong> без каких-либо гарантий.</string>
|
||||
<string name="select_database_file">Открыть существующую базу</string>
|
||||
<string name="select_database_file">Открыть базу паролей</string>
|
||||
<string name="entry_accessed">Доступ</string>
|
||||
<string name="entry_cancel">Отмена</string>
|
||||
<string name="entry_cancel">Назад</string>
|
||||
<string name="entry_notes">Заметки</string>
|
||||
<string name="entry_confpassword">Подтверждение пароля</string>
|
||||
<string name="entry_created">Создано</string>
|
||||
<string name="entry_expires">Срок действия</string>
|
||||
<string name="entry_expires">Окончание</string>
|
||||
<string name="entry_keyfile">Файл ключа</string>
|
||||
<string name="entry_modified">Изменено</string>
|
||||
<string name="entry_not_found">Данные записи не найдены.</string>
|
||||
@@ -207,7 +207,7 @@
|
||||
<string name="file_name">Имя файла</string>
|
||||
<string name="path">Путь</string>
|
||||
<string name="assign_master_key">Установить главный пароль</string>
|
||||
<string name="create_keepass_file">Создать новую базу</string>
|
||||
<string name="create_keepass_file">Создать базу паролей</string>
|
||||
<string name="recycle_bin_title">Использовать \"корзину\"</string>
|
||||
<string name="recycle_bin_summary">Перемещать группу или запись в \"корзину\" вместо удаления</string>
|
||||
<string name="monospace_font_fields_enable_title">Особый шрифт полей</string>
|
||||
@@ -266,11 +266,11 @@
|
||||
<string name="education_donation_title">Участвуйте</string>
|
||||
<string name="education_donation_summary">Примите участие в проекте для повышения стабильности, безопасности и добавления новых возможностей.</string>
|
||||
<string name="html_text_ad_free">В отличие от многих других приложений управления паролями, здесь <strong>нет рекламы</strong>, и оно <strong>свободно от лицензирования</strong>. Приложение не собирает ваши личные данные на своих серверах независимо от версии, которую вы используете.</string>
|
||||
<string name="html_text_buy_pro">Купив Pro-версию, у вас появится доступ к данным <strong>визуальным стилям</strong>, а также вы внесёте вклад в <strong>реализацию общественных проектов</strong>.</string>
|
||||
<string name="html_text_buy_pro">Купив Pro–версию, у вас появится доступ к данным <strong>визуальным стилям</strong>, а также вы внесёте вклад в <strong>реализацию общественных проектов</strong>.</string>
|
||||
<string name="html_text_feature_generosity">Эти <strong>визуальные стили</strong> доступны благодаря вашей щедрости.</string>
|
||||
<string name="html_text_donation">Для того, чтобы сохранить нашу независимость и быть всегда активными, мы рассчитываем на вашу <strong>поддержку</strong>.</string>
|
||||
<string name="html_text_dev_feature">Эта функция находится <strong>в разработке</strong> и требует вашего <strong>участия</strong>, чтобы стать доступной в ближайшее время.</string>
|
||||
<string name="html_text_dev_feature_buy_pro">Покупая <strong>Pro</strong>-версию,</string>
|
||||
<string name="html_text_dev_feature_buy_pro">Покупая <strong>Pro</strong>–версию,</string>
|
||||
<string name="html_text_dev_feature_contibute"><strong>Участвуя в проекте</strong>,</string>
|
||||
<string name="html_text_dev_feature_encourage">вы поощряете разработчиков добавлять <strong>новые возможности</strong> и <strong>исправлять ошибки</strong> в соответствии с вашими замечаниями.</string>
|
||||
<string name="html_text_dev_feature_thanks">Большое спасибо за поддержку.</string>
|
||||
@@ -301,7 +301,7 @@
|
||||
<string name="keyboard_keys_category">Кнопки</string>
|
||||
<string name="keyboard_key_vibrate_title">Вибрация при нажатии</string>
|
||||
<string name="keyboard_key_sound_title">Звук при нажатии</string>
|
||||
<string name="do_not_kill_app">Не убивайте приложение…</string>
|
||||
<string name="do_not_kill_app">Не закрывайте приложение…</string>
|
||||
<string name="lock_database_back_root_title">Блокировка нажатием \"Назад\"</string>
|
||||
<string name="lock_database_back_root_summary">Блокировка базы нажатием кнопки \"Назад\" на начальном экране</string>
|
||||
<string name="clear_clipboard_notification_title">Очищать при закрытии</string>
|
||||
@@ -422,21 +422,17 @@
|
||||
<string name="hide_broken_locations_summary">Не показывать неработающие ссылки в списке последних открытых баз</string>
|
||||
<string name="warning_database_read_only">Необходимо разрешение на запись в файл для сохранения изменений базы</string>
|
||||
<string name="validate">Проверить</string>
|
||||
<string name="discard_changes">Забыть изменения\?</string>
|
||||
<string name="discard">Забыть</string>
|
||||
<string name="discard_changes">Сохранить изменения\?</string>
|
||||
<string name="discard">Не сохранять</string>
|
||||
<string name="entry_add_attachment">Добавить вложение</string>
|
||||
<string name="error_create_database">Невозможно создать файл базы.</string>
|
||||
<string name="education_setup_OTP_title">Настройка OTP</string>
|
||||
<string name="education_setup_OTP_summary">Настройте управление одноразовыми паролями (HOTP / TOTP) для создания токена, запрашиваемого при двухфакторной аутентификации (2FA).</string>
|
||||
<string name="autofill_auto_search_summary">Автоматически предлагать результаты поиска для домена или идентификатора приложения</string>
|
||||
<string name="lock_database_show_button_summary">Использовать кнопку блокировки в интерфейсе</string>
|
||||
<string name="lock_database_show_button_title">Показывать кнопку блокировки</string>
|
||||
<string name="error_label_exists">Такая метка уже существует.</string>
|
||||
<string name="warning_database_link_revoked">Доступ к файлу отменён файловым менеджером</string>
|
||||
<string name="autofill_auto_search_title">Автопоиск</string>
|
||||
<string name="autofill_preference_title">Настройки автозаполнения</string>
|
||||
<string name="keyboard_search_share_summary">При отправке URL в KeePassDX отфильтровать записи по домену этого URL</string>
|
||||
<string name="keyboard_search_share_title">Поиск доступной информации</string>
|
||||
<string name="subdomain_search_title">Поиск поддоменов</string>
|
||||
<string name="subdomain_search_summary">Выполнять поиск доменов с некоторыми поддоменами</string>
|
||||
<string name="autofill_block_restart">Перезапустите приложение, содержащее форму, чтобы активировать отключение.</string>
|
||||
@@ -470,9 +466,9 @@
|
||||
<string name="warning_remove_unlinked_attachment">Удаление несвязанных данных может уменьшить размер базы, но также может удалить данные, используемые для плагинов KeePass.</string>
|
||||
<string name="content_description_credentials_information">Информация об учётных данных</string>
|
||||
<string name="configure_biometric">Отсутствует зарегистрированный биометрический ключ или учётные данные устройства.</string>
|
||||
<string name="autofill_save_search_info_summary">Сохранять поисковую информацию при ручном выборе записи</string>
|
||||
<string name="autofill_save_search_info_summary">Сохранять поисковую информацию при ручном выборе записи для дальнейшего использования</string>
|
||||
<string name="autofill_save_search_info_title">Сохранять данные поиска</string>
|
||||
<string name="keyboard_save_search_info_summary">При отправке URL в KeePassDX, если выбрана запись, постараться запомнить её для дальнейшего использования</string>
|
||||
<string name="keyboard_save_search_info_summary">При ручном выборе записи пытаться сохранить информацию для дальнейшего использования</string>
|
||||
<string name="keyboard_save_search_info_title">Сохранять общие данные</string>
|
||||
<string name="keyboard_previous_lock_title">Блокировка базы</string>
|
||||
<string name="keyboard_previous_lock_summary">Автоматически переключаться на предыдущую клавиатуру после блокировки базы</string>
|
||||
@@ -583,10 +579,10 @@
|
||||
<string name="cryptocurrency">Криптовалютный кошелёк</string>
|
||||
<string name="type">Тип</string>
|
||||
<string name="ssid">SSID</string>
|
||||
<string name="wireless">Wi-Fi</string>
|
||||
<string name="wireless">Wi–Fi</string>
|
||||
<string name="email_address">Адрес эл. почты</string>
|
||||
<string name="name">Имя</string>
|
||||
<string name="personal_identification_number">PIN-код</string>
|
||||
<string name="personal_identification_number">PIN–код</string>
|
||||
<string name="card_verification_value">CVV</string>
|
||||
<string name="number">Номер</string>
|
||||
<string name="holder">Владелец</string>
|
||||
@@ -617,7 +613,7 @@
|
||||
<string name="searchable">Доступно для поиска</string>
|
||||
<string name="inherited">Наследовать</string>
|
||||
<string name="case_sensitive">С учётом регистра</string>
|
||||
<string name="menu_save_copy_to">Сохранить копию в…</string>
|
||||
<string name="menu_save_copy_to">Сохранить как…</string>
|
||||
<string name="menu_merge_from">Объединить с…</string>
|
||||
<string name="search_filters">Фильтры поиска</string>
|
||||
<string name="regex">Регулярное выражение</string>
|
||||
@@ -633,15 +629,15 @@
|
||||
\nПроверьте совместимость и безопасность хранилища ключей через производителя устройства и разработчика используемого ПЗУ.</string>
|
||||
<string name="passphrase">Кодовая фраза</string>
|
||||
<string name="colorize_password_title">Раскрашивать пароли</string>
|
||||
<string name="colorize_password_summary">Разделять цветом символы пароля по типу</string>
|
||||
<string name="colorize_password_summary">Разделять символы пароля цветом по типу</string>
|
||||
<string name="keyboard_previous_search_title">Экран поиска</string>
|
||||
<string name="entropy">Энтропия: %1$s бит</string>
|
||||
<string name="entropy_high">Энтропия: высокая</string>
|
||||
<string name="word_separator">Разделитель</string>
|
||||
<string name="character_count">Количество символов: %1$d</string>
|
||||
<string name="ignore_chars_filter">Игнорировать символы</string>
|
||||
<string name="ignore_chars_filter">Исключить символы</string>
|
||||
<string name="title_case">С Заглавных</string>
|
||||
<string name="at_least_one_char">Не менее, чем по одному символу из каждого</string>
|
||||
<string name="at_least_one_char">Обязательно использовать символы из выбранных наборов</string>
|
||||
<string name="consider_chars_filter">Включить символы</string>
|
||||
<string name="content_description_passphrase_word_count">Количество слов в кодовой фразе</string>
|
||||
<string name="keyboard_previous_search_summary">Автоматически переключаться на предыдущую клавиатуру на экране поиска</string>
|
||||
|
||||
@@ -415,8 +415,6 @@
|
||||
<string name="download_attachment">Ladda ner %1$s</string>
|
||||
<string name="education_setup_OTP_summary">Inställning av OTP (One-Time Password (Engångslösenord))-hantering av (HOTP/TOTP) för att skapa tecken begärda av Tvåstegs autentisering (2FA).</string>
|
||||
<string name="education_setup_OTP_title">Ställ in OTP</string>
|
||||
<string name="autofill_auto_search_summary">Föreslå automatiskt sökresultt från webbdomänen eller appens Id</string>
|
||||
<string name="autofill_auto_search_title">Automatisk sökning</string>
|
||||
<string name="keyboard_auto_go_action_summary">\"Goknappens\" åtgärd när en \"Fältknapp\" trycks ner</string>
|
||||
<string name="keyboard_auto_go_action_title">Automatisk knappåtgärd</string>
|
||||
<string name="lock_database_show_button_summary">Visa låsknappen i gränssnittet</string>
|
||||
|
||||
@@ -422,15 +422,11 @@
|
||||
<string name="discard">Vazgeç</string>
|
||||
<string name="discard_changes">Değişikliklerden vazgeç\?</string>
|
||||
<string name="validate">Doğrula</string>
|
||||
<string name="autofill_auto_search_summary">Web etki alanından veya uygulama kimliğinden otomatik olarak arama sonuçları öner</string>
|
||||
<string name="autofill_auto_search_title">Otomatik arama</string>
|
||||
<string name="lock_database_show_button_summary">Kilit düğmesini kullanıcı arayüzünde görüntüler</string>
|
||||
<string name="lock_database_show_button_title">Kilit düğmesini göster</string>
|
||||
<string name="autofill_preference_title">Otomatik doldurma ayarları</string>
|
||||
<string name="warning_database_link_revoked">Dosyaya erişim dosya yöneticisi tarafından iptal edildi</string>
|
||||
<string name="error_label_exists">Bu etiket zaten var.</string>
|
||||
<string name="keyboard_search_share_summary">KeePassDX ile bilgi paylaşırken, Magickeyboard\'a iletmek için bu bilgiyi kullanarak girdileri filtreleyin</string>
|
||||
<string name="keyboard_search_share_title">Paylaşılan bilgileri seç</string>
|
||||
<string name="filter">Filtre</string>
|
||||
<string name="autofill_block_restart">Engellemeyi etkinleştirmek için formu içeren uygulamayı yeniden başlatın.</string>
|
||||
<string name="autofill_block">Otomatik doldurmayı engelle</string>
|
||||
@@ -468,13 +464,13 @@
|
||||
<string name="autofill_read_only_save">Salt okunur olarak açılan bir veri tabanı için veri kaydına izin verilmiyor.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Form doldurma işlemi tamamlandığında verileri kaydetmek için sor</string>
|
||||
<string name="autofill_ask_to_save_data_title">Verileri kaydetmek için sor</string>
|
||||
<string name="autofill_save_search_info_summary">Elle girdi seçimi yaparken arama bilgilerini kaydetmeyi dene</string>
|
||||
<string name="autofill_save_search_info_summary">İleride daha kolay kullanım için elle girdi seçimi yaparken arama bilgilerini kaydetmeyi dene</string>
|
||||
<string name="autofill_save_search_info_title">Arama bilgilerini kaydet</string>
|
||||
<string name="autofill_close_database_summary">Otomatik doldurma seçiminden sonra veri tabanını kapat</string>
|
||||
<string name="autofill_close_database_title">Veri tabanını kapat</string>
|
||||
<string name="keyboard_previous_lock_summary">Veri tabanını kilitledikten sonra otomatik olarak önceki klavyeye dön</string>
|
||||
<string name="keyboard_previous_lock_title">Veri tabanını kilitle</string>
|
||||
<string name="keyboard_save_search_info_summary">KeePassDX ile bilgi paylaştıktan sonra, bir girdi seçildiğinde, gelecekte daha kolay kullanmak için bilgileri girdiye kaydetmeyi deneyin</string>
|
||||
<string name="keyboard_save_search_info_summary">İleride daha kolay kullanım için elle girdi seçimi yaparken arama bilgilerini kaydetmeyi dene</string>
|
||||
<string name="keyboard_save_search_info_title">Paylaşılan bilgileri kaydet</string>
|
||||
<string name="notification">Bildirim</string>
|
||||
<string name="biometric_security_update_required">Biyometrik güvenlik güncellemesi gerekli.</string>
|
||||
|
||||
@@ -320,8 +320,6 @@
|
||||
<string name="delete_entered_password_title">Видаляти пароль</string>
|
||||
<string name="allow_no_password_summary">Дозволяє натискання «Відкрити», якщо не вибрано головний пароль</string>
|
||||
<string name="allow_no_password_title">Дозволити без головного ключа</string>
|
||||
<string name="autofill_auto_search_summary">Автоматично пропонувати результати пошуку з вебдомену або ID застосунку</string>
|
||||
<string name="autofill_auto_search_title">Автоматичний пошук</string>
|
||||
<string name="keyboard_key_sound_title">Звук під час натискання</string>
|
||||
<string name="keyboard_key_vibrate_title">Вібрація під час натискання</string>
|
||||
<string name="keyboard_auto_go_action_summary">Дія переходу після натискання кнопки заповнення поля</string>
|
||||
@@ -435,8 +433,6 @@
|
||||
<string name="parallelism">Паралельність</string>
|
||||
<string name="memory_usage">Використання пам\'яті</string>
|
||||
<string name="encryption_explanation">Алгоритм шифрування бази даних, застосований для всіх даних.</string>
|
||||
<string name="keyboard_search_share_summary">Коли надано спільний доступ до URL-адреси у KeePassDX, фільтрувати записи, що застосовують домен з цією URL-адресою</string>
|
||||
<string name="keyboard_search_share_title">Пошук доступних даних</string>
|
||||
<string name="autofill_block_restart">Перезапустіть застосунок, який містить форму, для застосування блокування.</string>
|
||||
<string name="autofill_block">Блокування автозаповнення</string>
|
||||
<string name="autofill_web_domain_blocklist_summary">Вебдомени для яких вимкнено автозаповнення</string>
|
||||
@@ -474,13 +470,13 @@
|
||||
<string name="autofill_read_only_save">Збереження даних заборонено для бази даних, відкритої лише для читання.</string>
|
||||
<string name="autofill_ask_to_save_data_summary">Запитувати зберігати дані після заповнення форми</string>
|
||||
<string name="autofill_ask_to_save_data_title">Запит збереження даних</string>
|
||||
<string name="autofill_save_search_info_summary">Намагатися зберегти подробиці пошуку під час вибору запису власноруч</string>
|
||||
<string name="autofill_save_search_info_summary">Намагатися зберегти подробиці пошуку під час вибору запису вручну для простішого користування в подальшому</string>
|
||||
<string name="autofill_save_search_info_title">Збереження відомостей пошуку</string>
|
||||
<string name="autofill_close_database_summary">Закривати базу даних після вибору автозаповнення</string>
|
||||
<string name="autofill_close_database_title">Закриття бази даних</string>
|
||||
<string name="keyboard_previous_lock_summary">Автоматичне повернення до попередньої клавіатури після блокування бази даних</string>
|
||||
<string name="keyboard_previous_lock_title">Блокування бази даних</string>
|
||||
<string name="keyboard_save_search_info_summary">Після надання спільного доступу до URL-адреси KeePassDX, коли запис вибрано, пробувати запам\'ятати цей запис для подальшого застосування</string>
|
||||
<string name="keyboard_save_search_info_summary">Пробувати зберегти спільну інформацію під час вибору запису вручну для простішого користування в подальшому</string>
|
||||
<string name="keyboard_save_search_info_title">Збереження спільних відомостей</string>
|
||||
<string name="notification">Сповіщення</string>
|
||||
<string name="biometric_security_update_required">Необхідно оновити біометричний захист.</string>
|
||||
|
||||
@@ -19,10 +19,10 @@
|
||||
-->
|
||||
<resources>
|
||||
<!-- For setting encapsulation -->
|
||||
<style name="KeepassDXStyle.Light" parent="KeepassDXStyle.Light.v21" >
|
||||
<style name="KeepassDXStyle.Light.v14" parent="KeepassDXStyle.Light.Base" >
|
||||
<item name="preferenceTheme">@style/PreferenceThemeOverlay.v14</item>
|
||||
</style>
|
||||
<style name="KeepassDXStyle.Night" parent="KeepassDXStyle.Night.v21" >
|
||||
<style name="KeepassDXStyle.Night.v14" parent="KeepassDXStyle.Night.Base" >
|
||||
<item name="preferenceTheme">@style/PreferenceThemeOverlay.v14</item>
|
||||
</style>
|
||||
</resources>
|
||||
@@ -23,18 +23,18 @@
|
||||
<item name="android:statusBarColor">@color/grey_dark</item>
|
||||
<item name="android:navigationBarColor">@color/grey_dark</item>
|
||||
</style>
|
||||
<style name="KeepassDXStyle.Light" parent="KeepassDXStyle.Light.v21" >
|
||||
<style name="KeepassDXStyle.Light.v21" parent="KeepassDXStyle.Light.v14" >
|
||||
<item name="preferenceTheme">@style/KeepassDXStyle.Preference.v21</item>
|
||||
<item name="android:statusBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:navigationBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:timePickerDialogTheme">@style/KeepassDXStyle.Light.DateTime.Dialog</item>
|
||||
<item name="android:datePickerDialogTheme">@style/KeepassDXStyle.Light.DateTime.Dialog</item>
|
||||
</style>
|
||||
<style name="KeepassDXStyle.Light.WhiteBar.v23" parent="KeepassDXStyle.Light" >
|
||||
<style name="KeepassDXStyle.Light.WhiteBar.v21" parent="KeepassDXStyle.Light.Base" >
|
||||
<item name="android:statusBarColor">@color/grey_darker</item>
|
||||
<item name="android:navigationBarColor">@color/grey_darker</item>
|
||||
</style>
|
||||
<style name="KeepassDXStyle.Night" parent="KeepassDXStyle.Night.v21" >
|
||||
<style name="KeepassDXStyle.Night.v21" parent="KeepassDXStyle.Night.v14" >
|
||||
<item name="preferenceTheme">@style/KeepassDXStyle.Preference.v21</item>
|
||||
<item name="android:statusBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:navigationBarColor">?attr/colorPrimaryDark</item>
|
||||
|
||||
@@ -21,14 +21,12 @@
|
||||
<style name="KeepassDXStyle.Blue" parent="KeepassDXStyle.Blue.v21" >
|
||||
<item name="preferenceTheme">@style/KeepassDXStyle.Preference.v21</item>
|
||||
<item name="android:statusBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:navigationBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:timePickerDialogTheme">@style/KeepassDXStyle.Blue.DateTime.Dialog</item>
|
||||
<item name="android:datePickerDialogTheme">@style/KeepassDXStyle.Blue.DateTime.Dialog</item>
|
||||
</style>
|
||||
<style name="KeepassDXStyle.Blue.Night" parent="KeepassDXStyle.Blue.Night.v21" >
|
||||
<item name="preferenceTheme">@style/KeepassDXStyle.Preference.v21</item>
|
||||
<item name="android:statusBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:navigationBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:timePickerDialogTheme">@style/KeepassDXStyle.Blue.Night.DateTime.Dialog</item>
|
||||
<item name="android:datePickerDialogTheme">@style/KeepassDXStyle.Blue.Night.DateTime.Dialog</item>
|
||||
</style>
|
||||
|
||||
@@ -21,14 +21,12 @@
|
||||
<style name="KeepassDXStyle.Red" parent="KeepassDXStyle.Red.v21" >
|
||||
<item name="preferenceTheme">@style/KeepassDXStyle.Preference.v21</item>
|
||||
<item name="android:statusBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:navigationBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:timePickerDialogTheme">@style/KeepassDXStyle.Red.DateTime.Dialog</item>
|
||||
<item name="android:datePickerDialogTheme">@style/KeepassDXStyle.Red.DateTime.Dialog</item>
|
||||
</style>
|
||||
<style name="KeepassDXStyle.Red.Night" parent="KeepassDXStyle.Red.Night.v21" >
|
||||
<item name="preferenceTheme">@style/KeepassDXStyle.Preference.v21</item>
|
||||
<item name="android:statusBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:navigationBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:timePickerDialogTheme">@style/KeepassDXStyle.Red.Night.DateTime.Dialog</item>
|
||||
<item name="android:datePickerDialogTheme">@style/KeepassDXStyle.Red.Night.DateTime.Dialog</item>
|
||||
</style>
|
||||
|
||||
@@ -18,7 +18,12 @@
|
||||
along with KeePassDX. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<resources>
|
||||
<style name="KeepassDXStyle.Light.WhiteBar.v23" parent="KeepassDXStyle.Light" >
|
||||
<style name="KeepassDXStyle.Light.v23" parent="KeepassDXStyle.Light.v21" >
|
||||
<item name="android:statusBarColor">?attr/colorPrimaryDark</item>
|
||||
<item name="android:windowLightStatusBar">false</item>
|
||||
</style>
|
||||
<style name="KeepassDXStyle.Light.WhiteBar.v23" parent="KeepassDXStyle.Light.WhiteBar.v21" >
|
||||
<item name="android:statusBarColor">@color/white</item>
|
||||
<item name="android:windowLightStatusBar">true</item>
|
||||
</style>
|
||||
|
||||
|
||||
29
app/src/main/res/values-v27/styles.xml
Normal file
29
app/src/main/res/values-v27/styles.xml
Normal file
@@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
Copyright 2021 Jeremy Jamet / Kunzisoft.
|
||||
|
||||
This file is part of KeePassDX.
|
||||
|
||||
KeePassDX is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
KeePassDX is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with KeePassDX. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<resources>
|
||||
<style name="KeepassDXStyle.Light.v27" parent="KeepassDXStyle.Light.v23" >
|
||||
<item name="android:navigationBarColor">@color/white_dark</item>
|
||||
<item name="android:windowLightNavigationBar">true</item>
|
||||
</style>
|
||||
<style name="KeepassDXStyle.Night.v27" parent="KeepassDXStyle.Night.v23" >
|
||||
<item name="android:navigationBarColor">@color/grey_dark</item>
|
||||
<item name="android:windowLightNavigationBar">false</item>
|
||||
</style>
|
||||
</resources>
|
||||
@@ -24,9 +24,9 @@
|
||||
<string name="add_entry">添加条目</string>
|
||||
<string name="add_group">添加群组</string>
|
||||
<string name="encryption_algorithm">加密算法</string>
|
||||
<string name="app_timeout">延时</string>
|
||||
<string name="app_timeout">超时</string>
|
||||
<string name="app_timeout_summary">在锁定数据库前处于非活动状态的时长</string>
|
||||
<string name="application">应用</string>
|
||||
<string name="application">应用程序</string>
|
||||
<string name="menu_app_settings">应用设置</string>
|
||||
<string name="brackets">括号</string>
|
||||
<string name="file_manager_install_description">需要一款接受意图操作 ACTION_CREATE_DOCUMENT 和 ACTION_OPEN_DOCUMENT 的文件管理器来创建、打开和保存数据库文件。</string>
|
||||
@@ -34,13 +34,13 @@
|
||||
<string name="clipboard_timeout">剪贴板清空延时</string>
|
||||
<string name="clipboard_timeout_summary">剪贴板保存时间 (若您的设备支持该功能)</string>
|
||||
<string name="select_to_copy">选择%1$s以复制到剪贴板</string>
|
||||
<string name="retrieving_db_key">获取数据库密钥中……</string>
|
||||
<string name="retrieving_db_key">读取数据库密钥中……</string>
|
||||
<string name="database">数据库</string>
|
||||
<string name="decrypting_db">正在解密数据库内容…</string>
|
||||
<string name="default_checkbox">设为默认数据库</string>
|
||||
<string name="digits">数字</string>
|
||||
<string name="html_about_licence">KeePassDX © %1$d 是 Kunzisoft 的一个<strong>开源软件</strong>并且<strong>不含广告</strong>。
|
||||
\n它是根据<strong>GPLv3</strong>许可证分发的,您可在遵循GPL 3或者更高版本的协议下重新发布。Kunzisoft对软件的质量和性能等问题不提供任何形式的担保。</string>
|
||||
<string name="html_about_licence">KeePassDX © %1$d 是 Kunzisoft 旗下的一个<strong>不含广告</strong>的<strong>开源软件</strong>。
|
||||
\n它是根据<strong>GPLv3</strong>许可证分发的,您可在遵循GPLv3或者更高版本的协议下重新发布。Kunzisoft对软件的质量和性能等问题不提供任何形式的担保。</string>
|
||||
<string name="select_database_file">打开已有数据库</string>
|
||||
<string name="entry_accessed">访问时间</string>
|
||||
<string name="entry_cancel">取消</string>
|
||||
@@ -65,13 +65,13 @@
|
||||
<string name="error_out_of_memory">因内存不足无法加载数据库。</string>
|
||||
<string name="error_pass_gen_type">必须至少选择一种密码生成类型。</string>
|
||||
<string name="error_pass_match">密码不匹配。</string>
|
||||
<string name="error_rounds_too_large">“变换次数”过多。已设置为2147483648。</string>
|
||||
<string name="error_rounds_too_large">“变换次数”项设置过大。已设置为2147483648。</string>
|
||||
<string name="error_wrong_length">请在“长度”字段输入正整数。</string>
|
||||
<string name="file_browser">文件管理器</string>
|
||||
<string name="generate_password">生成密码</string>
|
||||
<string name="hint_conf_pass">确认密码</string>
|
||||
<string name="hint_generated_password">生成的密码</string>
|
||||
<string name="hint_group_name">群组名</string>
|
||||
<string name="hint_group_name">分组名</string>
|
||||
<string name="hint_keyfile">密钥文件</string>
|
||||
<string name="hint_length">长度</string>
|
||||
<string name="password">密码</string>
|
||||
@@ -79,7 +79,7 @@
|
||||
<string name="invalid_credentials">无法读取您的密码或密钥文件。</string>
|
||||
<string name="invalid_db_sig">无法识别数据库格式。</string>
|
||||
<string name="length">长度</string>
|
||||
<string name="list_size_title">列表项目尺寸</string>
|
||||
<string name="list_size_title">列表项目大小</string>
|
||||
<string name="list_size_summary">列表文字大小</string>
|
||||
<string name="loading_database">正在加载数据库…</string>
|
||||
<string name="lowercase">小写</string>
|
||||
@@ -127,7 +127,7 @@
|
||||
<string name="extended_ASCII">ASCII拓展区字符</string>
|
||||
<string name="allow">允许</string>
|
||||
<string name="clipboard_error_title">剪切板错误</string>
|
||||
<string name="clipboard_error">某些设备不允许应用使用剪贴板。</string>
|
||||
<string name="clipboard_error">某些设备不让应用使用剪贴板。</string>
|
||||
<string name="clipboard_error_clear">无法清空剪切板</string>
|
||||
<string name="style_choose_title">主题</string>
|
||||
<string name="icon_pack_choose_title">图标包</string>
|
||||
@@ -135,7 +135,7 @@
|
||||
<string name="edit_entry">编辑条目</string>
|
||||
<string name="key_derivation_function">密钥推导函数</string>
|
||||
<string name="entry_not_found">找不到条目数据。</string>
|
||||
<string name="error_load_database">无法加载数据库。</string>
|
||||
<string name="error_load_database">无法加载您的数据库。</string>
|
||||
<string name="error_load_database_KDF_memory">无法加载密钥。尝试降低KDF的“内存使用”值。</string>
|
||||
<string name="error_autofill_enable_service">无法启用自动填充服务。</string>
|
||||
<string name="file_not_found_content">找不到文件。请重新打开文件。</string>
|
||||
@@ -143,20 +143,20 @@
|
||||
<string name="keyfile_is_empty">密钥文件为空。</string>
|
||||
<string name="list_entries_show_username_title">显示用户名</string>
|
||||
<string name="list_entries_show_username_summary">在条目列表上显示用户名</string>
|
||||
<string name="menu_form_filling_settings">自动填充</string>
|
||||
<string name="menu_form_filling_settings">表单填充</string>
|
||||
<string name="menu_copy">复制</string>
|
||||
<string name="menu_move">移动</string>
|
||||
<string name="menu_paste">粘贴</string>
|
||||
<string name="menu_cancel">取消</string>
|
||||
<string name="menu_showpass">显示密码</string>
|
||||
<string name="menu_file_selection_read_only">只读</string>
|
||||
<string name="menu_file_selection_read_only">写保护</string>
|
||||
<string name="menu_open_file_read_and_write">可修改</string>
|
||||
<string name="protection">保护</string>
|
||||
<string name="read_only">只读</string>
|
||||
<string name="read_only">写保护</string>
|
||||
<string name="read_only_warning">根据您的文件管理器,KeePassDX 可能不允许在您的存储中写入数据。</string>
|
||||
<string name="show_recent_files_title">最近文件历史</string>
|
||||
<string name="show_recent_files_summary">记住最近使用的文件名</string>
|
||||
<string name="encryption_explanation">加密所有数据时采用的算法。</string>
|
||||
<string name="show_recent_files_title">显示最近打开的文件</string>
|
||||
<string name="show_recent_files_summary">显示最近打开数据库的位置</string>
|
||||
<string name="encryption_explanation">加密数据库所有数据时采用的算法。</string>
|
||||
<string name="kdf_explanation">将迭代主密钥以生成加密数据库所需的密钥,转换方式为随机加盐算法。</string>
|
||||
<string name="memory_usage">内存使用量</string>
|
||||
<string name="memory_usage_explanation">密钥推导算法使用的内存。</string>
|
||||
@@ -318,7 +318,7 @@
|
||||
<string name="content_description_node_children">子节点</string>
|
||||
<string name="content_description_add_node">增加节点</string>
|
||||
<string name="content_description_add_entry">添加条目</string>
|
||||
<string name="content_description_add_group">添加群组</string>
|
||||
<string name="content_description_add_group">添加分组</string>
|
||||
<string name="content_description_file_information">文件信息</string>
|
||||
<string name="content_description_password_checkbox">密码选框</string>
|
||||
<string name="content_description_keyfile_checkbox">密钥文件选框</string>
|
||||
@@ -328,12 +328,12 @@
|
||||
<string name="content_description_password_length">密码长度</string>
|
||||
<string name="entry_add_field">添加字段</string>
|
||||
<string name="content_description_remove_field">删除字段</string>
|
||||
<string name="entry_UUID">UUID</string>
|
||||
<string name="entry_UUID">UUID,通用唯一识别码(Universally Unique Identifier)</string>
|
||||
<string name="error_move_entry_here">你不能将条目移到此处。</string>
|
||||
<string name="error_copy_entry_here">您不能在此处复制条目。</string>
|
||||
<string name="error_copy_entry_here">您不能将条目复制到此处。</string>
|
||||
<string name="list_groups_show_number_entries_title">显示条目数量</string>
|
||||
<string name="list_groups_show_number_entries_summary">显示群组中的条目数</string>
|
||||
<string name="content_description_background">背景</string>
|
||||
<string name="content_description_background">后台</string>
|
||||
<string name="content_description_update_from_list">更新</string>
|
||||
<string name="content_description_keyboard_close_fields">关闭字段</string>
|
||||
<string name="error_create_database_file">无法使用此密码和密钥文件新建数据库。</string>
|
||||
@@ -345,28 +345,28 @@
|
||||
<string name="disable">禁用</string>
|
||||
<string name="master_key">主密钥</string>
|
||||
<string name="security">安全</string>
|
||||
<string name="entry_history">历史</string>
|
||||
<string name="entry_history">修改历史</string>
|
||||
<string name="entry_setup_otp">设置 OTP</string>
|
||||
<string name="otp_type">OTP 类型</string>
|
||||
<string name="otp_secret">密钥</string>
|
||||
<string name="otp_secret">OTP密钥</string>
|
||||
<string name="otp_period">时长(秒)</string>
|
||||
<string name="otp_counter">计数器</string>
|
||||
<string name="otp_digits">数字位数</string>
|
||||
<string name="otp_algorithm">算法</string>
|
||||
<string name="entry_otp">OTP</string>
|
||||
<string name="error_invalid_OTP">错误的一次性密码密钥。</string>
|
||||
<string name="error_invalid_OTP">OTP密钥无效。</string>
|
||||
<string name="error_disallow_no_credentials">至少需要设置一个凭据。</string>
|
||||
<string name="error_copy_group_here">您无法在此处复制群组。</string>
|
||||
<string name="error_copy_group_here">您无法将分组复制到此处。</string>
|
||||
<string name="error_otp_secret_key">密钥必须是BASE32格式。</string>
|
||||
<string name="error_otp_counter">计数器必须在%1$d和%2$d之间。</string>
|
||||
<string name="error_otp_period">时长必须在%1$d秒到%2$d秒之间。</string>
|
||||
<string name="error_otp_digits">令牌必须包括%1$d到%2$d个数字。</string>
|
||||
<string name="error_otp_digits">口令必须包括%1$d到%2$d个数字。</string>
|
||||
<string name="invalid_db_same_uuid">与%1$s的UUID相同的%2$s已经存在。</string>
|
||||
<string name="creating_database">新建数据库…</string>
|
||||
<string name="creating_database">正在新建数据库…</string>
|
||||
<string name="menu_security_settings">安全设置</string>
|
||||
<string name="menu_master_key_settings">主密钥设置</string>
|
||||
<string name="contains_duplicate_uuid">该数据库包含重复的 UUID。</string>
|
||||
<string name="contains_duplicate_uuid_procedure">通过为重复项生成新的 UUID 以解决问题?</string>
|
||||
<string name="contains_duplicate_uuid_procedure">是否通过为重复项生成新的 UUID 以解决问题?</string>
|
||||
<string name="database_opened">数据库开启</string>
|
||||
<string name="clipboard_explanation_summary">使用设备的剪贴板来复制输入字段</string>
|
||||
<string name="advanced_unlock_explanation_summary">使用高级解锁以便快速解锁数据库</string>
|
||||
@@ -428,15 +428,11 @@
|
||||
<string name="entry_add_attachment">添加附件</string>
|
||||
<string name="discard_changes">放弃更改?</string>
|
||||
<string name="validate">验证</string>
|
||||
<string name="autofill_auto_search_summary">自动建议匹配的网址域名或应用 ID 的搜索结果</string>
|
||||
<string name="autofill_auto_search_title">自动搜索</string>
|
||||
<string name="lock_database_show_button_summary">在用户界面中显示锁定数据库按钮</string>
|
||||
<string name="lock_database_show_button_title">显示锁定数据库按钮</string>
|
||||
<string name="autofill_preference_title">自动填充设置</string>
|
||||
<string name="warning_database_link_revoked">访问文件管理器撤消访问权限的文件</string>
|
||||
<string name="warning_database_link_revoked">访问被文件管理器撤消访问权限的文件</string>
|
||||
<string name="error_label_exists">该标签已经存在。</string>
|
||||
<string name="keyboard_search_share_summary">将 URL 共享给 KeePassDX 时,使用该 URL 域过滤条目</string>
|
||||
<string name="keyboard_search_share_title">搜索分享的信息</string>
|
||||
<string name="autofill_block_restart">重新启动包含该表单的应用以激活拦截。</string>
|
||||
<string name="autofill_block">阻止自动填充</string>
|
||||
<string name="autofill_web_domain_blocklist_summary">禁止在下列域名中自动填充凭证</string>
|
||||
@@ -474,13 +470,13 @@
|
||||
<string name="autofill_read_only_save">以只读方式打开的数据库不允许保存数据。</string>
|
||||
<string name="autofill_ask_to_save_data_summary">填写完表单后,询问是否保存数据</string>
|
||||
<string name="autofill_ask_to_save_data_title">询问是否保存数据</string>
|
||||
<string name="autofill_save_search_info_summary">手动选择条目时,尝试保存搜索信息</string>
|
||||
<string name="autofill_save_search_info_summary">手动选择条目时尝试保存搜索信息,以便将来使用</string>
|
||||
<string name="autofill_save_search_info_title">保存搜索信息</string>
|
||||
<string name="autofill_close_database_summary">在进行自动填充选择后关闭数据库</string>
|
||||
<string name="autofill_close_database_title">关闭数据库</string>
|
||||
<string name="keyboard_previous_lock_summary">锁定数据库后自动切换回上一个键盘</string>
|
||||
<string name="keyboard_previous_lock_title">锁定数据库</string>
|
||||
<string name="keyboard_save_search_info_summary">将URL共享到KeePassDX后,选中一个条目时,请尝试记住那个条目以备日后使用</string>
|
||||
<string name="keyboard_save_search_info_summary">手动输入条目时尝试保存共享信息,以便将来使用</string>
|
||||
<string name="keyboard_save_search_info_title">保存分享的信息</string>
|
||||
<string name="notification">通知</string>
|
||||
<string name="biometric_security_update_required">需要生物识别安全更新。</string>
|
||||
@@ -575,7 +571,7 @@
|
||||
<string name="seed">种子</string>
|
||||
<string name="private_key">私钥</string>
|
||||
<string name="public_key">公钥</string>
|
||||
<string name="token">令牌</string>
|
||||
<string name="token">口令</string>
|
||||
<string name="cryptocurrency">加密货币钱包</string>
|
||||
<string name="type">类型</string>
|
||||
<string name="ssid">SSID</string>
|
||||
@@ -585,7 +581,7 @@
|
||||
<string name="date_of_issue">发行日期</string>
|
||||
<string name="place_of_issue">发行地</string>
|
||||
<string name="name">姓名</string>
|
||||
<string name="id_card">ID 卡</string>
|
||||
<string name="id_card">身份证</string>
|
||||
<string name="personal_identification_number">PIN</string>
|
||||
<string name="card_verification_value">CVV</string>
|
||||
<string name="number">卡号</string>
|
||||
@@ -615,7 +611,7 @@
|
||||
<string name="searchable">可搜索</string>
|
||||
<string name="auto_type_sequence">自动输入序列</string>
|
||||
<string name="custom_data">自定义数据</string>
|
||||
<string name="current_group">当前组</string>
|
||||
<string name="current_group">当前分组</string>
|
||||
<string name="regex">正则表达式</string>
|
||||
<string name="menu_merge_from">合并自…</string>
|
||||
<string name="menu_save_copy_to">保存副本到…</string>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user