summaryrefslogtreecommitdiff
path: root/indra/newview/lltoast.cpp
diff options
context:
space:
mode:
authorJonathan "Geenz" Goodman <geenz@geenzo.com>2023-05-22 10:42:18 -0700
committerJonathan "Geenz" Goodman <geenz@geenzo.com>2023-05-22 10:42:18 -0700
commitb273edd1253e088ea864d399342a0cba2fd0aaa9 (patch)
tree317ff7c05eacccb80b3fe06d65d8f64d7ff6019d /indra/newview/lltoast.cpp
parentda72081582c3fd376e228cf0fceaef2ecb1948a9 (diff)
parentc6fc951f34c665d0f1cd6dcff1bea114fb0ff1a0 (diff)
Merge branch 'DRTVWR-559' into DRTVWR-583
Diffstat (limited to 'indra/newview/lltoast.cpp')
-rw-r--r--indra/newview/lltoast.cpp27
1 files changed, 17 insertions, 10 deletions
diff --git a/indra/newview/lltoast.cpp b/indra/newview/lltoast.cpp
index bf56a10d4d..223aaad811 100644
--- a/indra/newview/lltoast.cpp
+++ b/indra/newview/lltoast.cpp
@@ -220,7 +220,11 @@ void LLToast::hide()
/*virtual*/
void LLToast::setFocus(BOOL b)
{
- if (b && !hasFocus() && mPanel)
+ if (b
+ && !hasFocus()
+ && mPanel
+ && mWrapperPanel
+ && !mWrapperPanel->getChildList()->empty())
{
LLModalDialog::setFocus(TRUE);
// mostly for buttons
@@ -416,15 +420,18 @@ void LLToast::setVisible(BOOL show)
//hide "hide" button in case toast was hidden without mouse_leave
if(mHideBtn)
mHideBtn->setVisible(show);
- }
- LLFloater::setVisible(show);
- if(mPanel)
- {
- if(!mPanel->isDead())
- {
- mPanel->setVisible(show);
- }
- }
+ }
+ LLFloater::setVisible(show);
+ if (mPanel
+ && !mPanel->isDead()
+ && mWrapperPanel
+ && !mWrapperPanel->getChildList()->empty()
+ // LLInspectToast can take over, but LLToast still appears to act like a data storage
+ && mPanel->getParent() == mWrapperPanel
+ )
+ {
+ mPanel->setVisible(show);
+ }
}
void LLToast::updateHoveredState()