diff options
Diffstat (limited to 'raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Plugins/StringSetting.qml')
| -rw-r--r-- | raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Plugins/StringSetting.qml | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Plugins/StringSetting.qml b/raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Plugins/StringSetting.qml deleted file mode 100644 index 849807b..0000000 --- a/raveos-theme/hyprland/theme-data/DankMaterialShell/quickshell/Modules/Plugins/StringSetting.qml +++ /dev/null @@ -1,84 +0,0 @@ -import QtQuick -import qs.Common -import qs.Widgets - -Column { - id: root - - required property string settingKey - required property string label - property string description: "" - property string placeholder: "" - property string defaultValue: "" - property string value: defaultValue - - width: parent.width - spacing: Theme.spacingS - - property bool isInitialized: false - - function loadValue() { - const settings = findSettings(); - if (settings && settings.pluginService) { - const loadedValue = settings.loadValue(settingKey, defaultValue); - if (textField.activeFocus && isInitialized) - return; - value = loadedValue; - textField.text = loadedValue; - isInitialized = true; - } - } - - Component.onCompleted: { - Qt.callLater(loadValue); - } - - function commit() { - if (!isInitialized) - return; - if (textField.text === value) - return; - value = textField.text; - const settings = findSettings(); - if (settings) - settings.saveValue(settingKey, value); - } - - function findSettings() { - let item = parent; - while (item) { - if (item.saveValue !== undefined && item.loadValue !== undefined) { - return item; - } - item = item.parent; - } - return null; - } - - StyledText { - text: root.label - font.pixelSize: Theme.fontSizeMedium - font.weight: Font.Medium - color: Theme.surfaceText - } - - StyledText { - text: root.description - font.pixelSize: Theme.fontSizeSmall - color: Theme.surfaceVariantText - width: parent.width - wrapMode: Text.WordWrap - visible: root.description !== "" - } - - DankTextField { - id: textField - width: parent.width - placeholderText: root.placeholder - onEditingFinished: root.commit() - onActiveFocusChanged: { - if (!activeFocus) - root.commit(); - } - } -} |