Audio cues: add send/receive on-off and minimise/restore cues (2 sounds each), drop .sfk byproducts
Six new machine-wide cues, each with the same numbered-variant + Preferences treatment as
the others (enable tickbox, Choose default sound picker, Play/Browse):
- Send turned on / off, Receive turned on / off: fire from OnStreamingCheckboxChanged, so
they sound whether the user clicked the in-window tickbox or pressed the mute shortcut
(the hotkey flips .Checked, which routes through the same handler). Suppressed during
profile load by the existing password-gate guard, so loading a profile doesn't blast them.
- Minimise (hide) / Restore (show): fire from the tray controller's Minimize()/Restore() on a
genuine visibility transition (guarded against no-op / startup-minimise).
Enable flags + custom-WAV overrides for these six live machine-wide in AppConfig
(EnableSendOnCue.., MachineCueCustomPaths) - they're app-level feedback, not per-profile
audio - so no Profile/settings-cache plumbing. TryLoadCueSound now also honours the
machine-wide custom path. PreferencesDialog gains a MachineRow helper + the six rows.
Sounds: shipped via the existing sounds\*.wav wildcard. Fixed an obvious typo in the
supplied files ("rcieve off 1.wav" -> "recieve off 1.wav") so receive-off has both variants.
Renamed the old single-name cue WAVs to Ed's numbered-variant set; added key/passkey and the
new cue sounds.
build-release.ps1: new step deletes the SoundForge .sfk peak-file byproducts from sounds\
before packaging (they never shipped - build is *.wav only - this just keeps the tree tidy).
Tests + manual updated for the six new cues.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
e526014e6a
commit
8763470037
@@ -35,6 +35,15 @@ $distDir = Join-Path $repo 'dist'
|
||||
$zipPath = Join-Path $distDir "RemSound-$Tag.zip"
|
||||
$staging = Join-Path ([System.IO.Path]::GetTempPath()) ("remsound-release-" + [guid]::NewGuid().ToString('N'))
|
||||
|
||||
# 0a. SoundForge drops a .sfk peak file next to every .wav it opens. They're byproducts that must
|
||||
# never ship (the build only bundles *.wav, so they wouldn't anyway) - clear them from the
|
||||
# source sounds\ folder so they don't accumulate and clutter the working tree.
|
||||
$sfk = @(Get-ChildItem -LiteralPath (Join-Path $repo 'sounds') -Filter '*.sfk' -ErrorAction SilentlyContinue)
|
||||
if ($sfk.Count -gt 0) {
|
||||
Write-Host "Removing $($sfk.Count) SoundForge .sfk byproduct(s) from sounds\..." -ForegroundColor Cyan
|
||||
$sfk | Remove-Item -Force
|
||||
}
|
||||
|
||||
# 0. Keep the GitHub-facing MANUAL.md in sync with the bundled readme.html.
|
||||
# Two copies of the manual exist on purpose: readme.html ships inside RemSound (F1
|
||||
# inside the app opens it), MANUAL.md is the Markdown rendition rendered on the
|
||||
|
||||
Reference in New Issue
Block a user