diff --git a/interface/resources/qml/hifi/audio/Audio.qml b/interface/resources/qml/hifi/audio/Audio.qml index 9db19e72e2..d3bf6aca0a 100644 --- a/interface/resources/qml/hifi/audio/Audio.qml +++ b/interface/resources/qml/hifi/audio/Audio.qml @@ -186,15 +186,6 @@ Rectangle { backgroundOnColor: "#E3E3E3"; checked: muted; onClicked: { - if (pushToTalk && !checked) { - // disable push to talk if unmuting - if (bar.currentIndex === 0) { - AudioScriptingInterface.pushToTalkDesktop = false; - } - else { - AudioScriptingInterface.pushToTalkHMD = false; - } - } if (bar.currentIndex === 0) { AudioScriptingInterface.mutedDesktop = checked; } diff --git a/interface/src/scripting/Audio.cpp b/interface/src/scripting/Audio.cpp index e3e6138744..8d9e57ad93 100644 --- a/interface/src/scripting/Audio.cpp +++ b/interface/src/scripting/Audio.cpp @@ -101,6 +101,10 @@ void Audio::setMutedDesktop(bool isMuted) { } } }); + if (!isMuted && _settingsLoaded) { + // Disable Push-To-Talk if muted is changed to false. Settings also need to be loaded. + setPTTDesktop(isMuted); + } if (changed) { if (!isHMD) { emit mutedChanged(isMuted); @@ -128,6 +132,10 @@ void Audio::setMutedHMD(bool isMuted) { } } }); + if (!isMuted && _settingsLoaded) { + // Disable Push-To-Talk if muted is changed to false. Settings also need to be loaded. + setPTTHMD(isMuted); + } if (changed) { if (isHMD) { emit mutedChanged(isMuted); @@ -187,9 +195,9 @@ void Audio::setPTTDesktop(bool enabled) { _pttDesktop = enabled; } }); - if (enabled || _settingsLoaded) { + if (enabled && _settingsLoaded) { // Set to default behavior (muted for Desktop) on Push-To-Talk disable or when enabled. Settings also need to be loaded. - setMutedDesktop(true); + setMutedDesktop(enabled); } if (changed) { emit pushToTalkChanged(enabled); @@ -211,7 +219,7 @@ void Audio::setPTTHMD(bool enabled) { _pttHMD = enabled; } }); - if (enabled || _settingsLoaded) { + if (enabled && _settingsLoaded) { // Set to default behavior (unmuted for HMD) on Push-To-Talk disable or muted for when PTT is enabled. setMutedHMD(enabled); }