summaryrefslogtreecommitdiff
path: root/indra/newview/llvoicechannel.cpp
diff options
context:
space:
mode:
authorTofu Linden <tofu.linden@lindenlab.com>2009-11-12 15:35:08 +0000
committerTofu Linden <tofu.linden@lindenlab.com>2009-11-12 15:35:08 +0000
commit64c1146213a1f1313bd061229a962e4d827cb16d (patch)
tree61914e8a5300ad30d3cac49b07278e2de7181806 /indra/newview/llvoicechannel.cpp
parentc2b227c93973edc786c3f42772e06cd1760b610e (diff)
add Cancel button to outgoing call dialog, make it work (perhaps), make the name of the departing voice session more accurate (perhaps). WIP.
Diffstat (limited to 'indra/newview/llvoicechannel.cpp')
-rw-r--r--indra/newview/llvoicechannel.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/indra/newview/llvoicechannel.cpp b/indra/newview/llvoicechannel.cpp
index 164cb1a51a..b03e6c2426 100644
--- a/indra/newview/llvoicechannel.cpp
+++ b/indra/newview/llvoicechannel.cpp
@@ -306,8 +306,10 @@ void LLVoiceChannel::activate()
// activating the proximal channel between IM calls
LLVoiceChannel* old_channel = sCurrentVoiceChannel;
sCurrentVoiceChannel = this;
+ mCallDialogPayload["old_channel_name"] = "";
if (old_channel)
{
+ mCallDialogPayload["old_channel_name"] = old_channel->getSessionName();
old_channel->deactivate();
}
}
@@ -790,6 +792,9 @@ void LLVoiceChannelP2P::activate()
{
if (callStarted()) return;
+ LLVoiceChannel *voice = LLVoiceChannel::getCurrentVoiceChannel();
+ if (voice && !voice->getSessionName().empty())
+
LLVoiceChannel::activate();
if (callStarted())
@@ -872,16 +877,15 @@ void LLVoiceChannelP2P::setState(EState state)
toggleCallWindowIfNeeded(state);
// *HACK: open outgoing call floater if needed, might be better done elsewhere.
- LLSD payload;
- payload["session_id"] = mSessionID;
- payload["session_name"] = mSessionName;
- payload["other_user_id"] = mOtherUserID;
+ mCallDialogPayload["session_id"] = mSessionID;
+ mCallDialogPayload["session_name"] = mSessionName;
+ mCallDialogPayload["other_user_id"] = mOtherUserID;
if (!mReceivedCall && state == STATE_RINGING)
{
llinfos << "RINGINGGGGGGGG " << mSessionName << llendl;
if (!mSessionName.empty())
{
- LLFloaterReg::showInstance("outgoing_call", payload, TRUE);
+ LLFloaterReg::showInstance("outgoing_call", mCallDialogPayload, TRUE);
}
}