diff --git a/src/lib/pages/DictationPage.svelte b/src/lib/pages/DictationPage.svelte
index 7c1aeb8..71e2437 100644
--- a/src/lib/pages/DictationPage.svelte
+++ b/src/lib/pages/DictationPage.svelte
@@ -6,6 +6,7 @@
import { getCurrentWindow } from "@tauri-apps/api/window";
import { page, settings, templates, profiles, addToHistory, addTask, tasks } from "$lib/stores/page.svelte.js";
import { markGenerating, markGenerationDone } from "$lib/stores/llmStatus.svelte.js";
+ import { playStartCue, playStopCue, playCompleteCue } from "$lib/utils/sounds.js";
import { profilesStore } from "$lib/stores/profiles.svelte.ts";
import { toasts } from "$lib/stores/toasts.svelte.js";
import Card from "$lib/components/Card.svelte";
@@ -358,6 +359,9 @@
page.statusColor = "#e87171";
timerInterval = setInterval(updateTimer, 1000);
+ // Start cue (brief item #20). Off by default; volume user-set.
+ playStartCue(settings.soundCueVolume, settings.soundCues);
+
// Preview overlay: if the user opted in, reset any leftover state
// from a prior run and open the window when the main window is not
// focused (i.e. the user is dictating into some other app).
@@ -389,6 +393,9 @@
page.status = "Finalising...";
page.statusColor = "#e8c86e";
+ // Stop cue (brief item #20). "Recording over, finalising now."
+ playStopCue(settings.soundCueVolume, settings.soundCues);
+
try {
const activityBeforeStop = lastLiveActivityAt;
drainingSessionId = sessionId;
@@ -570,6 +577,11 @@
page.taskSidebarOpen = true;
}
+ // Complete cue (brief item #20) — major-third arpeggio. Plays
+ // after the full finalise flow so the user hears "done"
+ // aligned with the history entry + paste landing.
+ playCompleteCue(settings.soundCueVolume, settings.soundCues);
+
saved = true;
setTimeout(() => { saved = false; extractedCount = 0; }, 4000);
} else if (settings.transcriptionPreview) {
diff --git a/src/lib/pages/SettingsPage.svelte b/src/lib/pages/SettingsPage.svelte
index 03fbe3c..35b1cb4 100644
--- a/src/lib/pages/SettingsPage.svelte
+++ b/src/lib/pages/SettingsPage.svelte
@@ -1656,6 +1656,34 @@
/>
{/if}
+