|
3 | 3 | * Licensed under the MIT License. See License.txt in the project root for license information. |
4 | 4 | *--------------------------------------------------------------------------------------------*/ |
5 | 5 |
|
6 | | -import { CursorConfiguration, ICursorSimpleModel, SelectionStartKind, SingleCursorState } from 'vs/editor/common/cursorCommon'; |
| 6 | +import * as strings from 'vs/base/common/strings'; |
| 7 | +import { Constants } from 'vs/base/common/uint'; |
7 | 8 | import { CursorColumns } from 'vs/editor/common/core/cursorColumns'; |
8 | 9 | import { Position } from 'vs/editor/common/core/position'; |
9 | 10 | import { Range } from 'vs/editor/common/core/range'; |
10 | | -import * as strings from 'vs/base/common/strings'; |
11 | | -import { Constants } from 'vs/base/common/uint'; |
12 | 11 | import { AtomicTabMoveOperations, Direction } from 'vs/editor/common/cursor/cursorAtomicMoveOperations'; |
| 12 | +import { CursorConfiguration, ICursorSimpleModel, SelectionStartKind, SingleCursorState } from 'vs/editor/common/cursorCommon'; |
13 | 13 | import { PositionAffinity } from 'vs/editor/common/model'; |
14 | 14 |
|
15 | 15 | export class CursorPosition { |
@@ -213,7 +213,15 @@ export class MoveOperations { |
213 | 213 | column = cursor.position.column; |
214 | 214 | } |
215 | 215 |
|
216 | | - const r = MoveOperations.down(config, model, lineNumber, column, cursor.leftoverVisibleColumns, linesCount, true); |
| 216 | + let i = 0; |
| 217 | + let r: CursorPosition; |
| 218 | + do { |
| 219 | + r = MoveOperations.down(config, model, lineNumber + i, column, cursor.leftoverVisibleColumns, linesCount, true); |
| 220 | + const np = model.normalizePosition(new Position(r.lineNumber, r.column), PositionAffinity.None); |
| 221 | + if (np.lineNumber > lineNumber) { |
| 222 | + break; |
| 223 | + } |
| 224 | + } while (i++ < 10 && lineNumber + i < model.getLineCount()); |
217 | 225 |
|
218 | 226 | return cursor.move(inSelectionMode, r.lineNumber, r.column, r.leftoverVisibleColumns); |
219 | 227 | } |
|
0 commit comments