summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/llfloaterimnearbychathandler.cpp8
-rw-r--r--indra/newview/llimview.cpp19
2 files changed, 16 insertions, 11 deletions
diff --git a/indra/newview/llfloaterimnearbychathandler.cpp b/indra/newview/llfloaterimnearbychathandler.cpp
index f64cfd0245..8870d54cd2 100644
--- a/indra/newview/llfloaterimnearbychathandler.cpp
+++ b/indra/newview/llfloaterimnearbychathandler.cpp
@@ -604,6 +604,14 @@ void LLFloaterIMNearbyChatHandler::processChat(const LLChat& chat_msg,
toast_msg = chat_msg.mText;
}
+ //Don't show nearby toast, if conversation is visible but not focused
+ LLFloaterIMSessionTab* session_floater = LLFloaterIMSessionTab::getConversation(LLUUID());
+ if (session_floater
+ && session_floater->isInVisibleChain() && !session_floater->isMinimized()
+ && !(session_floater->getHost() && session_floater->getHost()->isMinimized()))
+ {
+ return;
+ }
//Will show toast when chat preference is set
if(gSavedSettings.getString("NotificationNearbyChatOptions") == "toast")
diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp
index cb03c1d234..433ddad35d 100644
--- a/indra/newview/llimview.cpp
+++ b/indra/newview/llimview.cpp
@@ -204,19 +204,16 @@ void on_new_message(const LLSD& msg)
bool conversation_floater_not_focused =
conversation_floater_is_closed || !im_box->hasFocus();
+ // Skip toasting and flashing if we have open window of IM with this session id
+ if (session_floater
+ && session_floater->isInVisibleChain()
+ && !session_floater->isMinimized()
+ && !(session_floater->getHost() && session_floater->getHost()->isMinimized()))
+ {
+ return;
+ }
if ("toast" == action)
{
- // Skip toasting and flashing if we have open window of IM with this session id
- if (session_floater
- && session_floater->isInVisibleChain()
- && session_floater->hasFocus()
- && !session_floater->isMinimized()
- && !(session_floater->getHost() && session_floater->getHost()->isMinimized())
- )
- {
- return;
- }
-
//User is not focused on conversation containing the message
if(session_floater_not_focused)
{