From a3bd0313a81a3d97d6b6c7f6494ebc6b5be480c2 Mon Sep 17 00:00:00 2001 From: Jannis Braun <151788261+TheZwiss@users.noreply.github.com> Date: Tue, 28 Apr 2026 14:26:41 +0200 Subject: [PATCH] feat(sounds): add messageSoundAllChannels preference to voiceStore --- packages/web/src/stores/voiceStore.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/web/src/stores/voiceStore.ts b/packages/web/src/stores/voiceStore.ts index b2bae57b..fd570e78 100644 --- a/packages/web/src/stores/voiceStore.ts +++ b/packages/web/src/stores/voiceStore.ts @@ -49,6 +49,8 @@ interface VoiceState { unwatchedCameras: Set; // userIds whose cameras we've opted out of soundEffectVolume: number; // 0-200 (100 = default) setSoundEffectVolume: (volume: number) => void; + messageSoundAllChannels: boolean; // false (default) = DM + mention only; true = every channel + setMessageSoundAllChannels: (allChannels: boolean) => void; streamAttenuationEnabled: boolean; // global toggle, default true streamAttenuationStrength: number; // 0-100, default 50 setStreamVolume: (userId: string, volume: number) => void; @@ -181,6 +183,8 @@ export const useVoiceStore = create()( soundEffectVolume: 100, setSoundEffectVolume: (volume) => set({ soundEffectVolume: volume }), + messageSoundAllChannels: false, + setMessageSoundAllChannels: (allChannels) => set({ messageSoundAllChannels: allChannels }), // Stream widget state streamVolumes: new Map(), @@ -704,6 +708,7 @@ export const useVoiceStore = create()( autoGainControl: state.autoGainControl, rnnoiseEnabled: state.rnnoiseEnabled, soundEffectVolume: state.soundEffectVolume, + messageSoundAllChannels: state.messageSoundAllChannels, streamAttenuationEnabled: state.streamAttenuationEnabled, streamAttenuationStrength: state.streamAttenuationStrength, // Per-user preferences (Map → plain object for JSON)