Telegram Web K with changes to work inside I2P https://web.telegram.i2p/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
939 B

/*
* https://github.com/morethanwords/tweb
* Copyright (C) 2019-2021 Eduard Kuzmenko
* https://github.com/morethanwords/tweb/blob/master/LICENSE
*/
export default function setCaretAt(node: Node) {
// node.appendChild(document.createTextNode(''));
const originalNode = node;
node = node.previousSibling;
if(node.nodeType === 1) {
const newNode = document.createTextNode('');
node.parentNode.insertBefore(newNode, !originalNode.nextSibling || originalNode.nextSibling.nodeType === node.nodeType ? originalNode : originalNode.nextSibling);
node = newNode;
}
if(window.getSelection && document.createRange) {
const range = document.createRange();
if(node) {
range.setStartAfter(node);
range.insertNode(node);
range.setStart(node, node.nodeValue.length);
}
range.collapse(true);
const sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
}
}