summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorandreykproductengine <akleshchev@productengine.com>2016-03-24 17:09:39 +0200
committerandreykproductengine <akleshchev@productengine.com>2016-03-24 17:09:39 +0200
commit0e845dc845817dbf71a9a4f1d8072576f973c457 (patch)
tree32a8f958be8307159521b19c65f8f28681c84d15 /indra
parent9412e79698c004ead460d4295933fd039ddb796e (diff)
MAINT-6214 Unable to add a space before closing curly brace in chatbar, notecards & scripts.
Diffstat (limited to 'indra')
-rwxr-xr-xindra/llui/lltexteditor.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/indra/llui/lltexteditor.cpp b/indra/llui/lltexteditor.cpp
index 926326aaff..3c86b539c4 100755
--- a/indra/llui/lltexteditor.cpp
+++ b/indra/llui/lltexteditor.cpp
@@ -1716,7 +1716,20 @@ void LLTextEditor::unindentLineBeforeCloseBrace()
LLWString text = getWText();
if( ' ' == text[ mCursorPos - 1 ] )
{
- removeCharOrTab();
+ S32 line = getLineNumFromDocIndex(mCursorPos, false);
+ S32 line_start = getLineStart(line);
+
+ // Jump over spaces in the current line
+ while ((' ' == text[line_start]) && (line_start < mCursorPos))
+ {
+ line_start++;
+ }
+
+ // Make sure there is nothing but ' ' before the Brace we are unindenting
+ if (line_start == mCursorPos)
+ {
+ removeCharOrTab();
+ }
}
}
}
@@ -1800,7 +1813,7 @@ BOOL LLTextEditor::handleUnicodeCharHere(llwchar uni_char)
// Handle most keys only if the text editor is writeable.
if( !mReadOnly )
{
- if( '}' == uni_char )
+ if( mAutoIndent && '}' == uni_char )
{
unindentLineBeforeCloseBrace();
}