mirror of
https://github.com/Kunzisoft/KeePassDX.git
synced 2025-12-04 15:49:33 +01:00
Fix merge and save copy in KDB database
This commit is contained in:
@@ -276,6 +276,9 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
inflateMenu(R.menu.settings)
|
||||
inflateMenu(R.menu.database_extra)
|
||||
inflateMenu(R.menu.about)
|
||||
if (!mMergeDataAllowed) {
|
||||
menu.findItem(R.id.menu_merge_from)?.isVisible = false
|
||||
}
|
||||
setNavigationItemSelectedListener { menuItem ->
|
||||
when (menuItem.itemId) {
|
||||
R.id.menu_app_settings -> {
|
||||
@@ -289,7 +292,7 @@ class GroupActivity : DatabaseLockActivity(),
|
||||
mExternalFileHelper?.createDocument(
|
||||
getString(R.string.database_file_name_default) +
|
||||
getString(R.string.database_file_name_copy) +
|
||||
getString(R.string.database_file_extension_default))
|
||||
mDatabase?.defaultFileExtension)
|
||||
}
|
||||
R.id.menu_contribute -> {
|
||||
UriUtil.gotoUrl(this@GroupActivity, R.string.contribution_url)
|
||||
|
||||
@@ -274,6 +274,9 @@ class Database {
|
||||
}
|
||||
}
|
||||
|
||||
val defaultFileExtension: String
|
||||
get() = mDatabaseKDB?.defaultFileExtension ?: mDatabaseKDBX?.defaultFileExtension ?: ".bin"
|
||||
|
||||
val type: Class<*>?
|
||||
get() = mDatabaseKDB?.javaClass ?: mDatabaseKDBX?.javaClass
|
||||
|
||||
|
||||
@@ -64,6 +64,9 @@ class DatabaseKDB : DatabaseVersioned<Int, UUID, GroupKDB, EntryKDB>() {
|
||||
override val version: String
|
||||
get() = "V1"
|
||||
|
||||
override val defaultFileExtension: String
|
||||
get() = ".kdb"
|
||||
|
||||
init {
|
||||
// New manual root because KDB contains multiple root groups (here available with getRootGroups())
|
||||
rootGroup = createGroup().apply {
|
||||
|
||||
@@ -201,6 +201,9 @@ class DatabaseKDBX : DatabaseVersioned<UUID, UUID, GroupKDBX, EntryKDBX> {
|
||||
return "V2 - KDBX$kdbxStringVersion"
|
||||
}
|
||||
|
||||
override val defaultFileExtension: String
|
||||
get() = ".kdbx"
|
||||
|
||||
private open class NodeOperationHandler<T: NodeKDBXInterface> : NodeHandler<T>() {
|
||||
var containsCustomData = false
|
||||
override fun operate(node: T): Boolean {
|
||||
|
||||
@@ -62,6 +62,7 @@ abstract class DatabaseVersioned<
|
||||
protected set
|
||||
|
||||
abstract val version: String
|
||||
abstract val defaultFileExtension: String
|
||||
|
||||
/**
|
||||
* To manage binaries in faster way
|
||||
|
||||
Reference in New Issue
Block a user