Fixed a cursor jumping issue for word-wrapped lines

This commit is contained in:
斟酌 鵬兄 2017-03-07 12:07:58 +08:00
parent 6c39f480bf
commit 5311dc043d
1 changed files with 6 additions and 3 deletions

View File

@ -131,9 +131,14 @@
} }
var jumpY = expLineNum - lastLineNum; var jumpY = expLineNum - lastLineNum;
var jumpX = aPos < lineStart ? lineStart - aPos : aPos - lineStart; if( jumpY ) this.moveY( jumpY );
pline = this.getLine();
var jumpX = aPos < lineStart ? lineStart - aPos : aPos - lineStart;
var kX = jumpX - pline.content.length; var kX = jumpX - pline.content.length;
// This handles word-wrapped long line phantom "\n"
while( 0 < kX ) while( 0 < kX )
{ {
jumpX ++; jumpX ++;
@ -142,8 +147,6 @@
kX -= pline.content.length; kX -= pline.content.length;
} }
if( jumpY ) this.moveY( jumpY );
// This is needed because first line does not contain the first "\n" character // This is needed because first line does not contain the first "\n" character
if( 0 < this.getLine().lineNum && lineStart <= aPos ) jumpX --; if( 0 < this.getLine().lineNum && lineStart <= aPos ) jumpX --;