https://www.mediawiki.org/wiki/Special:Code/MediaWiki/112860
Revision: 112860
Author: inez
Date: 2012-03-02 00:34:31 +0000 (Fri, 02 Mar 2012)
Log Message:
-----------
Fix bug in Chrome when moving cursor with left/right arrow in between <table>
and textnode
Modified Paths:
--------------
trunk/extensions/VisualEditor/modules/ve/ce/ve.es.Surface.js
Modified: trunk/extensions/VisualEditor/modules/ve/ce/ve.es.Surface.js
===================================================================
--- trunk/extensions/VisualEditor/modules/ve/ce/ve.es.Surface.js
2012-03-02 00:31:33 UTC (rev 112859)
+++ trunk/extensions/VisualEditor/modules/ve/ce/ve.es.Surface.js
2012-03-02 00:34:31 UTC (rev 112860)
@@ -274,7 +274,6 @@
};
ve.es.Surface.prototype.onKeyDown = function( e ) {
- console.log("keyDown");
switch ( e.keyCode ) {
// Left arrow
case 37:
@@ -283,27 +282,26 @@
var globalOffset = this.getOffset(
rangySel.anchorNode, rangySel.anchorOffset, true ),
node =
this.documentView.getNodeFromOffset( globalOffset ),
nodeOffset =
surfaceView.documentView.getOffsetFromNode( node );
-
-
if ( nodeOffset + 1 === globalOffset ) {
var newOffset =
this.documentView.model.getRelativeContentOffset( globalOffset, -1 );
- console.log('newOffset', newOffset);
this.showCursorAt(newOffset);
e.preventDefault();
- //return false;
}
-
- //debugger;
-
-
-
}
-
- console.log( 'left' );
break;
// Right arrow
case 39:
- console.log( 'right' );
+ var rangySel = rangy.getSelection();
+ if ( rangySel.anchorOffset ===
rangySel.anchorNode.length ) {
+ var globalOffset = this.getOffset(
rangySel.anchorNode, rangySel.anchorOffset, true ),
+ node =
this.documentView.getNodeFromOffset( globalOffset ),
+ nodeOffset =
surfaceView.documentView.getOffsetFromNode( node );
+ if ( nodeOffset + 1 + node.getContentLength()
=== globalOffset ) {
+ var newOffset =
this.documentView.model.getRelativeContentOffset( globalOffset, 1 );
+ this.showCursorAt(newOffset);
+ e.preventDefault();
+ }
+ }
break;
}
};
_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs