diff options
author | Loren Shih <seraph@lindenlab.com> | 2010-02-03 17:56:36 -0500 |
---|---|---|
committer | Loren Shih <seraph@lindenlab.com> | 2010-02-03 17:56:36 -0500 |
commit | d49e5bcbe26a4b148ce1d20a60d16581f41134c0 (patch) | |
tree | bd8caf39e789437574119304688ba3c71b7940cf /indra/newview/llbottomtray.cpp | |
parent | 1e47e5b42d352d5d838eeb96984dbf6497020e32 (diff) | |
parent | 9d71aae8273fd44dada82b1005c121255dc14dda (diff) |
automated merge viewer2.0->viewer2.0
Diffstat (limited to 'indra/newview/llbottomtray.cpp')
-rw-r--r-- | indra/newview/llbottomtray.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/indra/newview/llbottomtray.cpp b/indra/newview/llbottomtray.cpp index a2d594cfa2..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") ); @@ -474,6 +481,7 @@ void LLBottomTray::onContextMenuItemClicked(const LLSD& userdata) else if (item == "paste") { edit_box->paste(); + edit_box->setFocus(TRUE); } else if (item == "delete") { |