diff options
author | Paul Guslisty <pguslisty@productengine.com> | 2010-11-29 16:48:58 +0200 |
---|---|---|
committer | Paul Guslisty <pguslisty@productengine.com> | 2010-11-29 16:48:58 +0200 |
commit | 2f0919b175444221783942ce6f49e2e04a725227 (patch) | |
tree | 4cd441b1870ff58ff86d8b673f7def8810fbc21f /indra/llui/llfloater.cpp | |
parent | bca2162c4fac7f80f6137f4a8bae9bc7740eb8e1 (diff) |
STORM-688 FIXED Sidebar becomes semitransparent if dock semitransparent side panel back to the Sidebar
- Before docking the tab back to the sidetray, set floater's children to non-transparent state
- After detaching tab from the sidetray there is no need to set manually floater's children transparency. It happens automatically when floater gets focus.
Diffstat (limited to 'indra/llui/llfloater.cpp')
-rw-r--r-- | indra/llui/llfloater.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index 720ff86aa7..da5dad6b82 100644 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -1189,7 +1189,7 @@ void LLFloater::setFocus( BOOL b ) last_focus->setFocus(TRUE); } } - updateChildrenTransparency(this); + updateChildrenTransparency(this, b ? TT_ACTIVE : TT_INACTIVE); } // virtual @@ -1768,13 +1768,11 @@ void LLFloater::drawShadow(LLPanel* panel) llround(shadow_offset)); } -void LLFloater::updateChildrenTransparency(LLView* ctrl) +void LLFloater::updateChildrenTransparency(LLView* ctrl, ETypeTransparency transparency_type) { child_list_t children = *ctrl->getChildList(); child_list_t::iterator it = children.begin(); - ETypeTransparency transparency_type = hasFocus() ? TT_ACTIVE : TT_INACTIVE; - for(; it != children.end(); ++it) { LLUICtrl* ui_ctrl = dynamic_cast<LLUICtrl*>(*it); @@ -1782,10 +1780,15 @@ void LLFloater::updateChildrenTransparency(LLView* ctrl) { ui_ctrl->setTransparencyType(transparency_type); } - updateChildrenTransparency(*it); + updateChildrenTransparency(*it, transparency_type); } } +void LLFloater::updateChildrenTransparency(ETypeTransparency transparency_type) +{ + updateChildrenTransparency(this, transparency_type); +} + void LLFloater::setCanMinimize(BOOL can_minimize) { // if removing minimize/restore button programmatically, |