diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-08-04 18:17:50 +0300 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2023-08-04 18:29:02 +0300 |
commit | a16babdf7d96fbbe345d9e0c5df178e48539751c (patch) | |
tree | 4d735fe46ee5c3ebd6636a6d5a251e46511d74e2 /indra | |
parent | b6cd14fc47cff62f6a30874d71be86d6639c32da (diff) |
SL-18049 Part 4; Adjustments and fixes
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llpanelvoicedevicesettings.cpp | 22 | ||||
-rw-r--r-- | indra/newview/llpanelvoicedevicesettings.h | 4 | ||||
-rw-r--r-- | indra/newview/llpanelvolumepulldown.cpp | 5 | ||||
-rw-r--r-- | indra/newview/llstatusbar.cpp | 4 | ||||
-rw-r--r-- | indra/newview/llvoiceclient.cpp | 10 | ||||
-rw-r--r-- | indra/newview/llvoiceclient.h | 2 | ||||
-rw-r--r-- | indra/newview/llvoicevivox.cpp | 5 | ||||
-rw-r--r-- | indra/newview/llvoicevivox.h | 3 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/panel_sound_devices.xml | 16 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/panel_volume_pulldown.xml | 6 |
10 files changed, 26 insertions, 51 deletions
diff --git a/indra/newview/llpanelvoicedevicesettings.cpp b/indra/newview/llpanelvoicedevicesettings.cpp index 5e1cf801b9..af57169f3b 100644 --- a/indra/newview/llpanelvoicedevicesettings.cpp +++ b/indra/newview/llpanelvoicedevicesettings.cpp @@ -32,6 +32,7 @@ // Viewer includes #include "llcombobox.h" #include "llsliderctrl.h" +#include "llstartup.h" #include "llviewercontrol.h" #include "llvoiceclient.h" #include "llvoicechannel.h" @@ -70,14 +71,14 @@ BOOL LLPanelVoiceDeviceSettings::postBuild() mCtrlInputDevices = getChild<LLComboBox>("voice_input_device"); mCtrlOutputDevices = getChild<LLComboBox>("voice_output_device"); - mRetryBtn = getChild<LLButton>("retry_btn"); + mUnmuteBtn = getChild<LLButton>("unmute_btn"); mCtrlInputDevices->setCommitCallback( boost::bind(&LLPanelVoiceDeviceSettings::onCommitInputDevice, this)); mCtrlOutputDevices->setCommitCallback( boost::bind(&LLPanelVoiceDeviceSettings::onCommitOutputDevice, this)); - mRetryBtn->setCommitCallback( - boost::bind(&LLPanelVoiceDeviceSettings::onCommitRetry, this)); + mUnmuteBtn->setCommitCallback( + boost::bind(&LLPanelVoiceDeviceSettings::onCommitUnmute, this)); mLocalizedDeviceNames[DEFAULT_DEVICE] = getString("default_text"); mLocalizedDeviceNames["No Device"] = getString("name_no_device"); @@ -115,16 +116,18 @@ void LLPanelVoiceDeviceSettings::draw() if (voice_enabled) { getChildView("wait_text")->setVisible( !is_in_tuning_mode && mUseTuningMode); - getChildView("muted_text")->setVisible(FALSE); - mRetryBtn->setVisible(FALSE); + getChildView("disabled_text")->setVisible(FALSE); + mUnmuteBtn->setVisible(FALSE); } else { getChildView("wait_text")->setVisible(FALSE); - getChildView("muted_text")->setVisible(TRUE); - static LLCachedControl<bool> voice_enabled(gSavedSettings, "EnableVoiceChat"); - mRetryBtn->setVisible(!voice_enabled || LLVoiceClient::isMutedVoiceInstance()); + static LLCachedControl<bool> chat_enabled(gSavedSettings, "EnableVoiceChat"); + // If voice isn't enabled, it is either disabled or muted + bool voice_disabled = chat_enabled() || LLStartUp::getStartupState() <= STATE_LOGIN_WAIT; + getChildView("disabled_text")->setVisible(voice_disabled); + mUnmuteBtn->setVisible(!voice_disabled); } LLPanel::draw(); @@ -357,8 +360,7 @@ void LLPanelVoiceDeviceSettings::onInputDevicesClicked() LLVoiceClient::getInstance()->refreshDeviceLists(false); // fill in the pop up menus again if needed. } -void LLPanelVoiceDeviceSettings::onCommitRetry() +void LLPanelVoiceDeviceSettings::onCommitUnmute() { gSavedSettings.setBOOL("EnableVoiceChat", TRUE); - LLVoiceClient::unmuteVoiceInstance(); } diff --git a/indra/newview/llpanelvoicedevicesettings.h b/indra/newview/llpanelvoicedevicesettings.h index 6b85d4e540..e704394d4a 100644 --- a/indra/newview/llpanelvoicedevicesettings.h +++ b/indra/newview/llpanelvoicedevicesettings.h @@ -55,14 +55,14 @@ protected: void onCommitOutputDevice(); void onOutputDevicesClicked(); void onInputDevicesClicked(); - void onCommitRetry(); + void onCommitUnmute(); F32 mMicVolume; std::string mInputDevice; std::string mOutputDevice; class LLComboBox *mCtrlInputDevices; class LLComboBox *mCtrlOutputDevices; - class LLButton *mRetryBtn; + class LLButton *mUnmuteBtn; BOOL mDevicesUpdated; bool mUseTuningMode; std::map<std::string, std::string> mLocalizedDeviceNames; diff --git a/indra/newview/llpanelvolumepulldown.cpp b/indra/newview/llpanelvolumepulldown.cpp index 17975a6e6d..09038ac95a 100644 --- a/indra/newview/llpanelvolumepulldown.cpp +++ b/indra/newview/llpanelvolumepulldown.cpp @@ -40,7 +40,6 @@ #include "llfloaterreg.h" #include "llfloaterpreference.h" #include "llsliderctrl.h" -#include "llvoicevivox.h" ///---------------------------------------------------------------------------- /// Class LLPanelVolumePulldown @@ -108,10 +107,6 @@ void LLPanelVolumePulldown::updateCheckbox(LLUICtrl* ctrl, const LLSD& user_data getChild<LLCheckBoxCtrl>("media_auto_play_combo")->setEnabled(music_enabled || media_enabled); } } - else if (control_name == "VoiceChat") - { - LLVivoxVoiceClient::unmuteVoiceInstance(); - } } void LLPanelVolumePulldown::onClickSetSounds() diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp index a9ec4ffbb4..0145380712 100644 --- a/indra/newview/llstatusbar.cpp +++ b/indra/newview/llstatusbar.cpp @@ -193,7 +193,7 @@ BOOL LLStatusBar::postBuild() gSavedSettings.getControl("MuteAudio")->getSignal()->connect(boost::bind(&LLStatusBar::onVolumeChanged, this, _2)); gSavedSettings.getControl("EnableVoiceChat")->getSignal()->connect(boost::bind(&LLStatusBar::onVoiceChanged, this, _2)); - if (gSavedSettings.getBOOL("EnableVoiceChat") && !LLVoiceClient::isMutedVoiceInstance()) + if (gSavedSettings.getBOOL("EnableVoiceChat")) { mBtnVolume->setImageUnselected(LLUI::getUIImage("Audio_Off")); } @@ -653,7 +653,7 @@ void LLStatusBar::onVolumeChanged(const LLSD& newvalue) void LLStatusBar::onVoiceChanged(const LLSD& newvalue) { - if (newvalue.asBoolean() && !LLVoiceClient::isMutedVoiceInstance()) + if (newvalue.asBoolean()) { mBtnVolume->setImageUnselected(LLUI::getUIImage("Audio_Off")); } diff --git a/indra/newview/llvoiceclient.cpp b/indra/newview/llvoiceclient.cpp index fab6ec3755..150b556284 100644 --- a/indra/newview/llvoiceclient.cpp +++ b/indra/newview/llvoiceclient.cpp @@ -555,16 +555,6 @@ void LLVoiceClient::setVoiceEnabled(bool enabled) } } -void LLVoiceClient::unmuteVoiceInstance() -{ - LLVivoxVoiceClient::unmuteVoiceInstance(); -} - -bool LLVoiceClient::isMutedVoiceInstance() -{ - return LLVivoxVoiceClient::isMutedVoiceInstance(); -} - void LLVoiceClient::updateMicMuteLogic() { // If not configured to use PTT, the mic should be open (otherwise the user will be unable to speak). diff --git a/indra/newview/llvoiceclient.h b/indra/newview/llvoiceclient.h index 7788efb8e1..aa67502908 100644 --- a/indra/newview/llvoiceclient.h +++ b/indra/newview/llvoiceclient.h @@ -403,8 +403,6 @@ public: void toggleUserPTTState(void); void inputUserControlState(bool down); // interpret any sort of up-down mic-open control input according to ptt-toggle prefs void setVoiceEnabled(bool enabled); - static void unmuteVoiceInstance(); - static bool isMutedVoiceInstance(); void setUsePTT(bool usePTT); void setPTTIsToggle(bool PTTIsToggle); diff --git a/indra/newview/llvoicevivox.cpp b/indra/newview/llvoicevivox.cpp index c89fe81a85..72e0412194 100644 --- a/indra/newview/llvoicevivox.cpp +++ b/indra/newview/llvoicevivox.cpp @@ -277,7 +277,6 @@ static void killGateway() bool LLVivoxVoiceClient::sShuttingDown = false; bool LLVivoxVoiceClient::sConnected = false; -bool LLVivoxVoiceClient::sVoiceInstanceMuted = false; LLPumpIO *LLVivoxVoiceClient::sPump = nullptr; LLVivoxVoiceClient::LLVivoxVoiceClient() : @@ -355,7 +354,6 @@ LLVivoxVoiceClient::LLVivoxVoiceClient() : sShuttingDown = false; sConnected = false; sPump = nullptr; - sVoiceInstanceMuted = LLAppViewer::instance()->isSecondInstance(); mSpeakerVolume = scale_speaker_volume(0); @@ -5645,8 +5643,7 @@ bool LLVivoxVoiceClient::voiceEnabled() { return gSavedSettings.getBOOL("EnableVoiceChat") && !gSavedSettings.getBOOL("CmdLineDisableVoice") && - !gNonInteractive && - !sVoiceInstanceMuted; + !gNonInteractive; } void LLVivoxVoiceClient::setLipSyncEnabled(BOOL enabled) diff --git a/indra/newview/llvoicevivox.h b/indra/newview/llvoicevivox.h index 9a4023422b..e3ab99c675 100644 --- a/indra/newview/llvoicevivox.h +++ b/indra/newview/llvoicevivox.h @@ -172,8 +172,6 @@ public: //@{ virtual bool voiceEnabled(); virtual void setVoiceEnabled(bool enabled); - static void unmuteVoiceInstance() { sVoiceInstanceMuted = false; } - static bool isMutedVoiceInstance() { return sVoiceInstanceMuted; } virtual BOOL lipSyncEnabled(); virtual void setLipSyncEnabled(BOOL enabled); virtual void setMuteMic(bool muted); // Set the mute state of the local mic. @@ -919,7 +917,6 @@ private: // This variables can last longer than vivox in coroutines so we need them as static static bool sShuttingDown; static bool sConnected; - static bool sVoiceInstanceMuted; // Second+ instance of viewer starts muted static LLPumpIO* sPump; LLEventMailDrop mVivoxPump; diff --git a/indra/newview/skins/default/xui/en/panel_sound_devices.xml b/indra/newview/skins/default/xui/en/panel_sound_devices.xml index bcb38a46cc..a1ce99c8be 100644 --- a/indra/newview/skins/default/xui/en/panel_sound_devices.xml +++ b/indra/newview/skins/default/xui/en/panel_sound_devices.xml @@ -168,7 +168,7 @@ width="20" /> <text type="string" - name="muted_text" + name="disabled_text" text_color="EmphasisColor" length="1" follows="right|top" @@ -176,16 +176,16 @@ layout="topleft" left_delta="-100" top_delta="5" - width="70"> - Muted + width="110"> + Disabled </text> <button follows="right|top" height="23" - image_overlay="Refresh_Off" layout="topleft" - left_pad="1" - name="retry_btn" - top_delta="-5" - width="23" /> + left_delta="0" + name="unmute_btn" + label="Unmute" + top_delta="-6" + width="110" /> </panel>
\ No newline at end of file diff --git a/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml b/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml index c7be790406..3c466022d8 100644 --- a/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml +++ b/indra/newview/skins/default/xui/en/panel_volume_pulldown.xml @@ -295,9 +295,5 @@ left_pad="5" name="enable_voice_check" width="110" - > - <check_box.commit_callback - function="Vol.updateCheckbox" - parameter="VoiceChat"/> - </check_box> + /> </panel> |