summaryrefslogtreecommitdiff
path: root/indra/newview/llbottomtray.cpp
diff options
context:
space:
mode:
authorAndrew Dyukov <adyukov@productengine.com>2010-02-03 22:16:18 +0200
committerAndrew Dyukov <adyukov@productengine.com>2010-02-03 22:16:18 +0200
commitb52d2a2f1b0406becb80862686be7b6f2444006d (patch)
treedfcefbe6d3106f323b65f5cb9ac0b8836c717825 /indra/newview/llbottomtray.cpp
parenta1c3d608199a888584ce8d2172905175fcbd1796 (diff)
Fixed normal bug EXT-4648 (Right segment of Speak button is disabled if nearby voice chat is disabled in estate).
- Added methods for separate enabling of left and right parts of speak button and used them instead of simply enabling/disabling LLSpeakButton in bottomtray. - Made changes to reset() in LLCallFloater to show "no one near..." instead of "loading" in vcp for nearby chat in regions with disabled voice. --HG-- branch : product-engine
Diffstat (limited to 'indra/newview/llbottomtray.cpp')
-rw-r--r--indra/newview/llbottomtray.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/indra/newview/llbottomtray.cpp b/indra/newview/llbottomtray.cpp
index 0102e9488e..4c8cec3d30 100644
--- a/indra/newview/llbottomtray.cpp
+++ b/indra/newview/llbottomtray.cpp
@@ -280,7 +280,13 @@ void LLBottomTray::onChange(EStatusType status, const std::string &channelURI, b
break;
}
- mSpeakBtn->setEnabled(enable);
+ // We have to enable/disable right and left parts of speak button separately (EXT-4648)
+ mSpeakBtn->setSpeakBtnEnabled(enable);
+ // skipped to avoid button blinking
+ if (status != STATUS_JOINING && status!= STATUS_LEFT_CHANNEL)
+ {
+ mSpeakBtn->setFlyoutBtnEnabled(LLVoiceClient::voiceEnabled() && gVoiceClient->voiceWorking());
+ }
}
void LLBottomTray::onMouselookModeOut()
@@ -410,9 +416,10 @@ BOOL LLBottomTray::postBuild()
mSpeakPanel = getChild<LLPanel>("speak_panel");
mSpeakBtn = getChild<LLSpeakButton>("talk");
- // Speak button should be initially disabled because
+ // Both parts of speak button should be initially disabled because
// it takes some time between logging in to world and connecting to voice channel.
- mSpeakBtn->setEnabled(FALSE);
+ mSpeakBtn->setSpeakBtnEnabled(false);
+ mSpeakBtn->setFlyoutBtnEnabled(false);
// Localization tool doesn't understand custom buttons like <talk_button>
mSpeakBtn->setSpeakToolTip( getString("SpeakBtnToolTip") );