mirror of
https://github.com/Kunzisoft/KeePassDX.git
synced 2025-12-04 15:49:33 +01:00
Fix notes in group
This commit is contained in:
@@ -204,9 +204,11 @@ class GroupActivity : LockingActivity(),
|
|||||||
|
|
||||||
// Add listeners to the add buttons
|
// Add listeners to the add buttons
|
||||||
addNodeButtonView?.setAddGroupClickListener {
|
addNodeButtonView?.setAddGroupClickListener {
|
||||||
GroupEditDialogFragment.build()
|
GroupEditDialogFragment.create(GroupInfo().apply {
|
||||||
.show(supportFragmentManager,
|
if (mCurrentGroup?.allowAddNoteInGroup == true) {
|
||||||
GroupEditDialogFragment.TAG_CREATE_GROUP)
|
notes = ""
|
||||||
|
}
|
||||||
|
}).show(supportFragmentManager, GroupEditDialogFragment.TAG_CREATE_GROUP)
|
||||||
}
|
}
|
||||||
addNodeButtonView?.setAddEntryClickListener {
|
addNodeButtonView?.setAddEntryClickListener {
|
||||||
mCurrentGroup?.let { currentGroup ->
|
mCurrentGroup?.let { currentGroup ->
|
||||||
@@ -552,7 +554,7 @@ class GroupActivity : LockingActivity(),
|
|||||||
val addGroupEnabled = !mReadOnly && mCurrentGroup?.isVirtual != true
|
val addGroupEnabled = !mReadOnly && mCurrentGroup?.isVirtual != true
|
||||||
var addEntryEnabled = !mReadOnly && mCurrentGroup?.isVirtual != true
|
var addEntryEnabled = !mReadOnly && mCurrentGroup?.isVirtual != true
|
||||||
mCurrentGroup?.let {
|
mCurrentGroup?.let {
|
||||||
if (!it.allowAddEntryIfIsRoot())
|
if (!it.allowAddEntryIfIsRoot)
|
||||||
addEntryEnabled = it != mRootGroup && addEntryEnabled
|
addEntryEnabled = it != mRootGroup && addEntryEnabled
|
||||||
}
|
}
|
||||||
enableAddGroup(addGroupEnabled)
|
enableAddGroup(addGroupEnabled)
|
||||||
@@ -779,7 +781,7 @@ class GroupActivity : LockingActivity(),
|
|||||||
when (node.type) {
|
when (node.type) {
|
||||||
Type.GROUP -> {
|
Type.GROUP -> {
|
||||||
mOldGroupToUpdate = node as Group
|
mOldGroupToUpdate = node as Group
|
||||||
GroupEditDialogFragment.build(mOldGroupToUpdate!!.getGroupInfo())
|
GroupEditDialogFragment.update(mOldGroupToUpdate!!.getGroupInfo())
|
||||||
.show(supportFragmentManager,
|
.show(supportFragmentManager,
|
||||||
GroupEditDialogFragment.TAG_CREATE_GROUP)
|
GroupEditDialogFragment.TAG_CREATE_GROUP)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -113,8 +113,6 @@ class GroupEditDialogFragment : DialogFragment() {
|
|||||||
arguments?.apply {
|
arguments?.apply {
|
||||||
if (containsKey(KEY_ACTION_ID))
|
if (containsKey(KEY_ACTION_ID))
|
||||||
mEditGroupDialogAction = EditGroupDialogAction.getActionFromOrdinal(getInt(KEY_ACTION_ID))
|
mEditGroupDialogAction = EditGroupDialogAction.getActionFromOrdinal(getInt(KEY_ACTION_ID))
|
||||||
if (mEditGroupDialogAction === CREATION)
|
|
||||||
mGroupInfo.notes = ""
|
|
||||||
if (containsKey(KEY_GROUP_INFO)) {
|
if (containsKey(KEY_GROUP_INFO)) {
|
||||||
mGroupInfo = getParcelable(KEY_GROUP_INFO) ?: mGroupInfo
|
mGroupInfo = getParcelable(KEY_GROUP_INFO) ?: mGroupInfo
|
||||||
}
|
}
|
||||||
@@ -241,15 +239,16 @@ class GroupEditDialogFragment : DialogFragment() {
|
|||||||
const val KEY_ACTION_ID = "KEY_ACTION_ID"
|
const val KEY_ACTION_ID = "KEY_ACTION_ID"
|
||||||
const val KEY_GROUP_INFO = "KEY_GROUP_INFO"
|
const val KEY_GROUP_INFO = "KEY_GROUP_INFO"
|
||||||
|
|
||||||
fun build(): GroupEditDialogFragment {
|
fun create(groupInfo: GroupInfo): GroupEditDialogFragment {
|
||||||
val bundle = Bundle()
|
val bundle = Bundle()
|
||||||
bundle.putInt(KEY_ACTION_ID, CREATION.ordinal)
|
bundle.putInt(KEY_ACTION_ID, CREATION.ordinal)
|
||||||
|
bundle.putParcelable(KEY_GROUP_INFO, groupInfo)
|
||||||
val fragment = GroupEditDialogFragment()
|
val fragment = GroupEditDialogFragment()
|
||||||
fragment.arguments = bundle
|
fragment.arguments = bundle
|
||||||
return fragment
|
return fragment
|
||||||
}
|
}
|
||||||
|
|
||||||
fun build(groupInfo: GroupInfo): GroupEditDialogFragment {
|
fun update(groupInfo: GroupInfo): GroupEditDialogFragment {
|
||||||
val bundle = Bundle()
|
val bundle = Bundle()
|
||||||
bundle.putInt(KEY_ACTION_ID, UPDATE.ordinal)
|
bundle.putInt(KEY_ACTION_ID, UPDATE.ordinal)
|
||||||
bundle.putParcelable(KEY_GROUP_INFO, groupInfo)
|
bundle.putParcelable(KEY_GROUP_INFO, groupInfo)
|
||||||
|
|||||||
@@ -348,9 +348,11 @@ class Group : Node, GroupVersionedInterface<Group, Entry> {
|
|||||||
groupKDBX?.removeChildren()
|
groupKDBX?.removeChildren()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun allowAddEntryIfIsRoot(): Boolean {
|
val allowAddEntryIfIsRoot: Boolean
|
||||||
return groupKDB?.allowAddEntryIfIsRoot() ?: groupKDBX?.allowAddEntryIfIsRoot() ?: false
|
get() = groupKDBX != null
|
||||||
}
|
|
||||||
|
val allowAddNoteInGroup: Boolean
|
||||||
|
get() = groupKDBX != null
|
||||||
|
|
||||||
/*
|
/*
|
||||||
------------
|
------------
|
||||||
|
|||||||
@@ -82,10 +82,6 @@ class GroupKDB : GroupVersioned<Int, UUID, GroupKDB, EntryKDB>, NodeKDBInterface
|
|||||||
this.nodeId = NodeIdInt(groupId)
|
this.nodeId = NodeIdInt(groupId)
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun allowAddEntryIfIsRoot(): Boolean {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
|
||||||
@JvmField
|
@JvmField
|
||||||
|
|||||||
@@ -125,10 +125,6 @@ class GroupKDBX : GroupVersioned<UUID, UUID, GroupKDBX, EntryKDBX>, NodeKDBXInte
|
|||||||
return customData.isNotEmpty()
|
return customData.isNotEmpty()
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun allowAddEntryIfIsRoot(): Boolean {
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
|
||||||
@JvmField
|
@JvmField
|
||||||
|
|||||||
@@ -38,8 +38,6 @@ interface GroupVersionedInterface<Group: GroupVersionedInterface<Group, Entry>,
|
|||||||
|
|
||||||
fun removeChildren()
|
fun removeChildren()
|
||||||
|
|
||||||
fun allowAddEntryIfIsRoot(): Boolean
|
|
||||||
|
|
||||||
@Suppress("UNCHECKED_CAST")
|
@Suppress("UNCHECKED_CAST")
|
||||||
fun doForEachChildAndForIt(entryHandler: NodeHandler<Entry>,
|
fun doForEachChildAndForIt(entryHandler: NodeHandler<Entry>,
|
||||||
groupHandler: NodeHandler<Group>) {
|
groupHandler: NodeHandler<Group>) {
|
||||||
|
|||||||
Reference in New Issue
Block a user