Add NInputButton widget and FileManagerService integration

NInputButton.qml: new input+button widget
FileManagerService.qml: singleton service for file/folder dialogs
NFileManager.qml: create first iteration of filemanager
WallpaperTab.qml: integrate NInputButton
ScreenRecorderTab.qml: integrate NInputButton
GeneralTab.qml: integrate NInputButton
This commit is contained in:
Ly-sec
2025-09-21 13:06:57 +02:00
parent 2e0214ddb8
commit 86d891cfa8
6 changed files with 1086 additions and 10 deletions
+18 -3
View File
@@ -30,15 +30,30 @@ ColumnLayout {
Layout.alignment: Qt.AlignTop
}
NTextInput {
Layout.fillWidth: true
NInputButton {
label: `${Quickshell.env("USER") || "user"}'s profile picture`
description: "Your profile picture that appears throughout the interface."
text: Settings.data.general.avatarImage
placeholderText: "/home/user/.face"
onEditingFinished: {
buttonIcon: "photo"
buttonTooltip: "Browse for avatar image"
onInputEditingFinished: {
Settings.data.general.avatarImage = text
}
onButtonClicked: {
FileManagerService.open({
"title": "Select Avatar Image",
"initialPath": Settings.data.general.avatarImage || Quickshell.env("HOME"),
"selectFiles": true,
"scaling": scaling,
"onSelected": function (path) {
Settings.data.general.avatarImage = path
text = path
},
"parent": root
})
}
}
}