diff options
author | Oz Linden <oz@lindenlab.com> | 2013-07-24 14:40:23 -0400 |
---|---|---|
committer | Oz Linden <oz@lindenlab.com> | 2013-07-24 14:40:23 -0400 |
commit | 9f393c1d99232e622317f7f0dd28519c2af63d0d (patch) | |
tree | 842f1ab4c5d13bc1cd772ebf1356c8f7424596d9 /indra/llui/lltexteditor.cpp | |
parent | 2b2719d8cae1e35fa9e4cfcb87519bae9a64b2bf (diff) | |
parent | a4966a661213a25b780604084fe169565f62f548 (diff) |
merge up to latest snowstorm integration branch
Diffstat (limited to 'indra/llui/lltexteditor.cpp')
-rwxr-xr-x[-rw-r--r--] | indra/llui/lltexteditor.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/indra/llui/lltexteditor.cpp b/indra/llui/lltexteditor.cpp index 57446e9c56..d6c5c5c48e 100644..100755 --- a/indra/llui/lltexteditor.cpp +++ b/indra/llui/lltexteditor.cpp @@ -956,12 +956,18 @@ S32 LLTextEditor::insert(S32 pos, const LLWString &wstr, bool group_with_next_op S32 LLTextEditor::remove(S32 pos, S32 length, bool group_with_next_op) { S32 end_pos = getEditableIndex(pos + length, true); + BOOL removedChar = FALSE; segment_vec_t segments_to_remove; // store text segments getSegmentsInRange(segments_to_remove, pos, pos + length, false); + + if(pos <= end_pos) + { + removedChar = execute( new TextCmdRemove( pos, group_with_next_op, end_pos - pos, segments_to_remove ) ); + } - return execute( new TextCmdRemove( pos, group_with_next_op, end_pos - pos, segments_to_remove ) ); + return removedChar; } S32 LLTextEditor::overwriteChar(S32 pos, llwchar wc) @@ -2919,7 +2925,7 @@ void LLTextEditor::markAsPreedit(S32 position, S32 length) S32 LLTextEditor::getPreeditFontSize() const { - return llround((F32)mFont->getLineHeight() * LLUI::sGLScaleFactor.mV[VY]); + return llround((F32)mFont->getLineHeight() * LLUI::getScaleFactor().mV[VY]); } BOOL LLTextEditor::isDirty() const |