diff --git a/browser/src/control/jsdialog/Widget.MultilineEdit.js b/browser/src/control/jsdialog/Widget.MultilineEdit.js index 987a67c504958..072dc4e1b094e 100644 --- a/browser/src/control/jsdialog/Widget.MultilineEdit.js +++ b/browser/src/control/jsdialog/Widget.MultilineEdit.js @@ -86,12 +86,16 @@ function _multiLineEditControl(parentContainer, data, builder, callback) { edit.readOnly = true; } - function _keyupChangeHandler() { + function _keyupChangeHandler(e) { + const nav_keys = ['Tab', 'ArrowUp', 'ArrowDown', 'ArrowLeft', 'ArrowRight']; + if (callback) callback(this.value); builder.callback('edit', 'change', edit, this.value, builder); - setTimeout(function () { _sendSimpleSelection(edit, builder); }, 0); + if (!nav_keys.includes(e.code)) { + setTimeout(function () { _sendSimpleSelection(edit, builder); }, 0); + } } edit.addEventListener('keyup', _keyupChangeHandler);