ladybird/Tests/LibWeb/Text/input/Editing/beforeinput-event.html
Luke Wilde a2f3a5a6ce LibWeb: Send a beforeinput event for pasting
This allows us to paste text into Discord.
2025-07-23 22:04:45 +02:00

31 lines
1.1 KiB
HTML

<!DOCTYPE html>
<script src="../include.js"></script>
<style>
#input {
width: 100px;
height: 100px;
border: 1px solid black;
}
</style>
<div id="input" contenteditable="true"></div>
<script>
test(() => {
const input = document.getElementById("input");
input.addEventListener("beforeinput", (e) => {
println(`beforeinput data=(${e.data}) inputType=(${e.inputType})`);
if (e.data !== 'r' && e.data !== 'e' && e.data !== "non-cancelled paste") {
e.preventDefault();
return;
}
});
internals.sendText(input, "raebece");
internals.commitText();
println(`Text in input before any paste: ${input.textContent}`);
internals.paste(input, "non-cancelled paste");
internals.commitText();
println(`Text in input after non-cancelled paste: ${input.textContent}`);
internals.paste(input, "cancelled paste");
internals.commitText();
println(`Text in input after cancelled paste: ${input.textContent}`);
});
</script>