summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterimcontainer.cpp
diff options
context:
space:
mode:
authorGilbert Gonzales <gilbert@lindenlab.com>2013-01-17 13:52:51 -0800
committerGilbert Gonzales <gilbert@lindenlab.com>2013-01-17 13:52:51 -0800
commitfdf774f51fd24bb62d1e1fc580bd04df4547b9f8 (patch)
tree6d773c8a77cee95bdef6641705a092b23c0368c8 /indra/newview/llfloaterimcontainer.cpp
parent41a53e864924cdb192aad9b3906006d7e8d4c91e (diff)
CHUI-685 Problem: The notifications .xml file was cleared upon exit because removeIMNotification was being called and deleting inventory offers becaus they did not have a session id. Resolution: Now check to make sure that removeIMNotification only removes IMs (IMToast).
Diffstat (limited to 'indra/newview/llfloaterimcontainer.cpp')
-rw-r--r--indra/newview/llfloaterimcontainer.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp
index cc23449449..8f290ae7c1 100644
--- a/indra/newview/llfloaterimcontainer.cpp
+++ b/indra/newview/llfloaterimcontainer.cpp
@@ -1299,11 +1299,14 @@ BOOL LLFloaterIMContainer::selectConversationPair(const LLUUID& session_id, bool
if (widget && widget->getParentFolder())
{
widget->getParentFolder()->setSelection(widget, FALSE, FALSE);
- if(gAgent.isDoNotDisturb())
- {
- LLDoNotDisturbNotificationStorage::getInstance()->removeIMNotification(session_id);
- }
}
+
+ //When in DND mode, remove stored IM notifications
+ //Nearby chat (Null) IMs are not stored while in DND mode, so can ignore removal
+ if(gAgent.isDoNotDisturb() && session_id.notNull())
+ {
+ LLDoNotDisturbNotificationStorage::getInstance()->removeIMNotification(session_id);
+ }
}
/* floater processing */
@@ -1324,11 +1327,6 @@ BOOL LLFloaterIMContainer::selectConversationPair(const LLUUID& session_id, bool
// Switch to the conversation floater that is being selected
selectFloater(session_floater);
}
-
- if(gAgent.isDoNotDisturb())
- {
- LLDoNotDisturbNotificationStorage::getInstance()->removeIMNotification(session_id);
- }
}
// Set the focus on the selected floater