diff --git a/src/mixer/state.ts b/src/mixer/state.ts index 963ee45..1b6b6b7 100644 --- a/src/mixer/state.ts +++ b/src/mixer/state.ts @@ -781,8 +781,16 @@ export const setChannelPFL = ( dispatch(setVolume(player, "off", false)); dispatch(play(player)); } - dispatch(mixerState.actions.setPlayerPFL({ player, enabled })); - audioEngine.setPFL(player, enabled); + // If the player number is -1, do all channels. + if (player === -1) { + for (let i = 0; i < audioEngine.players.length; i++) { + dispatch(mixerState.actions.setPlayerPFL({ player: i, enabled: false })); + audioEngine.setPFL(i, false); + } + } else { + dispatch(mixerState.actions.setPlayerPFL({ player, enabled })); + audioEngine.setPFL(player, enabled); + } }; export const openMicrophone = ( diff --git a/src/navbar/index.tsx b/src/navbar/index.tsx index 3348aa8..faf9ecc 100644 --- a/src/navbar/index.tsx +++ b/src/navbar/index.tsx @@ -11,6 +11,7 @@ import { FaSpinner, FaExclamationTriangle, FaCog, + FaHeadphonesAlt, } from "react-icons/fa"; import { RootState } from "../rootReducer"; @@ -26,6 +27,7 @@ import { VUMeter } from "../optionsMenu/helpers/VUMeter"; import { getShowplan, setItemPlayed } from "../showplanner/state"; import * as OptionsMenuState from "../optionsMenu/state"; +import { setChannelPFL } from "../mixer/state"; function nicifyConnectionState(state: ConnectionStateEnum): string { switch (state) { @@ -288,6 +290,14 @@ export function NavBarMain() { > Options + {settings.proMode && ( +
  • dispatch(setChannelPFL(-1, false))} + > + Clear PFL +
  • + )}