diff options
author | Andrey Lihatskiy <alihatskiy@productengine.com> | 2023-05-17 18:05:05 +0300 |
---|---|---|
committer | Andrey Lihatskiy <alihatskiy@productengine.com> | 2023-05-17 18:05:05 +0300 |
commit | 033b04f3883a0cc9024f45b5e9a0d792cf6dbb77 (patch) | |
tree | ac49627e31aabda8aaa4b21c74c5aee2b2ea46e8 /indra/newview/lltoast.cpp | |
parent | 07dc391ab76a8860d04bfb001cdc686cd576663d (diff) | |
parent | 5a70639b7992842a9f74ec81b11bac56608b8f2e (diff) |
Merge branch 'main' into DRTVWR-582-maint-U
# Conflicts:
# indra/newview/llagentlistener.cpp
# indra/newview/llcommanddispatcherlistener.cpp
# indra/newview/llfilepicker_mac.mm
# indra/newview/llworldmapview.cpp
Diffstat (limited to 'indra/newview/lltoast.cpp')
-rw-r--r-- | indra/newview/lltoast.cpp | 27 |
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() |