summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/llui/llfloater.cpp5
-rw-r--r--indra/llui/llfloater.h7
-rw-r--r--indra/newview/llimconversation.cpp5
-rw-r--r--indra/newview/llimconversation.h2
-rw-r--r--indra/newview/llnearbychat.cpp7
-rw-r--r--indra/newview/llnearbychat.h2
-rw-r--r--indra/newview/llnotificationscripthandler.cpp5
-rw-r--r--indra/newview/skins/default/xui/en/floater_im_container.xml4
-rw-r--r--indra/newview/skins/default/xui/en/floater_im_session.xml11
-rw-r--r--indra/newview/skins/default/xui/en/panel_block_list_sidetray.xml4
-rw-r--r--indra/newview/skins/default/xui/en/panel_people.xml16
11 files changed, 54 insertions, 14 deletions
diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp
index 029c47c726..58b17f74a8 100644
--- a/indra/llui/llfloater.cpp
+++ b/indra/llui/llfloater.cpp
@@ -240,6 +240,7 @@ LLFloater::LLFloater(const LLSD& key, const LLFloater::Params& p)
mTitle(p.title),
mShortTitle(p.short_title),
mSingleInstance(p.single_instance),
+ mIsReuseInitialized(p.reuse_instance.isProvided()),
mReuseInstance(p.reuse_instance.isProvided() ? p.reuse_instance : p.single_instance), // reuse single-instance floaters by default
mKey(key),
mCanTearOff(p.can_tear_off),
@@ -631,6 +632,10 @@ void LLFloater::setVisible( BOOL visible )
void LLFloater::setIsSingleInstance(BOOL is_single_instance)
{
mSingleInstance = is_single_instance;
+ if (!mIsReuseInitialized)
+ {
+ mReuseInstance = is_single_instance; // reuse single-instance floaters by default
+ }
}
diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h
index 4b738f88ea..07b79d5523 100644
--- a/indra/llui/llfloater.h
+++ b/indra/llui/llfloater.h
@@ -447,9 +447,10 @@ private:
LLUIString mTitle;
LLUIString mShortTitle;
- BOOL mSingleInstance; // TRUE if there is only ever one instance of the floater
- bool mReuseInstance; // true if we want to hide the floater when we close it instead of destroying it
- std::string mInstanceName; // Store the instance name so we can remove ourselves from the list
+ BOOL mSingleInstance; // TRUE if there is only ever one instance of the floater
+ bool mReuseInstance; // true if we want to hide the floater when we close it instead of destroying it
+ bool mIsReuseInitialized; // true if mReuseInstance already set from parameters
+ std::string mInstanceName; // Store the instance name so we can remove ourselves from the list
BOOL mCanTearOff;
BOOL mCanMinimize;
diff --git a/indra/newview/llimconversation.cpp b/indra/newview/llimconversation.cpp
index 64f171ce8f..2ad7f9b193 100644
--- a/indra/newview/llimconversation.cpp
+++ b/indra/newview/llimconversation.cpp
@@ -42,13 +42,13 @@
const F32 REFRESH_INTERVAL = 0.2f;
-LLIMConversation::LLIMConversation(const LLUUID& session_id)
+LLIMConversation::LLIMConversation(const LLSD& session_id)
: LLTransientDockableFloater(NULL, true, session_id)
, mIsP2PChat(false)
, mExpandCollapseBtn(NULL)
, mTearOffBtn(NULL)
, mCloseBtn(NULL)
- , mSessionID(session_id)
+ , mSessionID(session_id.asUUID())
, mParticipantList(NULL)
, mChatHistory(NULL)
, mInputEditor(NULL)
@@ -424,6 +424,7 @@ void LLIMConversation::updateHeaderAndToolbar()
mExpandCollapseBtn->setEnabled(!is_torn_off || !mIsP2PChat);
mTearOffBtn->setImageOverlay(getString(is_torn_off? "return_icon" : "tear_off_icon"));
+ mTearOffBtn->setToolTip(getString(!is_torn_off? "tooltip_to_separate_window" : "tooltip_to_main_window"));
mCloseBtn->setVisible(!is_torn_off && !mIsNearbyChat);
diff --git a/indra/newview/llimconversation.h b/indra/newview/llimconversation.h
index bad5eaa99f..c54081d316 100644
--- a/indra/newview/llimconversation.h
+++ b/indra/newview/llimconversation.h
@@ -47,7 +47,7 @@ class LLIMConversation
public:
LOG_CLASS(LLIMConversation);
- LLIMConversation(const LLUUID& session_id);
+ LLIMConversation(const LLSD& session_id);
~LLIMConversation();
// reload all message with new settings of visual modes
diff --git a/indra/newview/llnearbychat.cpp b/indra/newview/llnearbychat.cpp
index 76626bd5a6..71c4938ae9 100644
--- a/indra/newview/llnearbychat.cpp
+++ b/indra/newview/llnearbychat.cpp
@@ -88,7 +88,7 @@ static LLChatTypeTrigger sChatTypeTriggers[] = {
LLNearbyChat::LLNearbyChat(const LLSD& llsd)
-: LLIMConversation(llsd.asUUID()),
+: LLIMConversation(llsd),
//mOutputMonitor(NULL),
mSpeakerMgr(NULL),
mExpandedHeight(COLLAPSED_HEIGHT + EXPANDED_HEIGHT)
@@ -96,16 +96,15 @@ LLNearbyChat::LLNearbyChat(const LLSD& llsd)
mIsP2PChat = false;
mIsNearbyChat = true;
setIsChrome(TRUE);
- mKey = LLSD(LLUUID());
mSpeakerMgr = LLLocalSpeakerMgr::getInstance();
mSessionID = LLUUID();
- setName("nearby_chat");
- setIsSingleInstance(TRUE);
}
+
//virtual
BOOL LLNearbyChat::postBuild()
{
+ setIsSingleInstance(TRUE);
BOOL result = LLIMConversation::postBuild();
mInputEditor->setCommitCallback(boost::bind(&LLNearbyChat::onChatBoxCommit, this));
mInputEditor->setKeystrokeCallback(boost::bind(&onChatBoxKeystroke, _1, this));
diff --git a/indra/newview/llnearbychat.h b/indra/newview/llnearbychat.h
index 648098113a..3987212e4c 100644
--- a/indra/newview/llnearbychat.h
+++ b/indra/newview/llnearbychat.h
@@ -45,7 +45,7 @@ class LLNearbyChat
{
public:
// constructor for inline chat-bars (e.g. hosted in chat history window)
- LLNearbyChat(const LLSD& key = LLSD());
+ LLNearbyChat(const LLSD& key = LLSD(LLUUID()));
~LLNearbyChat() {}
/*virtual*/ BOOL postBuild();
diff --git a/indra/newview/llnotificationscripthandler.cpp b/indra/newview/llnotificationscripthandler.cpp
index 5dcd84b400..290a81f91c 100644
--- a/indra/newview/llnotificationscripthandler.cpp
+++ b/indra/newview/llnotificationscripthandler.cpp
@@ -109,7 +109,7 @@ bool LLScriptHandler::processNotification(const LLNotificationPtr& notification)
void LLScriptHandler::onDelete( LLNotificationPtr notification )
{
- if(notification->hasFormElements())
+ if(notification->hasFormElements() && !notification->canShowToast())
{
LLScriptFloaterManager::getInstance()->onRemoveNotification(notification->getID());
}
@@ -128,10 +128,11 @@ void LLScriptHandler::onDeleteToast(LLToast* toast)
// in this case listener is a SysWellWindow and it will remove a corresponding item from its list
LLNotificationPtr notification = LLNotifications::getInstance()->find(toast->getNotificationID());
- if( notification && notification->hasFormElements())
+ if( notification && notification->hasFormElements() && !notification->canShowToast())
{
LLScriptFloaterManager::getInstance()->onRemoveNotification(notification->getID());
}
+
}
diff --git a/indra/newview/skins/default/xui/en/floater_im_container.xml b/indra/newview/skins/default/xui/en/floater_im_container.xml
index 413e66738d..d23ff28fd0 100644
--- a/indra/newview/skins/default/xui/en/floater_im_container.xml
+++ b/indra/newview/skins/default/xui/en/floater_im_container.xml
@@ -62,6 +62,7 @@
layout="topleft"
left="10"
name="sort_btn"
+ tool_tip="View/sort options"
top="5"
width="31" />
<button
@@ -75,7 +76,7 @@
top="5"
left_pad="4"
name="add_btn"
- tool_tip="Add button on the left panel"
+ tool_tip="Start a new conversation"
width="31"/>
</layout_panel>
<layout_panel
@@ -94,6 +95,7 @@
top="5"
left="5"
name="expand_collapse_btn"
+ tool_tip="Collapse/Expand this list"
width="31" />
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/en/floater_im_session.xml b/indra/newview/skins/default/xui/en/floater_im_session.xml
index d6d48130ab..5c74f7f9bb 100644
--- a/indra/newview/skins/default/xui/en/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/en/floater_im_session.xml
@@ -37,6 +37,12 @@
<floater.string
name="multiple_participants_added"
value="[NAME] were invited to the conversation."/>
+ <floater.string
+ name="tooltip_to_separate_window"
+ value="Move this conversation to a separate window"/>
+ <floater.string
+ name="tooltip_to_main_window"
+ value="Move this conversation back to main window"/>
<view
follows="all"
layout="topleft"
@@ -64,6 +70,7 @@
layout="topleft"
left="5"
name="view_options_btn"
+ tool_tip="View/sort options"
top="5"
width="31" />
<button
@@ -78,6 +85,7 @@
top="5"
left_pad="4"
name="add_btn"
+ tool_tip="Add someone to this conversation"
width="31"/>
<button
follows="top|left"
@@ -90,6 +98,7 @@
top="5"
left_pad="4"
name="voice_call_btn"
+ tool_tip="Open voice connection"
width="31"/>
<button
follows="right|top"
@@ -102,6 +111,7 @@
top="5"
left="283"
name="close_btn"
+ tool_tip="End this conversation"
width="31" />
<button
follows="right|top"
@@ -114,6 +124,7 @@
top="5"
left_pad="5"
name="expand_collapse_btn"
+ tool_tip="Collapse/Expand this pane"
width="31" />
<button
follows="right|top"
diff --git a/indra/newview/skins/default/xui/en/panel_block_list_sidetray.xml b/indra/newview/skins/default/xui/en/panel_block_list_sidetray.xml
index 24f7d44cce..53d0252215 100644
--- a/indra/newview/skins/default/xui/en/panel_block_list_sidetray.xml
+++ b/indra/newview/skins/default/xui/en/panel_block_list_sidetray.xml
@@ -43,6 +43,7 @@
menu_filename="menu_people_blocked_gear.xml"
menu_position="bottomleft"
name="blocked_gear_btn"
+ tool_tip="Actions on selected person or object"
top="3"
width="31" />
<menu_button
@@ -57,6 +58,7 @@
menu_filename="menu_people_blocked_view.xml"
menu_position="bottomleft"
name="view_btn"
+ tool_tip="Sort options"
top_delta="0"
width="31" />
<menu_button
@@ -71,6 +73,7 @@
menu_filename="menu_people_blocked_plus.xml"
menu_position="bottomleft"
name="plus_btn"
+ tool_tip="Pick a Resident or an object to block"
top_delta="0"
width="31"/>
<button
@@ -83,6 +86,7 @@
left_pad="2"
layout="topleft"
name="unblock_btn"
+ tool_tip="Remove Resident or object from blocked list"
top_delta="0"
width="31"/>
</panel>
diff --git a/indra/newview/skins/default/xui/en/panel_people.xml b/indra/newview/skins/default/xui/en/panel_people.xml
index 09156b41b5..7433ad828d 100644
--- a/indra/newview/skins/default/xui/en/panel_people.xml
+++ b/indra/newview/skins/default/xui/en/panel_people.xml
@@ -116,6 +116,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
layout="topleft"
left_pad="7"
name="gear_btn"
+ tool_tip="Actions on selected person"
top="3"
width="31" />
<menu_button
@@ -130,6 +131,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
menu_filename="menu_people_nearby_view.xml"
menu_position="bottomleft"
name="nearby_view_btn"
+ tool_tip="View/sort options"
top_delta="0"
width="31" />
<button
@@ -142,6 +144,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
layout="topleft"
left_pad="2"
name="add_friend_btn"
+ tool_tip="Offer friendship to a resident"
top_delta="0"
width="31">
<commit_callback
@@ -158,6 +161,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
left_pad="2"
layout="topleft"
name="nearby_del_btn"
+ tool_tip="Remove selected person as a friend"
top_delta="0"
width="31">
<commit_callback
@@ -264,6 +268,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
layout="topleft"
left_pad="8"
name="gear_btn"
+ tool_tip="Actions on selected person"
top="3"
width="31" />
<menu_button
@@ -278,6 +283,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
menu_filename="menu_people_friends_view.xml"
menu_position="bottomleft"
name="friends_view_btn"
+ tool_tip="View/sort options"
top_delta="0"
width="31" />
<button
@@ -290,6 +296,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
layout="topleft"
left_pad="2"
name="friends_add_btn"
+ tool_tip="Offer friendship to a resident"
top_delta="0"
width="31">
<commit_callback
@@ -305,6 +312,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
left_pad="2"
layout="topleft"
name="friends_del_btn"
+ tool_tip="Remove selected person as a friend"
top_delta="0"
width="31">
<commit_callback
@@ -419,6 +427,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
layout="topleft"
left_pad="8"
name="groups_gear_btn"
+ tool_tip="Actions on selected group"
top="3"
width="31" />
<menu_button
@@ -433,6 +442,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
menu_filename="menu_people_groups_view.xml"
menu_position="bottomleft"
name="groups_view_btn"
+ tool_tip="View/sort options"
top_delta="0"
width="31" />
<menu_button
@@ -447,6 +457,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
menu_filename="menu_group_plus.xml"
menu_position="bottomleft"
name="plus_btn"
+ tool_tip="Join group/Create new group"
top_delta="0"
width="31">
<validate_callback
@@ -462,6 +473,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
left_pad="2"
layout="topleft"
name="minus_btn"
+ tool_tip="Leave selected group"
top_delta="0"
width="31">
<commit_callback
@@ -527,6 +539,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
layout="topleft"
left_pad="8"
name="gear_btn"
+ tool_tip="Actions on selected person"
top="3"
width="31" />
<menu_button
@@ -541,6 +554,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
menu_filename="menu_people_recent_view.xml"
menu_position="bottomleft"
name="recent_view_btn"
+ tool_tip="View/sort options"
top_delta="0"
width="31" />
<button
@@ -553,6 +567,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
layout="topleft"
left_pad="2"
name="add_friend_btn"
+ tool_tip="Offer friendship to a resident"
top_delta="0"
width="31">
<commit_callback
@@ -569,6 +584,7 @@ Looking for people to hang out with? Try the [secondlife:///app/worldmap World M
left_pad="2"
layout="topleft"
name="recent_del_btn"
+ tool_tip="Remove selected person as a friend"
top_delta="0"
width="31">
<commit_callback