wallpaper selector: paste directory/file to navigate

This commit is contained in:
end-4
2025-08-30 16:39:13 +02:00
parent 3e368141c7
commit 513d140ea2
4 changed files with 39 additions and 6 deletions
+14 -4
View File
@@ -76,11 +76,21 @@ Singleton {
function setDirectoryIfValid(path) {
validateDirProc.nicePath = FileUtils.trimFileProtocol(path).replace(/\/+$/, "")
if (/^\/*$/.test(validateDirProc.nicePath)) validateDirProc.nicePath = "/";
validateDirProc.exec(["test", "-d", nicePath])
validateDirProc.exec([
"bash", "-c",
`if [ -d "${validateDirProc.nicePath}" ]; then echo dir; elif [ -f "${validateDirProc.nicePath}" ]; then echo file; else echo invalid; fi`
])
}
onExited: (exitCode, exitStatus) => {
if (exitCode === 0) {
root.directory = validateDirProc.nicePath
stdout: StdioCollector {
onStreamFinished: {
const result = text.trim()
if (result === "dir") {
root.directory = validateDirProc.nicePath
} else if (result === "file") {
root.directory = FileUtils.parentDirectory(validateDirProc.nicePath)
} else {
// Ignore
}
}
}
}