Stop trapping tab in AddressPickerDialog

This commit is contained in:
Michael Telatynski 2019-12-16 17:23:56 +00:00
parent 3ec60b1692
commit eaabe351d9

View file

@ -142,6 +142,8 @@ module.exports = createReactClass({
}, },
onKeyDown: function(e) { onKeyDown: function(e) {
const textInput = this._textinput.current ? this._textinput.current.value : undefined;
if (e.keyCode === 27) { // escape if (e.keyCode === 27) { // escape
e.stopPropagation(); e.stopPropagation();
e.preventDefault(); e.preventDefault();
@ -158,23 +160,23 @@ module.exports = createReactClass({
e.stopPropagation(); e.stopPropagation();
e.preventDefault(); e.preventDefault();
if (this.addressSelector) this.addressSelector.chooseSelection(); if (this.addressSelector) this.addressSelector.chooseSelection();
} else if (this._textinput.current.value.length === 0 && this.state.selectedList.length && e.keyCode === 8) { // backspace } else if (textInput.length === 0 && this.state.selectedList.length && e.keyCode === 8) { // backspace
e.stopPropagation(); e.stopPropagation();
e.preventDefault(); e.preventDefault();
this.onDismissed(this.state.selectedList.length - 1)(); this.onDismissed(this.state.selectedList.length - 1)();
} else if (e.keyCode === 13) { // enter } else if (e.keyCode === 13) { // enter
e.stopPropagation(); e.stopPropagation();
e.preventDefault(); e.preventDefault();
if (this._textinput.current.value === '') { if (textInput === '') {
// if there's nothing in the input box, submit the form // if there's nothing in the input box, submit the form
this.onButtonClick(); this.onButtonClick();
} else { } else {
this._addAddressesToList([this._textinput.current.value]); this._addAddressesToList([textInput]);
} }
} else if (e.keyCode === 188 || e.keyCode === 9) { // comma or tab } else if (textInput && (e.keyCode === 188 || e.keyCode === 9)) { // comma or tab
e.stopPropagation(); e.stopPropagation();
e.preventDefault(); e.preventDefault();
this._addAddressesToList([this._textinput.current.value]); this._addAddressesToList([textInput]);
} }
}, },