[LLIMMgr/LLIMPanel Revision] Two last things
Handle display of popped out IM floaters better send_start_session_messages(): cut early if ids is empty, fallback on UDP if there is a region but there isn't ChatSessionRequest Cap
This commit is contained in:
@@ -226,6 +226,7 @@ bool send_start_session_messages(
|
||||
}
|
||||
else if ( dialog == IM_SESSION_CONFERENCE_START )
|
||||
{
|
||||
if (ids.empty()) return true;
|
||||
LLSD agents;
|
||||
for (int i = 0; i < (S32) ids.size(); i++)
|
||||
{
|
||||
@@ -234,10 +235,9 @@ bool send_start_session_messages(
|
||||
|
||||
//we have a new way of starting conference calls now
|
||||
LLViewerRegion* region = gAgent.getRegion();
|
||||
if (region)
|
||||
std::string url(region ? region->getCapability("ChatSessionRequest") : "");
|
||||
if (!url.empty())
|
||||
{
|
||||
std::string url = region->getCapability(
|
||||
"ChatSessionRequest");
|
||||
LLSD data;
|
||||
data["method"] = "start conference";
|
||||
data["session-id"] = temp_session_id;
|
||||
|
||||
@@ -157,10 +157,13 @@ public:
|
||||
|
||||
if ((mInvitiationType == LLIMMgr::INVITATION_TYPE_VOICE
|
||||
|| mInvitiationType == LLIMMgr::INVITATION_TYPE_IMMEDIATE)
|
||||
&& gIMMgr->hasSession(mSessionID))
|
||||
&& floater)
|
||||
{
|
||||
// always open IM window when connecting to voice
|
||||
LLFloaterChatterBox::showInstance(TRUE);
|
||||
if (floater->getParent() == gFloaterView)
|
||||
floater->open();
|
||||
else
|
||||
LLFloaterChatterBox::showInstance(TRUE);
|
||||
}
|
||||
|
||||
gIMMgr->clearPendingAgentListUpdates(mSessionID);
|
||||
|
||||
Reference in New Issue
Block a user