diff options
author | Runitai <> | 2009-12-15 16:53:29 -0600 |
---|---|---|
committer | Runitai <> | 2009-12-15 16:53:29 -0600 |
commit | 1f8ad2651d82b81fc85d91f3d48663430427537e (patch) | |
tree | c4ed86401b803aefdbfaa9eef6f87ecd5567c58d /indra/newview/llchathistory.cpp | |
parent | a81a2f19b21134fb52df1e1a735988a04aa0688a (diff) | |
parent | 88a146e0bb95476792d0fabedab6d7a41c350949 (diff) |
Merge
Diffstat (limited to 'indra/newview/llchathistory.cpp')
-rw-r--r-- | indra/newview/llchathistory.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/indra/newview/llchathistory.cpp b/indra/newview/llchathistory.cpp index 6c843e1ec3..ee60df1b4b 100644 --- a/indra/newview/llchathistory.cpp +++ b/indra/newview/llchathistory.cpp @@ -49,6 +49,8 @@ static LLDefaultChildRegistry::Register<LLChatHistory> r("chat_history"); +const static std::string NEW_LINE(rawstr_to_utf8("\n")); + class LLChatHistoryHeader: public LLPanel { public: @@ -454,10 +456,21 @@ void LLChatHistory::appendMessage(const LLChat& chat, const bool use_plain_text_ if (chat.mFromName.size() > 0) appendText(chat.mFromName + " ", TRUE, style_params); - appendText(chat.mText.substr(4), FALSE, style_params); + // Ensure that message ends with NewLine, to avoid losing of new lines + // while copy/paste from text chat. See EXT-3263. + appendText(chat.mText.substr(4) + NEW_LINE, FALSE, style_params); } else - appendText(chat.mText, FALSE, style_params); + { + std::string message(chat.mText); + if ( message.size() > 0 && !LLStringOps::isSpace(message[message.size() - 1]) ) + { + // Ensure that message ends with NewLine, to avoid losing of new lines + // while copy/paste from text chat. See EXT-3263. + message += NEW_LINE; + } + appendText(message, FALSE, style_params); + } blockUndo(); } |