TextEditor: fix deletion of a tab character.

- when deleting a tab, cursor should move by tab size
This commit is contained in:
Artyom Shalkhakov 2025-02-21 00:17:37 -07:00
parent 8dea28a6e8
commit 2bc7efa4db

View file

@ -2186,8 +2186,16 @@ void TextEditor::Backspace()
// --cindex;
u.mRemovedStart = u.mRemovedEnd = GetActualCursorCoordinates();
--u.mRemovedStart.mColumn;
--mState.mCursorPosition.mColumn;
if (line[cindex].mChar == '\t')
{
u.mRemovedStart.mColumn -= mTabSize;
mState.mCursorPosition.mColumn -= mTabSize;
}
else
{
--u.mRemovedStart.mColumn;
--mState.mCursorPosition.mColumn;
}
while (cindex < line.size() && cend-- > cindex)
{