From 98d844eb5a70cd4e6aecdde3505997732931e8ec Mon Sep 17 00:00:00 2001 From: "prompt.ac/@jeffrey" Date: Mon, 13 Jul 2026 00:46:59 -0700 Subject: [PATCH] =?UTF-8?q?slab=20menubar:=20the=20=E2=8C=83=E2=8C=83=20po?= =?UTF-8?q?p=20is=20feedback,=20not=20ambience=20=E2=80=94=20don't=20mute?= =?UTF-8?q?=20it?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It was inaudible because I gated it behind the menubar's mute flag, which was on. Wrong gate: "Mute ambient sonification" promises to silence the background hum of session status — noise you didn't ask for. A pop acknowledging a key you just pressed is not that, and muting the ambient track shouldn't cost you the feedback on your own keystroke. Co-Authored-By: Claude Opus 4.8 (1M context) --- slab/menubar-swift/Sources/SlabMenubar/PopSound.swift | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/slab/menubar-swift/Sources/SlabMenubar/PopSound.swift b/slab/menubar-swift/Sources/SlabMenubar/PopSound.swift index e5a78b2f5c..934c1fc04b 100644 --- a/slab/menubar-swift/Sources/SlabMenubar/PopSound.swift +++ b/slab/menubar-swift/Sources/SlabMenubar/PopSound.swift @@ -28,12 +28,15 @@ enum PopSound { channels: 1) private static var running = false + /// Deliberately NOT gated on the menubar's mute. That toggle silences the + /// *ambient* sonification — the background hum of session status, noise you + /// didn't ask for. This is the acknowledgement of a key you just pressed, and + /// muting the ambient track shouldn't cost you the feedback on your own + /// keystroke. static func play(rising: Bool) { - // The menubar's mute is a promise about noise, and this is noise. - guard !FileManager.default.fileExists(atPath: Paths.muteFlag) else { return } queue.async { guard let buffer = render(rising: rising), start() else { return } - // .interrupts: a fast ⌃⌃ ⌃⌃ should re-pop, not queue up a backlog. + // .interrupts: a fast ⌃⌃ ⌃⌃ should re-pop, not queue a backlog. player.scheduleBuffer(buffer, at: nil, options: .interrupts) player.play() } -- 2.51.2