diff options
Diffstat (limited to 'indra/newview')
-rw-r--r-- | indra/newview/llconversationlog.cpp | 6 | ||||
-rw-r--r-- | indra/newview/llfloaterimcontainer.cpp | 7 | ||||
-rwxr-xr-x | indra/newview/llfloaterpreference.cpp | 2 | ||||
-rw-r--r-- | indra/newview/llimview.cpp | 22 | ||||
-rw-r--r-- | indra/newview/llnotificationofferhandler.cpp | 10 | ||||
-rw-r--r-- | indra/newview/lltoolbarview.cpp | 8 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/panel_preferences_chat.xml | 2 |
7 files changed, 29 insertions, 28 deletions
diff --git a/indra/newview/llconversationlog.cpp b/indra/newview/llconversationlog.cpp index 22277e6421..fc3bc8551c 100644 --- a/indra/newview/llconversationlog.cpp +++ b/indra/newview/llconversationlog.cpp @@ -192,11 +192,11 @@ LLConversationLog::LLConversationLog() : { LLControlVariable * keep_log_ctrlp = gSavedPerAccountSettings.getControl("KeepConversationLogTranscripts").get(); S32 log_mode = keep_log_ctrlp->getValue(); - + keep_log_ctrlp->getSignal()->connect(boost::bind(&LLConversationLog::enableLogging, this, _2)); if (log_mode > 0) { loadFromFile(getFileName()); - keep_log_ctrlp->getSignal()->connect(boost::bind(&LLConversationLog::enableLogging, this, _2)); + enableLogging(log_mode); } } @@ -333,6 +333,7 @@ void LLConversationLog::removeConversation(const LLConversation& conversation) { mConversations.erase(conv_it); notifyObservers(); + cache(); return; } } @@ -534,5 +535,6 @@ void LLConversationLog::onClearLogResponse(const LLSD& notification, const LLSD& { mConversations.clear(); notifyObservers(); + cache(); } } diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp index 21bd8ab1d2..2f2b09b589 100644 --- a/indra/newview/llfloaterimcontainer.cpp +++ b/indra/newview/llfloaterimcontainer.cpp @@ -639,11 +639,7 @@ void LLFloaterIMContainer::collapseMessagesPane(bool collapse) return; } - if (mIsFirstLaunch) - { - mIsFirstLaunch = false; - return; - } + mIsFirstLaunch = false; // Save current width of panels before collapsing/expanding right pane. S32 conv_pane_width = mConversationsPane->getRect().getWidth(); @@ -1345,6 +1341,7 @@ BOOL LLFloaterIMContainer::selectConversationPair(const LLUUID& session_id, bool if (widget && widget->getParentFolder()) { widget->getParentFolder()->setSelection(widget, FALSE, FALSE); + mConversationsRoot->scrollToShowSelection(); } //When in DND mode, remove stored IM notifications diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp index 662d2df5d2..3d8d0e15ec 100755 --- a/indra/newview/llfloaterpreference.cpp +++ b/indra/newview/llfloaterpreference.cpp @@ -1446,7 +1446,6 @@ void LLFloaterPreference::onClickLogPath() std::string dir_name = picker.getDirName(); gSavedPerAccountSettings.setString("InstantMessageLogPath", dir_name); - updateLogLocation(dir_name); // enable/disable 'Delete transcripts button updateDeleteTranscriptsButton(); @@ -1492,6 +1491,7 @@ void LLFloaterPreference::setPersonalInfo(const std::string& visibility, bool im getChildView("favorites_on_login_check")->setEnabled(TRUE); getChildView("log_path_string")->setEnabled(FALSE);// LineEditor becomes readonly in this case. getChildView("log_path_button")->setEnabled(TRUE); + getChildView("chat_font_size")->setEnabled(TRUE); } void LLFloaterPreference::onUpdateSliderText(LLUICtrl* ctrl, const LLSD& name) diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp index cdf6cb6252..cf6a215970 100644 --- a/indra/newview/llimview.cpp +++ b/indra/newview/llimview.cpp @@ -213,16 +213,14 @@ void on_new_message(const LLSD& msg) //conversation floater not focused (visible or not) bool conversation_floater_not_focused = conversation_floater_is_closed || !im_box->hasFocus(); - - // Skip toasting and flashing if we have open window of IM with this session id - if (session_floater - && session_floater->isInVisibleChain() - && !session_floater->isMinimized() - && !(session_floater->getHost() && session_floater->getHost()->isMinimized())) - { - return; - } - if ("toast" == action) + // sess. floater is open + bool session_floater_is_open = + session_floater + && session_floater->isInVisibleChain() + && !session_floater->isMinimized() + && !(session_floater->getHost() && session_floater->getHost()->isMinimized()); + + if ("toast" == action && !session_floater_is_open) { //User is not focused on conversation containing the message if(session_floater_not_focused) @@ -254,7 +252,7 @@ void on_new_message(const LLSD& msg) { if (conversation_floater_not_focused) { - if(session_floater_not_focused && !gAgent.isDoNotDisturb()) + if(!session_floater_is_open && !gAgent.isDoNotDisturb()) { //User is not focused on conversation containing the message gToolBarView->flashCommand(LLCommandId("chat"), true); @@ -273,7 +271,7 @@ void on_new_message(const LLSD& msg) } } - else if("openconversations" == action) + else if("openconversations" == action && !session_floater_is_open) { //User is not focused on conversation containing the message if(session_floater_not_focused) diff --git a/indra/newview/llnotificationofferhandler.cpp b/indra/newview/llnotificationofferhandler.cpp index cde7bb18ce..a2bd96f35a 100644 --- a/indra/newview/llnotificationofferhandler.cpp +++ b/indra/newview/llnotificationofferhandler.cpp @@ -120,11 +120,11 @@ bool LLOfferHandler::processNotification(const LLNotificationPtr& notification) channel->addToast(p); //Will not play a notification sound for inventory and teleport offer based upon chat preference - bool playSound = !((notification->isDND()) - && (notification->getName() == "UserGiveItem" - && gSavedSettings.getBOOL("PlaySoundInventoryOffer") == FALSE) - || notification->getName() == "TeleportOffered" - && gSavedSettings.getBOOL("PlaySoundTeleportOffer") == FALSE); + bool playSound = (!notification->isDND() + && ((notification->getName() == "UserGiveItem" + && gSavedSettings.getBOOL("PlaySoundInventoryOffer")) + || (notification->getName() == "TeleportOffered" + && gSavedSettings.getBOOL("PlaySoundTeleportOffer")))); if(playSound) { diff --git a/indra/newview/lltoolbarview.cpp b/indra/newview/lltoolbarview.cpp index de07ad510b..b2318f9158 100644 --- a/indra/newview/lltoolbarview.cpp +++ b/indra/newview/lltoolbarview.cpp @@ -241,8 +241,9 @@ bool LLToolBarView::loadToolbars(bool force_default) LLXUIParser parser; if (!err) { - parser.readXUI(root, toolbar_set, toolbar_file); + parser.readXUI(root, toolbar_set, toolbar_file); } + if (!err && !toolbar_set.validateBlock()) { llwarns << "Unable to validate toolbars from file: " << toolbar_file << llendl; @@ -254,8 +255,9 @@ bool LLToolBarView::loadToolbars(bool force_default) if (force_default) { llerrs << "Unable to load toolbars from default file : " << toolbar_file << llendl; - return false; - } + return false; + } + // Try to load the default toolbars return loadToolbars(true); } diff --git a/indra/newview/skins/default/xui/en/panel_preferences_chat.xml b/indra/newview/skins/default/xui/en/panel_preferences_chat.xml index 9b22c8c6dd..9db3816c92 100644 --- a/indra/newview/skins/default/xui/en/panel_preferences_chat.xml +++ b/indra/newview/skins/default/xui/en/panel_preferences_chat.xml @@ -373,6 +373,7 @@ </text> <combo_box + enabled="false" control_name="KeepConversationLogTranscripts" height="23" layout="topleft" @@ -428,6 +429,7 @@ </text> <line_editor + enabled="false" control_name="InstantMessageLogPath" border_style="line" border_thickness="1" |