diff options
-rw-r--r-- | indra/newview/lltexturectrl.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/indra/newview/lltexturectrl.cpp b/indra/newview/lltexturectrl.cpp index 1a2a10f721..1396a8546d 100644 --- a/indra/newview/lltexturectrl.cpp +++ b/indra/newview/lltexturectrl.cpp @@ -1096,6 +1096,10 @@ void LLTextureCtrl::setVisible( BOOL visible ) void LLTextureCtrl::setEnabled( BOOL enabled ) { LLFloaterTexturePicker* floaterp = (LLFloaterTexturePicker*)mFloaterHandle.get(); + if( floaterp ) + { + floaterp->setActive(enabled); + } if( enabled ) { std::string tooltip; @@ -1110,11 +1114,6 @@ void LLTextureCtrl::setEnabled( BOOL enabled ) closeDependentFloater(); } - if( floaterp ) - { - floaterp->setActive(enabled); - } - mCaption->setEnabled( enabled ); LLView::setEnabled( enabled ); @@ -1215,9 +1214,10 @@ void LLTextureCtrl::showPicker(BOOL take_focus) void LLTextureCtrl::closeDependentFloater() { LLFloaterTexturePicker* floaterp = (LLFloaterTexturePicker*)mFloaterHandle.get(); - if( floaterp ) + if( floaterp && floaterp->isInVisibleChain()) { floaterp->setOwner(NULL); + floaterp->setVisible(FALSE); floaterp->closeFloater(); } } |