diff options
| author | Darl <me@darl.cat> | 2025-12-31 09:22:35 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-12-31 17:22:35 +0200 |
| commit | 732b96958f0677674ca2756ce6a692f54bfd6a28 (patch) | |
| tree | 3e954fc3fe759ba0f066006f6151b33fc4a89b1b /indra/newview/llfloatergotoline.cpp | |
| parent | f27b86c8fac5c1a9db93cd05aaf7480162006951 (diff) | |
Update LLScriptEditor and friends to index line numbers from 1 when editing in Lua (#5190)
* Update LLScriptEditor to index line numbers from 1 when editing in Lua
This is to match server-generated runtime errors that reference lines.
Signed-off-by: Darl <me@darl.cat>
* Update LLFloaterGotoLine and LLPreviewScript to support Lua's line/col expectations
Existing behavior for LSL is preserved
Fixes a bug in previous commit that causes the line number shown near the bottom of the script edit floater to be off by 1 when displaying a Lua script.
Signed-off-by: Darl <me@darl.cat>
* Update script editor error console goto error to reflect Lua line nums
Signed-off-by: Darl <me@darl.cat>
---------
Signed-off-by: Darl <me@darl.cat>
Diffstat (limited to 'indra/newview/llfloatergotoline.cpp')
| -rw-r--r-- | indra/newview/llfloatergotoline.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/indra/newview/llfloatergotoline.cpp b/indra/newview/llfloatergotoline.cpp index 09ca0ab530..6b3f16ecf5 100644 --- a/indra/newview/llfloatergotoline.cpp +++ b/indra/newview/llfloatergotoline.cpp @@ -109,8 +109,9 @@ void LLFloaterGotoLine::handleBtnGoto() { if (mEditorCore && mEditorCore->mEditor) { + S32 target_row = mEditorCore->mEditor->getIsLuauLanguage() ? (row - 1) : row; mEditorCore->mEditor->deselect(); - mEditorCore->mEditor->setCursor(row, column); + mEditorCore->mEditor->setCursor(target_row, column); mEditorCore->mEditor->setFocus(true); } } @@ -144,12 +145,13 @@ void LLFloaterGotoLine::onGotoBoxCommit() { if (mEditorCore && mEditorCore->mEditor) { - mEditorCore->mEditor->setCursor(row, column); + S32 target_row = mEditorCore->mEditor->getIsLuauLanguage() ? (row - 1) : row; + mEditorCore->mEditor->setCursor(target_row, column); S32 rownew = 0; S32 columnnew = 0; mEditorCore->mEditor->getCurrentLineAndColumn( &rownew, &columnnew, false ); // don't include wordwrap - if (rownew == row && columnnew == column) + if (rownew == target_row && columnnew == column) { mEditorCore->mEditor->deselect(); mEditorCore->mEditor->setFocus(true); |
