diff --git a/tns-core-modules/ui/editable-text-base/editable-text-base.android.ts b/tns-core-modules/ui/editable-text-base/editable-text-base.android.ts index eaec3d29a8..5464f0ac82 100644 --- a/tns-core-modules/ui/editable-text-base/editable-text-base.android.ts +++ b/tns-core-modules/ui/editable-text-base/editable-text-base.android.ts @@ -37,11 +37,11 @@ export class EditableTextBase extends common.EditableTextBase { } var selectionStart = owner.android.getSelectionStart(); owner.android.removeTextChangedListener(owner._textWatcher); - + //RemoveThisDoubleCall owner.style._updateTextDecoration(); owner.style._updateTextTransform(); - + owner.android.addTextChangedListener(owner._textWatcher); owner.android.setSelection(selectionStart); }, @@ -105,9 +105,8 @@ export class EditableTextBase extends common.EditableTextBase { actionId === android.view.inputmethod.EditorInfo.IME_ACTION_GO || actionId === android.view.inputmethod.EditorInfo.IME_ACTION_SEARCH || actionId === android.view.inputmethod.EditorInfo.IME_ACTION_SEND || - actionId === android.view.inputmethod.EditorInfo.IME_ACTION_NEXT || (event && event.getKeyCode() === android.view.KeyEvent.KEYCODE_ENTER)) { - + // If it is TextField, close the keyboard. If it is TextView, do not close it since the TextView is multiline // https://github.com/NativeScript/NativeScript/issues/3111 if (textView.getMaxLines() === 1){ @@ -115,6 +114,10 @@ export class EditableTextBase extends common.EditableTextBase { } owner._onReturnPress(); } + // If action is ACTION_NEXT then do not close keyboard + if (actionId === android.view.inputmethod.EditorInfo.IME_ACTION_NEXT) { + owner._onReturnPress(); + } } return false; @@ -313,4 +316,4 @@ export class EditableTextBase extends common.EditableTextBase { this.android.setKeyListener(null); } } -} +}