Commit 1d5bd227 authored by Phil Hughes's avatar Phil Hughes

Fixed bug replacing full input value

parent d866ca66
...@@ -89,9 +89,15 @@ ...@@ -89,9 +89,15 @@
static getInputSelectionPosition(input) { static getInputSelectionPosition(input) {
const inputValue = input.value; const inputValue = input.value;
const selectionStart = input.selectionStart; const selectionStart = input.selectionStart;
const left = inputValue.slice(0, selectionStart + 1).search(/\S+$/); let left = inputValue.slice(0, selectionStart + 1).search(/\S+$/);
const right = inputValue.slice(selectionStart).search(/\s/); const right = inputValue.slice(selectionStart).search(/\s/);
if (selectionStart === 0) {
left = 0;
} else if (selectionStart === inputValue.length && left < 0) {
left = inputValue.length;
}
return { return {
left, left,
right, right,
......
...@@ -67,16 +67,13 @@ ...@@ -67,16 +67,13 @@
// Get the string to replace // Get the string to replace
const selectionStart = input.selectionStart; const selectionStart = input.selectionStart;
let { left, right } = gl.DropdownUtils.getInputSelectionPosition(input); const { left } = gl.DropdownUtils.getInputSelectionPosition(input);
let { right } = gl.DropdownUtils.getInputSelectionPosition(input);
if (right < 0) { if (right < 0) {
right = inputValue.length; right = inputValue.length;
} }
if (left < 0) {
left += 1;
}
input.value = `${inputValue.substr(0, left)}${word}${inputValue.substr(right + selectionStart)}`; input.value = `${inputValue.substr(0, left)}${word}${inputValue.substr(right + selectionStart)}`;
gl.FilteredSearchDropdownManager.updateInputCaretPosition(selectionStart, input); gl.FilteredSearchDropdownManager.updateInputCaretPosition(selectionStart, input);
} }
......
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