diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index c6e0331b..42d66cb8 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -4,7 +4,7 @@
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 097b1918..c9deb9dc 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -11,7 +11,7 @@
-
+
diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml
new file mode 100644
index 00000000..797acea5
--- /dev/null
+++ b/.idea/runConfigurations.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/.localazy b/app/.localazy
new file mode 100644
index 00000000..8ea95dc3
--- /dev/null
+++ b/app/.localazy
@@ -0,0 +1,7 @@
+[packages]
+com.yogeshpaliyal.keypass = raa
+
+[localazy]
+allStringsUploaded = true
+showWelcomeMessage = false
+
diff --git a/app/build.gradle b/app/build.gradle
index 00878c7b..859d9196 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -4,6 +4,8 @@ plugins {
id 'kotlin-kapt'
id 'androidx.navigation.safeargs.kotlin'
id("dagger.hilt.android.plugin")
+ id('com.localazy.gradle')
+
}
@@ -72,6 +74,22 @@ android {
}
+localazy {
+ readKey "a8585039528314004437-93bb583478538d638f0264fde335214df735ed022d2e0402513997eccc9ad9de"
+ writeKey "a8585039528314004437-d2f4d2808ebe867cf24aceaaea58be99055fcb39bcac32c74b0e983b147acc5c"
+
+ injection {
+ dontCheckInternetPermission true
+ }
+
+ upload {
+ files {
+ exclude "*/font_certs.xml"
+ }
+ }
+
+}
+
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c4771d3e..5b0b8449 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -11,8 +11,7 @@
android:supportsRtl="true"
android:theme="@style/Theme.KeyPass">
+ android:name=".ui.backup.BackupActivity"/>
diff --git a/app/src/main/java/com/yogeshpaliyal/keypass/ui/auth/AuthenticationActivity.kt b/app/src/main/java/com/yogeshpaliyal/keypass/ui/auth/AuthenticationActivity.kt
index d7c3da91..c1a7620c 100644
--- a/app/src/main/java/com/yogeshpaliyal/keypass/ui/auth/AuthenticationActivity.kt
+++ b/app/src/main/java/com/yogeshpaliyal/keypass/ui/auth/AuthenticationActivity.kt
@@ -56,7 +56,7 @@ class AuthenticationActivity : AppCompatActivity() {
override fun onAuthenticationFailed() {
super.onAuthenticationFailed()
Toast.makeText(
- applicationContext, "Authentication failed",
+ applicationContext, getString(R.string.authentication_failed),
Toast.LENGTH_SHORT
)
.show()
@@ -66,7 +66,7 @@ class AuthenticationActivity : AppCompatActivity() {
promptInfo = BiometricPrompt.PromptInfo.Builder()
.setTitle(getString(R.string.app_name))
- .setSubtitle("Login to enter KeyPass")
+ .setSubtitle(getString(R.string.login_to_enter_keypass))
.setDeviceCredentialAllowed(true)
.build()
diff --git a/app/src/main/java/com/yogeshpaliyal/keypass/ui/backup/BackupActivity.kt b/app/src/main/java/com/yogeshpaliyal/keypass/ui/backup/BackupActivity.kt
index 72573ff0..2a82d823 100644
--- a/app/src/main/java/com/yogeshpaliyal/keypass/ui/backup/BackupActivity.kt
+++ b/app/src/main/java/com/yogeshpaliyal/keypass/ui/backup/BackupActivity.kt
@@ -102,7 +102,7 @@ class BackupActivity : AppCompatActivity() {
findPreference("start_backup")?.isVisible = isBackupEnabled.not()
findPreference("create_backup")?.isVisible = isBackupEnabled
- findPreference("create_backup")?.summary = "Last backup : ${getBackupTime(sp).formatCalendar("dd MMM yyyy hh:mm aa")}"
+ findPreference("create_backup")?.summary = getString(R.string.last_backup_date,getBackupTime(sp).formatCalendar("dd MMM yyyy hh:mm aa"))
findPreference("backup_folder")?.isVisible = isBackupEnabled
val directory = URLDecoder.decode(getBackupDirectory(sp),"utf-8").split("/")
val folderName = directory.get(directory.lastIndex)
@@ -171,11 +171,11 @@ class BackupActivity : AppCompatActivity() {
)
val clip = ClipData.newPlainText("KeyPass", binding.txtCode.text)
clipboard?.setPrimaryClip(clip)
- Toast.makeText(context, "Copied to clipboard", Toast.LENGTH_SHORT).show()
+ Toast.makeText(context, getString(R.string.copied_to_clipboard), Toast.LENGTH_SHORT).show()
}
MaterialAlertDialogBuilder(requireContext()).setView(binding.root)
.setPositiveButton(
- "Yes"
+ getString(R.string.yes)
) { dialog, which -> dialog?.dismiss()
}.show()
}else{
@@ -192,7 +192,7 @@ class BackupActivity : AppCompatActivity() {
}
private fun verifyKeyPhrase(){
- Toast.makeText(context, "Under Development", Toast.LENGTH_SHORT).show()
+ Toast.makeText(context, getString(R.string.coming_soon), Toast.LENGTH_SHORT).show()
}
private fun stopBackup(){
diff --git a/app/src/main/java/com/yogeshpaliyal/keypass/ui/detail/DetailActivity.kt b/app/src/main/java/com/yogeshpaliyal/keypass/ui/detail/DetailActivity.kt
index 82db216d..b28f8998 100644
--- a/app/src/main/java/com/yogeshpaliyal/keypass/ui/detail/DetailActivity.kt
+++ b/app/src/main/java/com/yogeshpaliyal/keypass/ui/detail/DetailActivity.kt
@@ -108,10 +108,10 @@ class DetailActivity : AppCompatActivity() {
private fun deleteAccount() {
MaterialAlertDialogBuilder(this)
- .setTitle("Are you sure?")
- .setMessage("Do you really want to delete this entry, it can't be restored")
+ .setTitle(getString(R.string.delete_account_title))
+ .setMessage(getString(R.string.delete_account_msg))
.setPositiveButton(
- "Delete"
+ getString(R.string.delete)
) { dialog, which ->
dialog?.dismiss()
lifecycleScope.launch(Dispatchers.IO) {
@@ -123,7 +123,7 @@ class DetailActivity : AppCompatActivity() {
}
}
}
- .setNegativeButton("Cancel") { dialog, which ->
+ .setNegativeButton(getString(R.string.cancel)) { dialog, which ->
dialog.dismiss()
}.show()
diff --git a/app/src/main/java/com/yogeshpaliyal/keypass/ui/settings/MySettingsFragment.kt b/app/src/main/java/com/yogeshpaliyal/keypass/ui/settings/MySettingsFragment.kt
index c9595c71..bb9189e7 100644
--- a/app/src/main/java/com/yogeshpaliyal/keypass/ui/settings/MySettingsFragment.kt
+++ b/app/src/main/java/com/yogeshpaliyal/keypass/ui/settings/MySettingsFragment.kt
@@ -44,7 +44,7 @@ class MySettingsFragment : PreferenceFragmentCompat() {
override fun onPreferenceTreeClick(preference: Preference?): Boolean {
when(preference?.key){
"feedback" -> {
- context?.email("Feedback to KeyPass", "yogeshpaliyal.foss@gmail.com")
+ context?.email(getString(R.string.feedback_to_keypass), "yogeshpaliyal.foss@gmail.com")
return true
}
@@ -66,7 +66,7 @@ class MySettingsFragment : PreferenceFragmentCompat() {
"KeyPass Password Manager\n Offline, Secure, Open Source https://play.google.com/store/apps/details?id=" + BuildConfig.APPLICATION_ID
)
sendIntent.type = "text/plain"
- startActivity(Intent.createChooser(sendIntent, "Share KeyPass"))
+ startActivity(Intent.createChooser(sendIntent, getString(R.string.share_keypass)))
return true
}
}
diff --git a/app/src/main/res/color/color_on_primary_surface_emphasis_disabled.xml b/app/src/main/res/color/color_on_primary_surface_emphasis_disabled.xml
deleted file mode 100644
index c1ab9777..00000000
--- a/app/src/main/res/color/color_on_primary_surface_emphasis_disabled.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/color/color_on_primary_surface_emphasis_high.xml b/app/src/main/res/color/color_on_primary_surface_emphasis_high.xml
deleted file mode 100644
index 3f2defc7..00000000
--- a/app/src/main/res/color/color_on_primary_surface_emphasis_high.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/color/color_on_surface_divider.xml b/app/src/main/res/color/color_on_surface_divider.xml
deleted file mode 100644
index af8e6c87..00000000
--- a/app/src/main/res/color/color_on_surface_divider.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/color/color_on_surface_emphasis_disabled.xml b/app/src/main/res/color/color_on_surface_emphasis_disabled.xml
deleted file mode 100644
index ab24b211..00000000
--- a/app/src/main/res/color/color_on_surface_emphasis_disabled.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/app/src/main/res/drawable-v24/ic_launcher_foreground.xml
deleted file mode 100644
index 2b068d11..00000000
--- a/app/src/main/res/drawable-v24/ic_launcher_foreground.xml
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/drawable/ic_baseline_backup_24.xml b/app/src/main/res/drawable/ic_baseline_backup_24.xml
deleted file mode 100644
index 28965168..00000000
--- a/app/src/main/res/drawable/ic_baseline_backup_24.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
diff --git a/app/src/main/res/drawable/ic_launcher_background.xml b/app/src/main/res/drawable/ic_launcher_background.xml
deleted file mode 100644
index 07d5da9c..00000000
--- a/app/src/main/res/drawable/ic_launcher_background.xml
+++ /dev/null
@@ -1,170 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable/ic_launcher_foreground.xml b/app/src/main/res/drawable/ic_launcher_foreground.xml
deleted file mode 100644
index 1f5b0e73..00000000
--- a/app/src/main/res/drawable/ic_launcher_foreground.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
diff --git a/app/src/main/res/drawable/ic_twotone_history_24.xml b/app/src/main/res/drawable/ic_twotone_history_24.xml
deleted file mode 100644
index 7ba63257..00000000
--- a/app/src/main/res/drawable/ic_twotone_history_24.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
diff --git a/app/src/main/res/layout/activity_dashboard.xml b/app/src/main/res/layout/activity_dashboard.xml
index 226c847a..5ffb6c66 100644
--- a/app/src/main/res/layout/activity_dashboard.xml
+++ b/app/src/main/res/layout/activity_dashboard.xml
@@ -43,7 +43,7 @@
diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml
deleted file mode 100644
index d7618220..00000000
--- a/app/src/main/res/layout/activity_settings.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_detail.xml b/app/src/main/res/layout/fragment_detail.xml
index 4f7571eb..48c8e1fd 100644
--- a/app/src/main/res/layout/fragment_detail.xml
+++ b/app/src/main/res/layout/fragment_detail.xml
@@ -35,7 +35,7 @@
android:layout_width="0dp"
android:id="@+id/tilAccountName"
android:layout_height="wrap_content"
- android:hint="Account Name">
+ android:hint="@string/account_name">
+ android:hint="@string/username_email_phone">
@@ -97,7 +97,7 @@
android:layout_width="0dp"
android:id="@+id/tilTags"
android:layout_height="wrap_content"
- android:hint="Tags comma separated (optional)">
+ android:hint="@string/tags_comma_separated_optional">
+ android:hint="@string/website_url_optional">
+ android:hint="@string/notes_optional">
+ android:text="@string/alert"/>
+ android:text="@string/copy_keypharse_msg"/>
diff --git a/app/src/main/res/menu/bottom_app_bar_home_menu.xml b/app/src/main/res/menu/bottom_app_bar_home_menu.xml
deleted file mode 100644
index e0075af1..00000000
--- a/app/src/main/res/menu/bottom_app_bar_home_menu.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
\ No newline at end of file
diff --git a/app/src/main/res/menu/menu_bottom_nav.xml b/app/src/main/res/menu/menu_bottom_nav.xml
deleted file mode 100644
index 5ae8e2f3..00000000
--- a/app/src/main/res/menu/menu_bottom_nav.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
\ No newline at end of file
diff --git a/app/src/main/res/values-hi/string.xml b/app/src/main/res/values-hi/string.xml
new file mode 100644
index 00000000..a6b3daec
--- /dev/null
+++ b/app/src/main/res/values-hi/string.xml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index 6cf9ed48..a082d2e0 100644
--- a/app/src/main/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
@@ -1,12 +1,4 @@
-
- - Reply
- - Reply to all
-
-
- - reply
- - reply_all
-
\ No newline at end of file
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index 28727fe5..1b1859e6 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -14,24 +14,15 @@
-->
- 48dp
- 12dp
-
56dp
32dp
8dp
- 32dp
- 48dp
- 32dp
56dp
- 42dp
- 6dp
- 3dp
32dp
diff --git a/app/src/main/res/values/elevation.xml b/app/src/main/res/values/elevation.xml
index 75b82ded..8dc7e990 100644
--- a/app/src/main/res/values/elevation.xml
+++ b/app/src/main/res/values/elevation.xml
@@ -15,9 +15,5 @@
0dp
- 1dp
- 2dp
- 6dp
- 8dp
16dp
\ No newline at end of file
diff --git a/app/src/main/res/values/motion.xml b/app/src/main/res/values/motion.xml
index 1ebaa392..29d608a1 100644
--- a/app/src/main/res/values/motion.xml
+++ b/app/src/main/res/values/motion.xml
@@ -4,7 +4,5 @@
300
- 225
- 175
\ No newline at end of file
diff --git a/app/src/main/res/values/shapes.xml b/app/src/main/res/values/shapes.xml
index 3c6f39be..00e5e541 100644
--- a/app/src/main/res/values/shapes.xml
+++ b/app/src/main/res/values/shapes.xml
@@ -1,19 +1,5 @@
-
-
-
-
-
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 6022f7c9..a6016069 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -7,28 +7,13 @@
Generate Password
- Retry
Backup Restored
Invalid Keyphrase
Backup Completed
- BackupActivity
-
-
- Messages
- Sync
-
-
- Your signature
- Default reply action
- Sync email periodically
- Download incoming attachments
- Automatically download attachments for incoming emails
-
- Only download attachments when manually requested
Credentials Backups
Backup Credentials to external storage
Restore Credentials
@@ -44,4 +29,34 @@
Symbols
Numbers
Copied to clipboard
+ Login to enter KeyPass
+ Authentication failed
+
+ Last backup : %s
+ Coming Soon
+ Are you sure?
+ Do you really want to delete this entry, it can\'t be restored
+ Cancel
+ Feedback to KeyPass
+ Share KeyPass
+ No Accounts added, please add from below button
+ Turn Off Backups
+ Verify backup passphrase
+ Test your backup passphrase and verify that it matches
+ Backup Folder
+ Backup
+ Turn On Backups
+ Backups are encrypted with a passphrase and stored on your device
+ Yes
+ Create Backup
+ Alert
+ Copy This Key Phrase this will be used to recover this backup, this will not be provided by KeyPass Again, have you copied or written down?
+ Help
+ Security
+ Search
+ Account Name
+ Username/Email/Phone
+ Tags comma separated (optional)
+ Website url (optional)
+ Notes (optional)
\ No newline at end of file
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index 81a3994c..a5bbce94 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -63,14 +63,4 @@
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/xml/backup_preferences.xml b/app/src/main/res/xml/backup_preferences.xml
index d13a7e16..aaad0984 100644
--- a/app/src/main/res/xml/backup_preferences.xml
+++ b/app/src/main/res/xml/backup_preferences.xml
@@ -4,33 +4,33 @@
+ app:summary="@string/backup_desc"/>
+ app:title="@string/turn_on_backup"/>
+ app:title="@string/backup_folder"
+ tools:summary="@string/backup"/>
+ app:title="@string/verify_keyphrase"
+ app:summary="@string/verify_keyphrase_message"/>
+ app:title="@string/turn_off_backup"/>
\ No newline at end of file
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index f1b9e542..6616eab7 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -4,7 +4,7 @@
+ app:title="@string/security">
+ app:title="@string/help">
-
\ No newline at end of file
diff --git a/app/src/production/res/values/strings.xml b/app/src/production/res/values/strings.xml
index 0c073804..cb22809a 100644
--- a/app/src/production/res/values/strings.xml
+++ b/app/src/production/res/values/strings.xml
@@ -1,5 +1,5 @@
- KeyPass
+ KeyPass
\ No newline at end of file
diff --git a/app/src/staging/res/values/strings.xml b/app/src/staging/res/values/strings.xml
index 8f8e5078..f124ba3d 100644
--- a/app/src/staging/res/values/strings.xml
+++ b/app/src/staging/res/values/strings.xml
@@ -1,5 +1,5 @@
- Staging KeyPass
+ Staging KeyPass
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index 1fa2dfd1..bd39ddbd 100644
--- a/build.gradle
+++ b/build.gradle
@@ -12,6 +12,7 @@ buildscript {
repositories {
google()
jcenter()
+ maven { url "https://maven.localazy.com/repository/release/" }
}
dependencies {
classpath "com.android.tools.build:gradle:4.1.3"
@@ -21,6 +22,7 @@ buildscript {
classpath "com.google.dagger:hilt-android-gradle-plugin:$hilt_version"
+ classpath "com.localazy:gradle:1.5.3"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files