Add option to mute audio on minimize and background gamepad input

Fixes #461
This commit is contained in:
Cameron Gutman
2020-12-25 15:32:11 -06:00
parent f7ffb30bc6
commit a11f623b17
8 changed files with 74 additions and 6 deletions

View File

@@ -370,6 +370,7 @@ Session::Session(NvComputer* computer, NvApp& app, StreamingPreferences *prefere
m_DecoderLock(0),
m_NeedsIdr(false),
m_AudioDisabled(false),
m_AudioMuted(false),
m_DisplayOriginX(0),
m_DisplayOriginY(0),
m_PendingWindowedTransition(false),
@@ -1318,11 +1319,25 @@ void Session::exec(int displayOriginX, int displayOriginY)
break;
case SDL_WINDOWEVENT:
if (event.window.event == SDL_WINDOWEVENT_FOCUS_LOST) {
// Early handling of some events
switch (event.window.event) {
case SDL_WINDOWEVENT_FOCUS_LOST:
m_InputHandler->notifyFocusLost();
}
else if (event.window.event == SDL_WINDOWEVENT_LEAVE) {
break;
case SDL_WINDOWEVENT_LEAVE:
m_InputHandler->notifyMouseLeave();
break;
case SDL_WINDOWEVENT_MINIMIZED:
if (m_Preferences->muteOnMinimize) {
m_AudioMuted = true;
}
break;
case SDL_WINDOWEVENT_MAXIMIZED:
case SDL_WINDOWEVENT_RESTORED:
if (m_Preferences->muteOnMinimize) {
m_AudioMuted = false;
}
break;
}
// Capture the mouse on SDL_WINDOWEVENT_ENTER if needed