summaryrefslogtreecommitdiff
path: root/modules/launcher/services/Schemes.qml
diff options
context:
space:
mode:
Diffstat (limited to 'modules/launcher/services/Schemes.qml')
-rw-r--r--modules/launcher/services/Schemes.qml23
1 files changed, 22 insertions, 1 deletions
diff --git a/modules/launcher/services/Schemes.qml b/modules/launcher/services/Schemes.qml
index a5891d5..dbb2dac 100644
--- a/modules/launcher/services/Schemes.qml
+++ b/modules/launcher/services/Schemes.qml
@@ -10,6 +10,9 @@ import QtQuick
Searcher {
id: root
+ property string currentScheme
+ property string currentVariant
+
function transformSearch(search: string): string {
return search.slice(`${Config.launcher.actionPrefix}scheme `.length);
}
@@ -18,6 +21,10 @@ Searcher {
return `${item.name} ${item.flavour}`;
}
+ function reload(): void {
+ getCurrent.running = true;
+ }
+
list: schemes.instances
useFuzzy: Config.launcher.useFuzzy.schemes
keys: ["name", "flavour"]
@@ -48,7 +55,21 @@ Searcher {
for (const f of s)
flat.push(f);
- schemes.model = flat;
+ schemes.model = flat.sort((a, b) => (a.name + a.flavour).localeCompare((b.name + b.flavour)));
+ }
+ }
+ }
+
+ Process {
+ id: getCurrent
+
+ running: true
+ command: ["caelestia", "scheme", "get", "-nfv"]
+ stdout: StdioCollector {
+ onStreamFinished: {
+ const [name, flavour, variant] = text.trim().split("\n");
+ root.currentScheme = `${name} ${flavour}`;
+ root.currentVariant = variant;
}
}
}