Commit 32bc331d authored by techird's avatar techird

fix text cursor bug

parent a5205435
...@@ -91,14 +91,14 @@ Minder.Receiver = kity.createClass( 'Receiver', { ...@@ -91,14 +91,14 @@ Minder.Receiver = kity.createClass( 'Receiver', {
me.minderNode.setText( text ); me.minderNode.setText( text );
if ( text.length == 0 ) { if ( text.length == 0 ) {
me.minderNode.setText('a'); me.minderNode.setText( 'a' );
} }
me.km.updateLayout( me.minderNode ); me.km.updateLayout( me.minderNode );
me.textShape = me.minderNode.getTextShape(); me.textShape = me.minderNode.getTextShape();
if(text.length == 0){ if ( text.length == 0 ) {
me.textShape.setOpacity( 0 ); me.textShape.setOpacity( 0 );
} }
me.setBaseOffset(); me.setBaseOffset();
...@@ -119,20 +119,20 @@ Minder.Receiver = kity.createClass( 'Receiver', { ...@@ -119,20 +119,20 @@ Minder.Receiver = kity.createClass( 'Receiver', {
isTypeText = false; isTypeText = false;
isKeypress = false; isKeypress = false;
switch ( e.originEvent.keyCode ) { switch ( e.originEvent.keyCode ) {
case keys.Enter: case keys.Enter:
case keys.Tab: case keys.Tab:
this.selection.setHide(); this.selection.setHide();
this.clear().setTextEditStatus( false ); this.clear().setTextEditStatus( false );
this.km.fire( 'contentchange' ); this.km.fire( 'contentchange' );
this.km.setStatus( 'normal' ); this.km.setStatus( 'normal' );
e.preventDefault(); e.preventDefault();
return; return;
break; break;
case keymap.Shift: case keymap.Shift:
case keymap.Control: case keymap.Control:
case keymap.Alt: case keymap.Alt:
case keymap.Cmd: case keymap.Cmd:
return; return;
} }
if ( e.originEvent.ctrlKey || e.originEvent.metaKey ) { if ( e.originEvent.ctrlKey || e.originEvent.metaKey ) {
...@@ -164,29 +164,29 @@ Minder.Receiver = kity.createClass( 'Receiver', { ...@@ -164,29 +164,29 @@ Minder.Receiver = kity.createClass( 'Receiver', {
case 'keypress': case 'keypress':
if(isTypeText) if ( isTypeText )
setTextToContainer(); setTextToContainer();
isKeypress = true; isKeypress = true;
break; break;
case 'beforekeyup': case 'beforekeyup':
switch ( keyCode ) { switch ( keyCode ) {
case keymap.Enter: case keymap.Enter:
case keymap.Tab: case keymap.Tab:
if ( this.keydownNode === this.minderNode ) { if ( this.keydownNode === this.minderNode ) {
this.rollbackStatus(); this.rollbackStatus();
this.setTextEditStatus( false ); this.setTextEditStatus( false );
this.clear(); this.clear();
} }
e.preventDefault(); e.preventDefault();
return; return;
} }
if(!isKeypress){ if ( !isKeypress ) {
setTextToContainer(); setTextToContainer();
} }
return true; return true;
...@@ -226,17 +226,18 @@ Minder.Receiver = kity.createClass( 'Receiver', { ...@@ -226,17 +226,18 @@ Minder.Receiver = kity.createClass( 'Receiver', {
} }
return this; return this;
}, },
getBaseOffset: function (node) { getBaseOffset: function ( node ) {
return this.textShape.getRenderBox( node || this.km.getRenderContainer() ); var rb = this.textShape.getRenderBox( this.km.getRenderContainer() );
return rb;
}, },
setBaseOffset: function () { setBaseOffset: function () {
this.offset = this.textShape.getRenderBox( this.km.getRenderContainer() ); this.offset = this.textShape.getRenderBox( this.km.getRenderContainer() );
return this; return this;
}, },
setContainerStyle: function () { setContainerStyle: function () {
var textShapeBox = this.getBaseOffset('top'); var textShapeBox = this.getBaseOffset( 'top' );
this.container.style.cssText = ";left:" + textShapeBox.x + 'px;top:' + ( textShapeBox.y - 5) + 'px;width:' + textShapeBox.width + 'px;height:' + textShapeBox.height + 'px;'; this.container.style.cssText = ";left:" + textShapeBox.x + 'px;top:' + ( textShapeBox.y - 5 ) + 'px;width:' + textShapeBox.width + 'px;height:' + textShapeBox.height + 'px;';
return this; return this;
}, },
getTextOffsetData: function () { getTextOffsetData: function () {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment