summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/launcher/Actions.qml8
-rw-r--r--services/Apps.qml8
2 files changed, 10 insertions, 6 deletions
diff --git a/modules/launcher/Actions.qml b/modules/launcher/Actions.qml
index 4323bff..e604ae3 100644
--- a/modules/launcher/Actions.qml
+++ b/modules/launcher/Actions.qml
@@ -88,15 +88,17 @@ Singleton {
}
]
- readonly property list<var> preppedNames: list.map(a => ({
+ readonly property list<var> preppedActions: list.map(a => ({
name: Fuzzy.prepare(a.name),
+ desc: Fuzzy.prepare(a.desc),
action: a
}))
function fuzzyQuery(search: string): var {
- return Fuzzy.go(search.slice(LauncherConfig.actionPrefix.length), preppedNames, {
+ return Fuzzy.go(search.slice(LauncherConfig.actionPrefix.length), preppedActions, {
all: true,
- key: "name"
+ keys: ["name", "desc"],
+ scoreFn: r => r[0].score * 0.9 + r[1].score * 0.1
}).map(r => r.obj.action);
}
diff --git a/services/Apps.qml b/services/Apps.qml
index f964be2..6f2f48f 100644
--- a/services/Apps.qml
+++ b/services/Apps.qml
@@ -8,15 +8,17 @@ Singleton {
id: root
readonly property list<DesktopEntry> list: DesktopEntries.applications.values.filter(a => !a.noDisplay).sort((a, b) => a.name.localeCompare(b.name))
- readonly property list<var> preppedNames: list.map(a => ({
+ readonly property list<var> preppedApps: list.map(a => ({
name: Fuzzy.prepare(a.name),
+ comment: Fuzzy.prepare(a.comment),
entry: a
}))
function fuzzyQuery(search: string): var { // Idk why list<DesktopEntry> doesn't work
- return Fuzzy.go(search, preppedNames, {
+ return Fuzzy.go(search, preppedApps, {
all: true,
- key: "name"
+ keys: ["name", "comment"],
+ scoreFn: r => r[0].score * 0.9 + r[1].score * 0.1
}).map(r => r.obj.entry);
}