summaryrefslogtreecommitdiff
path: root/indra/newview/lltoast.cpp
diff options
context:
space:
mode:
authorAndreyL ProductEngine <alihatskiy@productengine.com>2018-06-22 11:08:36 +0300
committerAndreyL ProductEngine <alihatskiy@productengine.com>2018-06-22 11:08:36 +0300
commit21f19cb6f036787d93b186d6fcfd595ae6f03d87 (patch)
treeaa09de906e9c2f9c30670e81498f93620c67d9b8 /indra/newview/lltoast.cpp
parentb0e5bee0b41e050e14d4e315ffa967ba43f96feb (diff)
parentdc07de2f4a4c49d1877bf743b6f0d209392f6eb6 (diff)
Merged in lindenlab/viewer-release
Diffstat (limited to 'indra/newview/lltoast.cpp')
-rw-r--r--indra/newview/lltoast.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/indra/newview/lltoast.cpp b/indra/newview/lltoast.cpp
index edde7c8076..b9b05966bc 100644
--- a/indra/newview/lltoast.cpp
+++ b/indra/newview/lltoast.cpp
@@ -34,6 +34,7 @@
#include "llviewercontrol.h"
using namespace LLNotificationsUI;
+std::list<LLToast*> LLToast::sModalToastsList;
//--------------------------------------------------------------------------
LLToastLifeTimer::LLToastLifeTimer(LLToast* toast, F32 period)
@@ -143,6 +144,11 @@ LLToast::LLToast(const LLToast::Params& p)
{
mOnDeleteToastSignal.connect(p.on_delete_toast());
}
+
+ if (isModal())
+ {
+ sModalToastsList.push_front(this);
+ }
}
void LLToast::reshape(S32 width, S32 height, BOOL called_from_parent)
@@ -187,6 +193,15 @@ LLToast::~LLToast()
{
mOnToastDestroyedSignal(this);
}
+
+ if (isModal())
+ {
+ std::list<LLToast*>::iterator iter = std::find(sModalToastsList.begin(), sModalToastsList.end(), this);
+ if (iter != sModalToastsList.end())
+ {
+ sModalToastsList.erase(iter);
+ }
+ }
}
//--------------------------------------------------------------------------