diff options
| author | Merov Linden <merov@lindenlab.com> | 2012-08-23 11:34:56 -0700 | 
|---|---|---|
| committer | Merov Linden <merov@lindenlab.com> | 2012-08-23 11:34:56 -0700 | 
| commit | ff95dd4a43fd888a9b7353abcbfa701e4844a3a5 (patch) | |
| tree | 7a3a64f9d9d34fe1d9e5c60d56bd629af7a8b50c /indra/newview | |
| parent | 4ea73df484d22815026367771f9d728d755f6274 (diff) | |
| parent | 02e4068baaa7bcc49186e9a02a022f3d6cb087ac (diff) | |
Merge pull from richard/viewer-chui
Diffstat (limited to 'indra/newview')
| -rw-r--r-- | indra/newview/llconversationloglist.cpp | 6 | ||||
| -rw-r--r-- | indra/newview/llconversationloglistitem.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llimfloater.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llimfloatercontainer.cpp | 1 | ||||
| -rw-r--r-- | indra/newview/llnotificationscripthandler.cpp | 42 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/notifications.xml | 3 | 
6 files changed, 29 insertions, 27 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: 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);  	} diff --git a/indra/newview/llimfloatercontainer.cpp b/indra/newview/llimfloatercontainer.cpp index 38ac3eb9e4..35b9f404c3 100644 --- a/indra/newview/llimfloatercontainer.cpp +++ b/indra/newview/llimfloatercontainer.cpp @@ -520,7 +520,6 @@ void LLIMFloaterContainer::removeConversationListItem(const LLUUID& uuid, bool c  			item->selectItem();  		}  	} -	return;  }  LLFolderViewItem* LLIMFloaterContainer::createConversationItemWidget(LLConversationItem* item) 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<LLScreenChannel*>(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<LLScreenChannel*>(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.    <notification     icon="notify.tga"     name="LoadWebPage" +   show_toast="false"     type="notify">  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    <notification     icon="notify.tga"     name="ScriptDialog" +   show_toast="false"     type="notify">  [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    <notification     icon="notify.tga"     name="ScriptDialogGroup" +   show_toast="false"     type="notify">      <tag>group</tag>  [GROUPNAME]'s '<nolink>[TITLE]</nolink>' | 
