simplify proposed changes

This commit is contained in:
Alex Dima 2021-08-17 15:12:25 +02:00
parent 2fbaf20cca
commit 0826a8b209
No known key found for this signature in database
GPG key ID: 6E58D7B045760DA0

View file

@ -216,10 +216,8 @@ export class BracketMatchingController extends Disposable implements IEditorCont
this._editor.getSelections().forEach(selection => {
const position = selection.getStartPosition();
let brackets = model.matchBracket(position);
let forceOpenBracketFirst = false;
if (!brackets) {
forceOpenBracketFirst = true;
brackets = model.findEnclosingBrackets(position);
if (!brackets) {
const nextBracket = model.findNextBracket(position);
@ -233,21 +231,16 @@ export class BracketMatchingController extends Disposable implements IEditorCont
let selectTo: Position | null = null;
if (brackets) {
let [firstBracket, secondBracket] = brackets;
let startsFromClosingBracket = Range.compareRangesUsingStarts(firstBracket, secondBracket) > 0;
if (startsFromClosingBracket && forceOpenBracketFirst) {
let tmp = firstBracket;
firstBracket = secondBracket;
secondBracket = tmp;
startsFromClosingBracket = false;
}
if (startsFromClosingBracket) {
selectFrom = selectBrackets ? firstBracket.getEndPosition() : firstBracket.getStartPosition();
selectTo = selectBrackets ? secondBracket.getStartPosition() : secondBracket.getEndPosition();
}
else {
selectFrom = selectBrackets ? firstBracket.getStartPosition() : firstBracket.getEndPosition();
selectTo = selectBrackets ? secondBracket.getEndPosition() : secondBracket.getStartPosition();
brackets.sort(Range.compareRangesUsingStarts);
const [open, close] = brackets;
selectFrom = selectBrackets ? open.getStartPosition() : open.getEndPosition();
selectTo = selectBrackets ? close.getEndPosition() : close.getStartPosition();
if (close.containsPosition(position)) {
// select backwards if the cursor was on the closing bracket
const tmp = selectFrom;
selectFrom = selectTo;
selectTo = tmp;
}
}