summaryrefslogtreecommitdiff
path: root/indra/newview/lltoast.cpp
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2023-01-20 23:43:48 +0200
committerAndrey Kleshchev <andreykproductengine@lindenlab.com>2023-01-21 00:04:11 +0200
commita94f907a17aa754a3c75dbf5491b57fdde466367 (patch)
tree74ee2ab715373c5044fad8ae58236c31df50be51 /indra/newview/lltoast.cpp
parent8ff51bdeb2e27187630fa6d76513f6e10f598114 (diff)
SL-18989 Saved notifications some times stops displaying information
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()