Skip to content

Commit b0cba20

Browse files
committed
feat(keepass): add settings UI in ServicesConfig
Adds a KeePass section to the Services settings page allowing users to configure keepass.vaultDir and the cache TTL from the shell UI.
1 parent 90173d2 commit b0cba20

1 file changed

Lines changed: 39 additions & 0 deletions

File tree

modules/settings/ServicesConfig.qml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2016,4 +2016,43 @@ ContentPage {
20162016
}
20172017
}
20182018

2019+
SettingsCardSection {
2020+
expanded: false
2021+
icon: "key"
2022+
title: Translation.tr("KeePass")
2023+
2024+
SettingsGroup {
2025+
StyledText {
2026+
Layout.fillWidth: true
2027+
text: Translation.tr("Integrate with KeePassXC-CLI to manage passwords directly from the shell.")
2028+
color: Appearance.colors.colOnSurfaceVariant
2029+
font.pixelSize: Appearance.font.pixelSize.small
2030+
wrapMode: Text.WordWrap
2031+
}
2032+
2033+
MaterialTextArea {
2034+
Layout.fillWidth: true
2035+
placeholderText: Translation.tr("Vault directory (where your .kdbx files are)")
2036+
text: Config.options?.keepass?.vaultDir ?? ""
2037+
wrapMode: TextEdit.Wrap
2038+
onTextChanged: Config.setNestedValue("keepass.vaultDir", text)
2039+
StyledToolTip {
2040+
text: Translation.tr("The directory containing your KeePass databases. If empty, the shell will look in common locations.")
2041+
}
2042+
}
2043+
2044+
ConfigSpinBox {
2045+
icon: "timer"
2046+
text: Translation.tr("Stay unlocked") + ` (${Math.floor(value/60)}m ${value%60}s)`
2047+
value: Config.options?.keepass?.cacheTtl ?? 300
2048+
from: 60
2049+
to: 14400
2050+
stepSize: 60
2051+
onValueChanged: Config.setNestedValue("keepass.cacheTtl", value)
2052+
StyledToolTip {
2053+
text: Translation.tr("How long the vault stays unlocked after entering the password before it auto-locks and clears the cached password.")
2054+
}
2055+
}
2056+
}
2057+
}
20192058
}

0 commit comments

Comments
 (0)