From c8353d170f4ef515f07f9d587078025ecdd0c115 Mon Sep 17 00:00:00 2001 From: Curve Date: Fri, 31 May 2024 01:21:29 +0200 Subject: [PATCH] feat(ScreenShare): add `ignoreInputMedia` --- src/renderer/components/ScreenSharePicker.tsx | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/renderer/components/ScreenSharePicker.tsx b/src/renderer/components/ScreenSharePicker.tsx index 167c592..0303a51 100644 --- a/src/renderer/components/ScreenSharePicker.tsx +++ b/src/renderer/components/ScreenSharePicker.tsx @@ -49,6 +49,7 @@ interface StreamSettings { audioSources?: AudioSources; contentHint?: string; workaround?: boolean; + ignoreInputMedia?: boolean; onlyDefaultSpeakers?: boolean; granularSelect?: boolean; } @@ -305,11 +306,13 @@ function StreamSettings({ setSettings(s => ({ ...s, audioSources: sources }))} setWorkaround={value => setSettings(s => ({ ...s, workaround: value }))} setOnlyDefaultSpeakers={value => setSettings(s => ({ ...s, onlyDefaultSpeakers: value }))} + setIgnoreInputMedia={value => setSettings(s => ({ ...s, ignoreInputMedia: value }))} setGranularSelect={value => setSettings(s => ({ ...s, granularSelect: value }))} /> )} @@ -386,18 +389,22 @@ function AudioSourcePickerLinux({ audioSources, workaround, onlyDefaultSpeakers, + ignoreInputMedia, granularSelect, setAudioSources, setWorkaround, + setIgnoreInputMedia, setOnlyDefaultSpeakers, setGranularSelect }: { audioSources?: AudioSources; workaround?: boolean; onlyDefaultSpeakers?: boolean; + ignoreInputMedia?: boolean; granularSelect?: boolean; setAudioSources(s: AudioSources): void; setWorkaround(b: boolean): void; + setIgnoreInputMedia(b: boolean): void; setOnlyDefaultSpeakers(b: boolean): void; setGranularSelect(b: boolean): void; }) { @@ -526,15 +533,18 @@ function AudioSourcePickerLinux({ onChange={setOnlyDefaultSpeakers} disabled={audioSources !== "Entire System"} value={onlyDefaultSpeakers ?? true} - note={ - <> - When sharing entire desktop audio, only share apps that play to the default speakers and - ignore apps that play to other speakers or devices. - - } + note={<>When sharing entire desktop audio, only share apps that play to the default speakers.} > Only Default Speakers + Ignore Nodes that are intended to capture audio.} + > + Ignore Input Media + {