summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
Diffstat (limited to 'indra')
-rw-r--r--indra/llui/llfolderview.cpp5
-rw-r--r--indra/llui/llfolderview.h1
-rwxr-xr-xindra/newview/app_settings/settings.xml2
-rw-r--r--indra/newview/app_settings/settings_per_account.xml2
-rw-r--r--indra/newview/llchiclet.cpp2
-rw-r--r--indra/newview/llconversationlog.cpp23
-rw-r--r--indra/newview/llconversationmodel.cpp67
-rwxr-xr-xindra/newview/llconversationmodel.h2
-rw-r--r--indra/newview/llfloaterimcontainer.cpp1
-rw-r--r--indra/newview/llimview.cpp2
-rw-r--r--indra/newview/skins/default/textures/bottomtray/Notices_Unread.pngbin0 -> 3693 bytes
-rw-r--r--indra/newview/skins/default/xui/en/floater_conversation_log.xml163
-rw-r--r--indra/newview/skins/default/xui/en/floater_im_container.xml7
-rw-r--r--indra/newview/skins/default/xui/en/floater_im_session.xml2
-rw-r--r--indra/newview/skins/default/xui/en/menu_conversation.xml7
15 files changed, 152 insertions, 134 deletions
diff --git a/indra/llui/llfolderview.cpp b/indra/llui/llfolderview.cpp
index a33ffc4240..7ae79d94fe 100644
--- a/indra/llui/llfolderview.cpp
+++ b/indra/llui/llfolderview.cpp
@@ -1913,14 +1913,15 @@ void LLFolderView::updateMenuOptions(LLMenuGL* menu)
// Successively filter out invalid options
- U32 flags = FIRST_SELECTED_ITEM;
+ U32 multi_select_flag = (mSelectedItems.size() > 1 ? ITEM_IN_MULTI_SELECTION : 0x0);
+ U32 flags = multi_select_flag | FIRST_SELECTED_ITEM;
for (selected_items_t::iterator item_itor = mSelectedItems.begin();
item_itor != mSelectedItems.end();
++item_itor)
{
LLFolderViewItem* selected_item = (*item_itor);
selected_item->buildContextMenu(*menu, flags);
- flags = 0x0;
+ flags = multi_select_flag;
}
addNoOptions(menu);
diff --git a/indra/llui/llfolderview.h b/indra/llui/llfolderview.h
index d4a1434c73..2ee7417240 100644
--- a/indra/llui/llfolderview.h
+++ b/indra/llui/llfolderview.h
@@ -400,5 +400,6 @@ public:
// Flags for buildContextMenu()
const U32 SUPPRESS_OPEN_ITEM = 0x1;
const U32 FIRST_SELECTED_ITEM = 0x2;
+const U32 ITEM_IN_MULTI_SELECTION = 0x4;
#endif // LL_LLFOLDERVIEW_H
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index ebc915ec5a..507eb33f2d 100755
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -13173,7 +13173,7 @@
<key>Type</key>
<string>F32</string>
<key>Value</key>
- <real>0.25</real>
+ <real>0.5</real>
</map>
<key>WindLightUseAtmosShaders</key>
<map>
diff --git a/indra/newview/app_settings/settings_per_account.xml b/indra/newview/app_settings/settings_per_account.xml
index ca22041671..4ff494fbfb 100644
--- a/indra/newview/app_settings/settings_per_account.xml
+++ b/indra/newview/app_settings/settings_per_account.xml
@@ -53,7 +53,7 @@
<key>Type</key>
<string>S32</string>
<key>Value</key>
- <integer>268</integer>
+ <integer>205</integer>
</map>
<key>ConversationsMessagePaneCollapsed</key>
<map>
diff --git a/indra/newview/llchiclet.cpp b/indra/newview/llchiclet.cpp
index 2fdcb17570..3dbb43c657 100644
--- a/indra/newview/llchiclet.cpp
+++ b/indra/newview/llchiclet.cpp
@@ -76,7 +76,7 @@ LLSysWellChiclet::LLSysWellChiclet(const Params& p)
LLSysWellChiclet::~LLSysWellChiclet()
{
- delete mFlashToLitTimer;
+ mFlashToLitTimer->unset();
}
void LLSysWellChiclet::setCounter(S32 counter)
diff --git a/indra/newview/llconversationlog.cpp b/indra/newview/llconversationlog.cpp
index 1171b3db41..eb3a3731ee 100644
--- a/indra/newview/llconversationlog.cpp
+++ b/indra/newview/llconversationlog.cpp
@@ -187,16 +187,23 @@ void LLConversationLogFriendObserver::changed(U32 mask)
LLConversationLog::LLConversationLog()
{
- LLControlVariable* ctrl = gSavedPerAccountSettings.getControl("LogInstantMessages").get();
- if (ctrl)
+ LLControlVariable* log_instant_message = gSavedPerAccountSettings.getControl("LogInstantMessages").get();
+ LLControlVariable* keep_convers_log = gSavedSettings.getControl("KeepConversationLogTranscripts").get();
+ bool is_log_message = false;
+ bool is_keep_log = false;
+
+ if (log_instant_message)
{
- ctrl->getSignal()->connect(boost::bind(&LLConversationLog::enableLogging, this, _2));
- if (ctrl->getValue().asBoolean()
- && gSavedSettings.getBOOL("KeepConversationLogTranscripts"))
- {
- enableLogging(true);
- }
+ log_instant_message->getSignal()->connect(boost::bind(&LLConversationLog::enableLogging, this, _2));
+ is_log_message = log_instant_message->getValue().asBoolean();
}
+ if (keep_convers_log)
+ {
+ keep_convers_log->getSignal()->connect(boost::bind(&LLConversationLog::enableLogging, this, _2));
+ is_keep_log = keep_convers_log->getValue().asBoolean();
+ }
+
+ enableLogging(is_log_message && is_keep_log);
}
void LLConversationLog::enableLogging(bool enable)
diff --git a/indra/newview/llconversationmodel.cpp b/indra/newview/llconversationmodel.cpp
index d03ad92fbc..005439301a 100644
--- a/indra/newview/llconversationmodel.cpp
+++ b/indra/newview/llconversationmodel.cpp
@@ -102,35 +102,44 @@ void LLConversationItem::showProperties(void)
{
}
-void LLConversationItem::buildParticipantMenuOptions(menuentry_vec_t& items)
-{
- items.push_back(std::string("view_profile"));
- items.push_back(std::string("im"));
- items.push_back(std::string("offer_teleport"));
- items.push_back(std::string("voice_call"));
- items.push_back(std::string("chat_history"));
- items.push_back(std::string("separator_chat_history"));
- items.push_back(std::string("add_friend"));
- items.push_back(std::string("remove_friend"));
- items.push_back(std::string("invite_to_group"));
- items.push_back(std::string("separator_invite_to_group"));
- items.push_back(std::string("map"));
- items.push_back(std::string("share"));
- items.push_back(std::string("pay"));
- items.push_back(std::string("block_unblock"));
- items.push_back(std::string("MuteText"));
-
- if(this->getType() != CONV_SESSION_1_ON_1 && mDisplayModeratorOptions)
+void LLConversationItem::buildParticipantMenuOptions(menuentry_vec_t& items, U32 flags)
+{
+ if (flags & ITEM_IN_MULTI_SELECTION)
{
- items.push_back(std::string("Moderator Options Separator"));
- items.push_back(std::string("Moderator Options"));
- items.push_back(std::string("AllowTextChat"));
- items.push_back(std::string("moderate_voice_separator"));
- items.push_back(std::string("ModerateVoiceToggleMuteSelected"));
- items.push_back(std::string("ModerateVoiceMute"));
- items.push_back(std::string("ModerateVoiceUnmute"));
+ items.push_back(std::string("im"));
+ items.push_back(std::string("offer_teleport"));
+ items.push_back(std::string("voice_call"));
+ items.push_back(std::string("remove_friends"));
+ }
+ else
+ {
+ items.push_back(std::string("view_profile"));
+ items.push_back(std::string("im"));
+ items.push_back(std::string("offer_teleport"));
+ items.push_back(std::string("voice_call"));
+ items.push_back(std::string("chat_history"));
+ items.push_back(std::string("separator_chat_history"));
+ items.push_back(std::string("add_friend"));
+ items.push_back(std::string("remove_friend"));
+ items.push_back(std::string("invite_to_group"));
+ items.push_back(std::string("separator_invite_to_group"));
+ items.push_back(std::string("map"));
+ items.push_back(std::string("share"));
+ items.push_back(std::string("pay"));
+ items.push_back(std::string("block_unblock"));
+ items.push_back(std::string("MuteText"));
+
+ if ((getType() != CONV_SESSION_1_ON_1) && mDisplayModeratorOptions)
+ {
+ items.push_back(std::string("Moderator Options Separator"));
+ items.push_back(std::string("Moderator Options"));
+ items.push_back(std::string("AllowTextChat"));
+ items.push_back(std::string("moderate_voice_separator"));
+ items.push_back(std::string("ModerateVoiceToggleMuteSelected"));
+ items.push_back(std::string("ModerateVoiceMute"));
+ items.push_back(std::string("ModerateVoiceUnmute"));
+ }
}
-
}
//
@@ -306,7 +315,7 @@ void LLConversationItemSession::buildContextMenu(LLMenuGL& menu, U32 flags)
{
items.push_back(std::string("close_conversation"));
items.push_back(std::string("separator_disconnect_from_voice"));
- buildParticipantMenuOptions(items);
+ buildParticipantMenuOptions(items, flags);
}
else if(this->getType() == CONV_SESSION_GROUP)
{
@@ -440,7 +449,7 @@ void LLConversationItemParticipant::buildContextMenu(LLMenuGL& menu, U32 flags)
menuentry_vec_t items;
menuentry_vec_t disabled_items;
- buildParticipantMenuOptions(items);
+ buildParticipantMenuOptions(items, flags);
hide_context_entries(menu, items, disabled_items);
}
diff --git a/indra/newview/llconversationmodel.h b/indra/newview/llconversationmodel.h
index 743a6ba40b..02002d8f70 100755
--- a/indra/newview/llconversationmodel.h
+++ b/indra/newview/llconversationmodel.h
@@ -130,7 +130,7 @@ public:
void postEvent(const std::string& event_type, LLConversationItemSession* session, LLConversationItemParticipant* participant);
- void buildParticipantMenuOptions(menuentry_vec_t& items);
+ void buildParticipantMenuOptions(menuentry_vec_t& items, U32 flags);
protected:
std::string mName; // Name of the session or the participant
diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp
index 92ea6dacde..2019a35faa 100644
--- a/indra/newview/llfloaterimcontainer.cpp
+++ b/indra/newview/llfloaterimcontainer.cpp
@@ -1232,7 +1232,6 @@ void LLFloaterIMContainer::showConversation(const LLUUID& session_id)
void LLFloaterIMContainer::clearAllFlashStates()
{
- llinfos << "Merov debug : clear all flash states" << llendl;
conversations_widgets_map::iterator widget_it = mConversationsWidgets.begin();
for (;widget_it != mConversationsWidgets.end(); ++widget_it)
{
diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp
index cdc51ad2fc..708400cbe1 100644
--- a/indra/newview/llimview.cpp
+++ b/indra/newview/llimview.cpp
@@ -964,7 +964,7 @@ const std::string LLIMModel::getName(const LLUUID& session_id) const
{
LLIMSession* session = findIMSession(session_id);
- if (!session)
+ if (!session)
{
llwarns << "session " << session_id << "does not exist " << llendl;
return LLTrans::getString("no_session_message");
diff --git a/indra/newview/skins/default/textures/bottomtray/Notices_Unread.png b/indra/newview/skins/default/textures/bottomtray/Notices_Unread.png
new file mode 100644
index 0000000000..0ac5b72b8f
--- /dev/null
+++ b/indra/newview/skins/default/textures/bottomtray/Notices_Unread.png
Binary files differ
diff --git a/indra/newview/skins/default/xui/en/floater_conversation_log.xml b/indra/newview/skins/default/xui/en/floater_conversation_log.xml
index c9c52e5ce5..960db137b3 100644
--- a/indra/newview/skins/default/xui/en/floater_conversation_log.xml
+++ b/indra/newview/skins/default/xui/en/floater_conversation_log.xml
@@ -1,91 +1,88 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<floater
- can_resize="true"
- positioning="cascading"
- height="400"
- min_height="100"
- min_width="390"
- layout="topleft"
- name="floater_conversation_log"
- save_rect="true"
- single_instance="true"
- reuse_instance="true"
- title="CONVERSATION LOG"
- width="450">
-
+ can_resize="true"
+ positioning="cascading"
+ height="200"
+ min_height="100"
+ min_width="200"
+ layout="topleft"
+ name="floater_conversation_log"
+ save_rect="true"
+ single_instance="true"
+ reuse_instance="true"
+ title="CONVERSATION LOG"
+ width="300">
<string name="logging_calls_disabled">
Conversations are not being logged. To log conversations in the future, select "Save IM logs on my computer" under Preferences > Privacy.
</string>
-
- <panel
- follows="left|top|right"
- height="27"
- layout="topleft"
- left="0"
- name="buttons_panel"
- top="0">
- <filter_editor
- follows="left|top|right"
- height="23"
- layout="topleft"
- left="8"
- label="Filter People"
- max_length_chars="300"
- name="people_filter_input"
- text_color="Black"
- text_pad_left="10"
- top="4"
- width="364" />
- <menu_button
- follows="right"
- height="25"
- image_hover_unselected="Toolbar_Middle_Over"
- image_overlay="Conv_toolbar_sort"
- image_selected="Toolbar_Middle_Selected"
- image_unselected="Toolbar_Middle_Off"
- layout="topleft"
- left_pad="5"
- menu_filename="menu_conversation_log_view.xml"
- menu_position="bottomleft"
- name="conversation_view_btn"
- tool_tip="View/sort options"
- top="3"
- width="31" />
- <menu_button
- follows="right"
- height="25"
- image_hover_unselected="Toolbar_Middle_Over"
- image_overlay="OptionsMenu_Off"
- image_selected="Toolbar_Middle_Selected"
- image_unselected="Toolbar_Middle_Off"
- layout="topleft"
- left_pad="2"
- name="conversations_gear_btn"
- tool_tip="Actions on selected person or group"
- top="3"
- width="31" />
- </panel>
- <panel
- follows="all"
- height="370"
- layout="topleft"
- left="5"
- name="buttons_panel"
- right="-5"
- top_pad="5">
+ <panel
+ bottom="0"
+ follows="left|top|right"
+ height="32"
+ left="0"
+ name="buttons_panel"
+ right="0"
+ top="0">
+ <filter_editor
+ follows="left|top|right"
+ height="23"
+ layout="topleft"
+ left="8"
+ label="Filter People"
+ max_length_chars="300"
+ name="people_filter_input"
+ text_color="Black"
+ text_pad_left="10"
+ top="4"
+ width="204" />
+ <menu_button
+ follows="top|right"
+ height="25"
+ image_hover_unselected="Toolbar_Middle_Over"
+ image_overlay="Conv_toolbar_sort"
+ image_selected="Toolbar_Middle_Selected"
+ image_unselected="Toolbar_Middle_Off"
+ layout="topleft"
+ left_pad="8"
+ menu_filename="menu_conversation_log_view.xml"
+ menu_position="bottomleft"
+ name="conversation_view_btn"
+ tool_tip="View/sort options"
+ top="3"
+ width="31" />
+ <menu_button
+ follows="top|right"
+ height="25"
+ image_hover_unselected="Toolbar_Middle_Over"
+ image_overlay="OptionsMenu_Off"
+ image_selected="Toolbar_Middle_Selected"
+ image_unselected="Toolbar_Middle_Off"
+ layout="topleft"
+ left_pad="8"
+ name="conversations_gear_btn"
+ tool_tip="Actions on selected person or group"
+ top="3"
+ width="31" />
+ </panel>
+ <panel
+ bottom="-1"
+ follows="all"
+ left="0"
+ name="log_panel"
+ right="-1"
+ top="32">
<conversation_log_list
- opaque="true"
- allow_select="true"
- follows="all"
- height="360"
- layout="topleft"
- left="3"
- keep_selection_visible_on_reshape="true"
- item_pad="2"
- multi_select="false"
- name="conversation_log_list"
- right="-3"
- top="5" />
- </panel>
+ allow_select="true"
+ bottom="-8"
+ opaque="true"
+ follows="all"
+ left="8"
+ keep_selection_visible_on_reshape="true"
+ item_pad="2"
+ multi_select="false"
+ name="conversation_log_list"
+ right="-8"
+ top="0" />
+ </panel>
</floater>
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 3475c7da33..cbf1830093 100644
--- a/indra/newview/skins/default/xui/en/floater_im_container.xml
+++ b/indra/newview/skins/default/xui/en/floater_im_container.xml
@@ -3,9 +3,8 @@
can_close="true"
can_minimize="true"
can_resize="true"
- height="230"
+ height="210"
layout="topleft"
- min_height="50"
name="floater_im_box"
help_topic="floater_im_box"
save_rect="true"
@@ -15,7 +14,7 @@
title="CONVERSATIONS"
bottom="-50"
right="-5"
- width="500">
+ width="450">
<string
name="collapse_icon"
value="Conv_toolbar_collapse"/>
@@ -37,7 +36,6 @@
user_resize="true"
name="conversations_layout_panel"
min_dim="38"
- width="225"
expanded_min_dim="156">
<layout_stack
animate="false"
@@ -121,7 +119,6 @@
opaque="true"
top_pad="0"
left="5"
- height="390"
right="-1"/>
</layout_panel>
<layout_panel
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 4dbd52d05e..9e2132dc3b 100644
--- a/indra/newview/skins/default/xui/en/floater_im_session.xml
+++ b/indra/newview/skins/default/xui/en/floater_im_session.xml
@@ -206,7 +206,7 @@
auto_resize="true"
visible="true"
name="left_part_holder"
- min_width="225">
+ min_width="221">
<panel
name="trnsAndChat_panel"
follows="all"
diff --git a/indra/newview/skins/default/xui/en/menu_conversation.xml b/indra/newview/skins/default/xui/en/menu_conversation.xml
index e0edf384d6..46c6e19fa5 100644
--- a/indra/newview/skins/default/xui/en/menu_conversation.xml
+++ b/indra/newview/skins/default/xui/en/menu_conversation.xml
@@ -76,6 +76,13 @@
<on_enable function="Avatar.EnableItem" parameter="can_delete" />
</menu_item_call>
<menu_item_call
+ label="Remove friends"
+ layout="topleft"
+ name="remove_friends">
+ <on_click function="Avatar.DoToSelected" parameter="remove_friend" />
+ <on_enable function="Avatar.EnableItem" parameter="can_delete" />
+ </menu_item_call>
+ <menu_item_call
label="Invite to group..."
layout="topleft"
name="invite_to_group">