aboutsummaryrefslogtreecommitdiffstats
path: root/desktop
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-10-23 15:01:45 +0200
committerDanilo M. <danix@danix.xyz>2026-10-23 15:01:45 +0200
commitb324159b0636180ae65d7dde4ed424b21ff02117 (patch)
treee634b39ce99dd445f85a8e18cc11c9ddf0da2217 /desktop
parent1239dc3aa73c488990a40dc356fdc1e7ba40940c (diff)
downloadquickshell-b324159b0636180ae65d7dde4ed424b21ff02117.tar.gz
quickshell-b324159b0636180ae65d7dde4ed424b21ff02117.zip
assistant: replied() when a reply finishes
The desktop companion waves when an answer is ready. The moment already existed as the done branch that calls notifyDone; it is now a signal too, so the companion connects to it instead of reading the turn list. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'desktop')
-rw-r--r--desktop/assistant/Assistant.qml8
1 files changed, 7 insertions, 1 deletions
diff --git a/desktop/assistant/Assistant.qml b/desktop/assistant/Assistant.qml
index 33616ad..2641a5e 100644
--- a/desktop/assistant/Assistant.qml
+++ b/desktop/assistant/Assistant.qml
@@ -74,6 +74,9 @@ Scope {
property var convs: []
property var results: []
readonly property bool busy: root.state !== "idle"
+ // A reply finished (not stopped). The canvas notifies through notifyDone;
+ // the desktop companion waves.
+ signal replied()
// A daemon gone mid-reply sends no idle; its hello on return redraws.
onConnectedChanged: if (!root.connected) {
@@ -405,7 +408,10 @@ Scope {
}
if (!e.stopped) root.convId = e.id;
root.lastActive = Date.now();
- if (!e.stopped && i >= 0) root.notifyDone(turns.get(i).reply);
+ if (!e.stopped && i >= 0) {
+ root.notifyDone(turns.get(i).reply);
+ root.replied();
+ }
break;
case "progress": if (root.opDaemon) root.opChars = e.chars; break;
case "written":