Fix tab key behaviour

This commit is contained in:
Lukas Schulte Pelkum 2021-06-04 12:55:31 +02:00
parent 42a400ac19
commit 72b0a461e9
No known key found for this signature in database
GPG Key ID: 408DA7CA81DB885C
1 changed files with 20 additions and 2 deletions

View File

@ -62,8 +62,26 @@ async function loadPaste() {
window.addEventListener("keydown", function (event) {
if (event.keyCode != 9) return;
event.preventDefault();
input.value += " ";
insertTextAtCursor(input, " ");
});
}
}
spinner.surround(loadPaste);
spinner.surround(loadPaste);
// 1:1 skid from https://stackoverflow.com/questions/7404366/how-do-i-insert-some-text-where-the-cursor-is
function insertTextAtCursor(el, text) {
var val = el.value, endIndex, range, doc = el.ownerDocument;
if (typeof el.selectionStart == "number"
&& typeof el.selectionEnd == "number") {
endIndex = el.selectionEnd;
el.value = val.slice(0, endIndex) + text + val.slice(endIndex);
el.selectionStart = el.selectionEnd = endIndex + text.length;
} else if (doc.selection != "undefined" && doc.selection.createRange) {
el.focus();
range = doc.selection.createRange();
range.collapse(false);
range.text = text;
range.select();
}
}