mirror of
https://github.com/arthur-pbty/arthur-os.git
synced 2026-08-02 04:37:49 +02:00
Ignore stale image picker scans
This commit is contained in:
@@ -284,12 +284,25 @@ Item {
|
||||
selectedIndex = 0
|
||||
imagesLoaded = false
|
||||
opened = false
|
||||
loadImagesProc.requestSerial = requestSerial
|
||||
loadImagesProc.running = true
|
||||
startImageScan(requestSerial, imageDirs)
|
||||
}
|
||||
|
||||
property var imageArray: []
|
||||
|
||||
function startImageScan(serial, dirs) {
|
||||
if (loadImagesProc.running) {
|
||||
loadImagesProc.queuedSerial = serial
|
||||
loadImagesProc.queuedDirs = dirs
|
||||
return
|
||||
}
|
||||
|
||||
loadImagesProc.activeSerial = serial
|
||||
loadImagesProc.queuedSerial = 0
|
||||
loadImagesProc.queuedDirs = ""
|
||||
loadImagesProc.command = [root.scriptPath("image-picker-list.sh"), dirs]
|
||||
loadImagesProc.running = true
|
||||
}
|
||||
|
||||
function indexForSelectedImage(images) {
|
||||
for (var i = 0; i < images.length; i++) {
|
||||
if (images[i].filePath === selectedImage)
|
||||
@@ -305,15 +318,25 @@ Item {
|
||||
|
||||
Process {
|
||||
id: loadImagesProc
|
||||
property int requestSerial: 0
|
||||
command: [root.scriptPath("image-picker-list.sh"), root.imageDirs]
|
||||
property int activeSerial: 0
|
||||
property int queuedSerial: 0
|
||||
property string queuedDirs: ""
|
||||
stdout: StdioCollector {
|
||||
waitForEnd: true
|
||||
onStreamFinished: {
|
||||
if (loadImagesProc.requestSerial === root.requestSerial)
|
||||
if (loadImagesProc.activeSerial === root.requestSerial)
|
||||
root.loadRows(String(text || ""), true)
|
||||
}
|
||||
}
|
||||
onExited: {
|
||||
var serial = queuedSerial
|
||||
var dirs = queuedDirs
|
||||
activeSerial = 0
|
||||
queuedSerial = 0
|
||||
queuedDirs = ""
|
||||
if (serial > 0 && serial === root.requestSerial)
|
||||
root.startImageScan(serial, dirs)
|
||||
}
|
||||
}
|
||||
|
||||
// Lifecycle hooks invoked by omarchy-shell summon/hide. shell.summon(id,
|
||||
|
||||
Reference in New Issue
Block a user