mirror of
https://github.com/yogeshpaliyal/KeyPass.git
synced 2026-05-07 19:30:36 -05:00
working on backup update
This commit is contained in:
@@ -10,7 +10,10 @@
|
||||
android:roundIcon="@mipmap/ic_launcher_round"
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/Theme.KeyPass">
|
||||
<activity android:name=".ui.settings_activity.SettingsActivity"></activity>
|
||||
<activity
|
||||
android:name=".ui.backup.BackupActivity"
|
||||
android:label="@string/title_activity_backup"></activity>
|
||||
<activity android:name=".ui.settings_activity.SettingsActivity" />
|
||||
<activity android:name=".ui.generate.GeneratePasswordActivity" />
|
||||
<activity android:name=".ui.auth.AuthenticationActivity">
|
||||
<intent-filter>
|
||||
@@ -25,26 +28,14 @@
|
||||
</activity>
|
||||
<activity
|
||||
android:name=".ui.nav.DashboardActivity"
|
||||
android:windowSoftInputMode="adjustPan"/>
|
||||
<activity android:name=".ui.detail.DetailActivity"
|
||||
android:windowSoftInputMode="adjustResize"/>
|
||||
android:windowSoftInputMode="adjustPan" />
|
||||
<activity
|
||||
android:name=".ui.detail.DetailActivity"
|
||||
android:windowSoftInputMode="adjustResize" />
|
||||
|
||||
<meta-data
|
||||
android:name="preloaded_fonts"
|
||||
android:resource="@array/preloaded_fonts" />
|
||||
|
||||
<!-- <service
|
||||
android:name=".service.BasicService"
|
||||
android:label="KeyPass Autofill"
|
||||
android:permission="android.permission.BIND_AUTOFILL_SERVICE">
|
||||
<intent-filter>
|
||||
<action android:name="android.service.autofill.AutofillService" />
|
||||
</intent-filter>
|
||||
|
||||
<meta-data
|
||||
android:name="android.autofill"
|
||||
android:resource="@xml/service_configuration" />
|
||||
</service>-->
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
@@ -0,0 +1,57 @@
|
||||
package com.yogeshpaliyal.keypass.ui.backup
|
||||
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.preference.Preference
|
||||
import androidx.preference.PreferenceFragmentCompat
|
||||
import com.yogeshpaliyal.keypass.R
|
||||
import com.yogeshpaliyal.keypass.utils.canUserAccessBackupDirectory
|
||||
import com.yogeshpaliyal.keypass.utils.getBackupDirectory
|
||||
|
||||
class BackupActivity : AppCompatActivity() {
|
||||
|
||||
companion object {
|
||||
@JvmStatic
|
||||
fun start(context: Context?) {
|
||||
val starter = Intent(context, BackupActivity::class.java)
|
||||
context?.startActivity(starter)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
setContentView(R.layout.backup_activity)
|
||||
if (savedInstanceState == null) {
|
||||
supportFragmentManager
|
||||
.beginTransaction()
|
||||
.replace(R.id.settings, SettingsFragment())
|
||||
.commit()
|
||||
}
|
||||
supportActionBar?.setDisplayHomeAsUpEnabled(true)
|
||||
}
|
||||
|
||||
class SettingsFragment : PreferenceFragmentCompat() {
|
||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||
setPreferencesFromResource(R.xml.backup_preferences, rootKey)
|
||||
val selectedDirectory = Uri.parse(getBackupDirectory())
|
||||
|
||||
if (context?.canUserAccessBackupDirectory() == true) {
|
||||
// already backup on
|
||||
findPreference<Preference>("create_backup")?.isVisible = true
|
||||
findPreference<Preference>("backup_folder")?.isVisible = true
|
||||
findPreference<Preference>("settings_verify_key_phrase")?.isVisible = true
|
||||
findPreference<Preference>("start_backup")?.isVisible = false
|
||||
} else {
|
||||
// backup is off
|
||||
findPreference<Preference>("create_backup")?.isVisible = false
|
||||
findPreference<Preference>("backup_folder")?.isVisible = false
|
||||
findPreference<Preference>("settings_verify_key_phrase")?.isVisible = false
|
||||
findPreference<Preference>("start_backup")?.isVisible = true
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -22,6 +22,7 @@ import com.yogeshpaliyal.keypass.databinding.LayoutBackupKeypharseBinding
|
||||
import com.yogeshpaliyal.keypass.databinding.LayoutRestoreKeypharseBinding
|
||||
import com.yogeshpaliyal.keypass.db_helper.createBackup
|
||||
import com.yogeshpaliyal.keypass.db_helper.restoreBackup
|
||||
import com.yogeshpaliyal.keypass.ui.backup.BackupActivity
|
||||
import com.yogeshpaliyal.keypass.utils.*
|
||||
import kotlinx.coroutines.launch
|
||||
|
||||
@@ -42,7 +43,7 @@ class MySettingsFragment : PreferenceFragmentCompat() {
|
||||
}
|
||||
|
||||
"backup" -> {
|
||||
selectBackupDirectory()
|
||||
BackupActivity.start(context)
|
||||
return true
|
||||
}
|
||||
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
package com.yogeshpaliyal.keypass.ui.settings_activity
|
||||
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import android.os.Bundle
|
||||
import com.yogeshpaliyal.keypass.R
|
||||
|
||||
class SettingsActivity : AppCompatActivity() {
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
setContentView(R.layout.activity_settings)
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<FrameLayout
|
||||
android:id="@+id/settings"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent" />
|
||||
</LinearLayout>
|
||||
@@ -0,0 +1,12 @@
|
||||
<resources>
|
||||
<!-- Reply Preference -->
|
||||
<string-array name="reply_entries">
|
||||
<item>Reply</item>
|
||||
<item>Reply to all</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="reply_values">
|
||||
<item>reply</item>
|
||||
<item>reply_all</item>
|
||||
</string-array>
|
||||
</resources>
|
||||
@@ -14,4 +14,20 @@
|
||||
<string name="invalid_keyphrase">Invalid Keyphrase</string>
|
||||
|
||||
<string name="backup_completed">Backup Completed</string>
|
||||
<string name="title_activity_backup">BackupActivity</string>
|
||||
|
||||
<!-- Preference Titles -->
|
||||
<string name="messages_header">Messages</string>
|
||||
<string name="sync_header">Sync</string>
|
||||
|
||||
<!-- Messages Preferences -->
|
||||
<string name="signature_title">Your signature</string>
|
||||
<string name="reply_title">Default reply action</string>
|
||||
|
||||
<!-- Sync Preferences -->
|
||||
<string name="sync_title">Sync email periodically</string>
|
||||
<string name="attachment_title">Download incoming attachments</string>
|
||||
<string name="attachment_summary_on">Automatically download attachments for incoming emails
|
||||
</string>
|
||||
<string name="attachment_summary_off">Only download attachments when manually requested</string>
|
||||
</resources>
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="settings_backup" translatable="false">backup</string>
|
||||
<string name="settings_verify_key_phrase" translatable="false">settings_verify_key_phrase</string>
|
||||
<string name="settings_restore_backup" translatable="false">restore_backup</string>
|
||||
<string name="settings_feedback" translatable="false">feedback</string>
|
||||
<string name="settings_share_app" translatable="false">share</string>
|
||||
</resources>
|
||||
@@ -0,0 +1,32 @@
|
||||
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<PreferenceCategory>
|
||||
|
||||
<Preference
|
||||
app:summary="Backups are encrypted with a passphrase and stored on your device"/>
|
||||
|
||||
<Preference
|
||||
app:key="start_backup"
|
||||
app:title="Turn On Backups"/>
|
||||
|
||||
<Preference
|
||||
app:key="create_backup"
|
||||
app:title="Create Backup"
|
||||
tools:summary="Last backup : 7m"/>
|
||||
|
||||
|
||||
<Preference
|
||||
app:key="backup_folder"
|
||||
app:title="Backup Folder"
|
||||
tools:summary="Backup"/>
|
||||
|
||||
<Preference
|
||||
app:key="@string/settings_verify_key_phrase"
|
||||
app:title="Verify backup passphrase"
|
||||
app:summary="Test your backup passphrase and verify that it matches"/>
|
||||
|
||||
|
||||
|
||||
</PreferenceCategory>
|
||||
</PreferenceScreen>
|
||||
@@ -7,13 +7,13 @@
|
||||
app:title="Security">
|
||||
|
||||
<Preference
|
||||
app:key="backup"
|
||||
app:title="Backup"
|
||||
app:summary="Backup your credentials in encrypted file" />
|
||||
app:key="@string/settings_backup"
|
||||
app:title="Credentials Backups"
|
||||
app:summary="Backup Credentials to external storage" />
|
||||
|
||||
<Preference
|
||||
app:key="restore"
|
||||
app:title="Restore"
|
||||
app:key="@string/settings_restore_backup"
|
||||
app:title="Restore Credentials"
|
||||
app:summary="Restore your backup" />
|
||||
</PreferenceCategory>
|
||||
|
||||
@@ -22,13 +22,13 @@
|
||||
app:title="Help">
|
||||
|
||||
<Preference
|
||||
app:key="feedback"
|
||||
app:key="@string/settings_feedback"
|
||||
app:icon="@drawable/ic_baseline_feedback_24"
|
||||
app:title="Send feedback"
|
||||
app:summary="Report technical issues or suggest new features" />
|
||||
|
||||
<Preference
|
||||
app:key="share"
|
||||
app:key="@string/settings_share_app"
|
||||
app:icon="@drawable/ic_baseline_share_24"
|
||||
app:title="Share"
|
||||
app:summary="Share app with others" />
|
||||
|
||||
Reference in New Issue
Block a user