summaryrefslogtreecommitdiff
path: root/widgets/CachingImage.qml
diff options
context:
space:
mode:
Diffstat (limited to 'widgets/CachingImage.qml')
-rw-r--r--widgets/CachingImage.qml41
1 files changed, 0 insertions, 41 deletions
diff --git a/widgets/CachingImage.qml b/widgets/CachingImage.qml
deleted file mode 100644
index 1d42238..0000000
--- a/widgets/CachingImage.qml
+++ /dev/null
@@ -1,41 +0,0 @@
-import qs.utils
-import Quickshell.Io
-import QtQuick
-
-Image {
- id: root
-
- property string path
- property string hash
- readonly property string cachePath: `${Paths.stringify(Paths.imagecache)}/${hash}@${width}x${height}.png`
-
- asynchronous: true
- fillMode: Image.PreserveAspectCrop
- sourceSize.width: width
- sourceSize.height: height
-
- onPathChanged: shaProc.exec(["sha256sum", Paths.strip(path)])
-
- onCachePathChanged: {
- if (hash)
- source = cachePath;
- }
-
- onStatusChanged: {
- if (source == cachePath && status === Image.Error)
- source = path;
- else if (source == path && status === Image.Ready) {
- Paths.mkdir(Paths.imagecache);
- const grabPath = cachePath;
- grabToImage(res => res.saveToFile(grabPath));
- }
- }
-
- Process {
- id: shaProc
-
- stdout: StdioCollector {
- onStreamFinished: root.hash = text.split(" ")[0]
- }
- }
-}