diff options
author | Mike Antipov <mantipov@productengine.com> | 2010-01-14 17:29:56 +0200 |
---|---|---|
committer | Mike Antipov <mantipov@productengine.com> | 2010-01-14 17:29:56 +0200 |
commit | 44e1f34f962c0e75172286b63f3514c60fee536b (patch) | |
tree | 98e154b36789cb8fbb7ecd964d1c076192c24d3c | |
parent | f606a5b300a5f4a84523761df4ba6f5198c06c10 (diff) |
Work on major bug EXT-3976 (Voice chat speaking indicators should only display when users are in the same voice channel)
-- refactoring: implemented processing of switching indicator on/off in the same way
--HG--
branch : product-engine
-rw-r--r-- | indra/newview/lloutputmonitorctrl.cpp | 31 |
1 files changed, 8 insertions, 23 deletions
diff --git a/indra/newview/lloutputmonitorctrl.cpp b/indra/newview/lloutputmonitorctrl.cpp index 80477c1041..47e519df8d 100644 --- a/indra/newview/lloutputmonitorctrl.cpp +++ b/indra/newview/lloutputmonitorctrl.cpp @@ -279,34 +279,19 @@ void LLOutputMonitorCtrl::onChange() // virtual void LLOutputMonitorCtrl::switchIndicator(bool switch_on) { - if (switch_on) + setVisible(TRUE); + + if (getParent() && getParent()->isInVisibleChain()) { + LL_DEBUGS("SpeakingIndicator") << "Indicator is in visible chain, notifying parent: " << mSpeakerId << LL_ENDL; setVisible((BOOL)switch_on); - if (getParent() && getParent()->isInVisibleChain()) - { - notifyParentVisibilityChanged(); - } - else - { - LL_DEBUGS("SpeakingIndicator") << "Indicator is not in visible chain, parent won't be notified: " << mSpeakerId << LL_ENDL; - mIsSwitchDirty = true; - mShouldSwitchOn = true; - } + notifyParentVisibilityChanged(); } else { - if (getParent() && getParent()->isInVisibleChain()) - { - LL_DEBUGS("SpeakingIndicator") << "Indicator is in visible chain, notifying parent: " << mSpeakerId << LL_ENDL; - setVisible((BOOL)switch_on); - notifyParentVisibilityChanged(); - } - else - { - LL_DEBUGS("SpeakingIndicator") << "Indicator is not in visible chain, parent won't be notified: " << mSpeakerId << LL_ENDL; - mIsSwitchDirty = true; - mShouldSwitchOn = false; - } + LL_DEBUGS("SpeakingIndicator") << "Indicator is not in visible chain, parent won't be notified: " << mSpeakerId << LL_ENDL; + mIsSwitchDirty = true; + mShouldSwitchOn = switch_on; } } |