From 8922dec40039a10e770243f3047793f8501fe43a Mon Sep 17 00:00:00 2001 From: Seth ProductEngine Date: Tue, 21 Aug 2012 19:51:41 +0300 Subject: CHUI-293 CHUI-294 FIXED displaying Group Invite and Transfer Object as notifications, instead of displaying as messages from an object. Restored the exception in handling "LoadWebPage", "ScriptDialog" and "ScriptDialogGroup" notifications, that caused only those notifications to be shown as messages from an object. --- indra/newview/llnotificationscripthandler.cpp | 42 +++++++++++----------- .../newview/skins/default/xui/en/notifications.xml | 3 ++ 2 files changed, 24 insertions(+), 21 deletions(-) diff --git a/indra/newview/llnotificationscripthandler.cpp b/indra/newview/llnotificationscripthandler.cpp index 7e9c0d4f4b..5dcd84b400 100644 --- a/indra/newview/llnotificationscripthandler.cpp +++ b/indra/newview/llnotificationscripthandler.cpp @@ -78,33 +78,33 @@ bool LLScriptHandler::processNotification(const LLNotificationPtr& notification) } if (notification->canLogToIM()) - { - LLHandlerUtil::logToIMP2P(notification); - } + { + LLHandlerUtil::logToIMP2P(notification); + } - if(notification->hasFormElements()) + if(notification->hasFormElements() && !notification->canShowToast()) + { + LLScriptFloaterManager::getInstance()->onAddNotification(notification->getID()); + } + else + { + LLToastPanel* notify_box = LLToastPanel::buidPanelFromNotification(notification); + + LLToast::Params p; + p.notif_id = notification->getID(); + p.notification = notification; + p.panel = notify_box; + p.on_delete_toast = boost::bind(&LLScriptHandler::onDeleteToast, this, _1); + + LLScreenChannel* channel = dynamic_cast(mChannel.get()); + if(channel) { - LLScriptFloaterManager::getInstance()->onAddNotification(notification->getID()); + channel->addToast(p); } - else - { - LLToastPanel* notify_box = LLToastPanel::buidPanelFromNotification(notification); - - LLToast::Params p; - p.notif_id = notification->getID(); - p.notification = notification; - p.panel = notify_box; - p.on_delete_toast = boost::bind(&LLScriptHandler::onDeleteToast, this, _1); - - LLScreenChannel* channel = dynamic_cast(mChannel.get()); - if(channel) - { - channel->addToast(p); - } } return false; - } +} void LLScriptHandler::onDelete( LLNotificationPtr notification ) diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml index 64db7cd969..933135954f 100644 --- a/indra/newview/skins/default/xui/en/notifications.xml +++ b/indra/newview/skins/default/xui/en/notifications.xml @@ -6742,6 +6742,7 @@ If you stay in this region you will be logged out. Load web page [URL]? @@ -6844,6 +6845,7 @@ It is rare that such a request is legitimate. Do not allow access if you do not [NAME]'s '<nolink>[TITLE]</nolink>' [MESSAGE] @@ -6862,6 +6864,7 @@ It is rare that such a request is legitimate. Do not allow access if you do not group [GROUPNAME]'s '<nolink>[TITLE]</nolink>' -- cgit v1.2.3 From b2f2a8b21610ae6863b773333c60b18b818c047f Mon Sep 17 00:00:00 2001 From: AlexanderP ProductEngine Date: Wed, 22 Aug 2012 14:48:44 +0300 Subject: code style fix --- indra/newview/llimfloatercontainer.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index 1e136b721c..6127a9a19b 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -519,7 +519,6 @@ void LLIMFloaterContainer::removeConversationListItem(const LLUUID& uuid, bool c item->selectItem(); } } - return; } LLFolderViewItem* LLIMFloaterContainer::createConversationItemWidget(LLConversationItem* item) -- cgit v1.2.3 From 41c85d357c8793f5119246b79441dd1dad9aa563 Mon Sep 17 00:00:00 2001 From: Paul ProductEngine Date: Thu, 23 Aug 2012 18:07:35 +0300 Subject: CHUI-296 FIXED (Unread IM messages icon not showing in conversation log) - Sometimes IM floater with offline unread messages is visible but not in visible chain and the flag of offline unread messages is erroneously reset. So made condition of whether floater is visible more strict. --- indra/newview/llimfloater.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/indra/newview/llimfloater.cpp b/indra/newview/llimfloater.cpp index 5780ac52a5..1c6445610f 100644 --- a/indra/newview/llimfloater.cpp +++ b/indra/newview/llimfloater.cpp @@ -789,7 +789,7 @@ void LLIMFloater::setVisible(BOOL visible) } } - if (visible) + if (visible && isInVisibleChain()) { sIMFloaterShowedSignal(mSessionID); } -- cgit v1.2.3 From 02e4068baaa7bcc49186e9a02a022f3d6cb087ac Mon Sep 17 00:00:00 2001 From: Paul ProductEngine Date: Thu, 23 Aug 2012 18:19:13 +0300 Subject: CHUI-306 FIXED (Selecting IM option for Group in conversation log does not start an IM if you did not initiate the conversation) - To start group call or group chat, group_id should be passed as an argument to LLGrupActions, not participant_id. --- indra/newview/llconversationloglist.cpp | 6 +++--- indra/newview/llconversationloglistitem.cpp | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/indra/newview/llconversationloglist.cpp b/indra/newview/llconversationloglist.cpp index 0433719a89..257ec082a5 100644 --- a/indra/newview/llconversationloglist.cpp +++ b/indra/newview/llconversationloglist.cpp @@ -193,7 +193,7 @@ void LLConversationLogList::onCustomAction(const LLSD& userdata) break; case LLIMModel::LLIMSession::GROUP_SESSION: - LLGroupActions::startIM(selected_id); + LLGroupActions::startIM(getSelectedConversation()->getSessionID()); break; default: @@ -209,7 +209,7 @@ void LLConversationLogList::onCustomAction(const LLSD& userdata) break; case LLIMModel::LLIMSession::GROUP_SESSION: - LLGroupActions::startCall(selected_id); + LLGroupActions::startCall(getSelectedConversation()->getSessionID()); break; default: @@ -225,7 +225,7 @@ void LLConversationLogList::onCustomAction(const LLSD& userdata) break; case LLIMModel::LLIMSession::GROUP_SESSION: - LLGroupActions::show(selected_id); + LLGroupActions::show(getSelectedConversation()->getSessionID()); break; default: diff --git a/indra/newview/llconversationloglistitem.cpp b/indra/newview/llconversationloglistitem.cpp index 9f7c588989..dddf216592 100644 --- a/indra/newview/llconversationloglistitem.cpp +++ b/indra/newview/llconversationloglistitem.cpp @@ -168,7 +168,7 @@ void LLConversationLogListItem::onDoubleClick() break; case LLIMModel::LLIMSession::GROUP_SESSION: - LLGroupActions::startIM(mConversation->getParticipantID()); + LLGroupActions::startIM(mConversation->getSessionID()); break; default: -- cgit v1.2.3