summaryrefslogtreecommitdiff
path: root/indra/newview/llchiclet.cpp
diff options
context:
space:
mode:
authorIgor Borovkov <iborovkov@productengine.com>2009-11-03 14:25:08 +0200
committerIgor Borovkov <iborovkov@productengine.com>2009-11-03 14:25:08 +0200
commit24179cbcc609953ec05c75bcdad5b042e1d62e92 (patch)
treedcdba2fa6c93997d31f55ff1c358ebaeeb0a9bdf /indra/newview/llchiclet.cpp
parent645e2588511ff55b773e22fe3c9ee2c4de37843c (diff)
fixed normal EXT-1131 Message Well counts non-interactive notifications however chiclet-window is opened
--HG-- branch : product-engine
Diffstat (limited to 'indra/newview/llchiclet.cpp')
-rw-r--r--indra/newview/llchiclet.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/indra/newview/llchiclet.cpp b/indra/newview/llchiclet.cpp
index a854eb852f..1049348684 100644
--- a/indra/newview/llchiclet.cpp
+++ b/indra/newview/llchiclet.cpp
@@ -830,13 +830,21 @@ LLChicletPanel::~LLChicletPanel()
void im_chiclet_callback(LLChicletPanel* panel, const LLSD& data){
LLUUID session_id = data["session_id"].asUUID();
+ S32 unread = data["num_unread"].asInteger();
+
+ LLIMFloater* im_floater = LLIMFloater::findInstance(session_id);
+ if (im_floater && im_floater->getVisible())
+ {
+ unread = 0;
+ }
+
std::list<LLChiclet*> chiclets = LLIMChiclet::sFindChicletsSignal(session_id);
std::list<LLChiclet *>::iterator iter;
for (iter = chiclets.begin(); iter != chiclets.end(); iter++) {
LLChiclet* chiclet = *iter;
if (chiclet != NULL)
{
- chiclet->setCounter(data["num_unread"].asInteger());
+ chiclet->setCounter(unread);
}
else
{