mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 15:27:35 +00:00
LibWeb: Fix crashing after input into empty contenteditable
Change `EventHandler::handle_keydown()` to no longer assume the cursor position's node is always a `DOM::Text`. While this assumption holds for `HTMLInputElement` that has a shadow DOM with a text node, an empty `contenteditable` might not have any children. With this change, `handle_keydown()` creates a new text node if the cursor position's node is not a text node.
This commit is contained in:
parent
5d76fa72e9
commit
906ac71eca
5 changed files with 47 additions and 9 deletions
|
@ -0,0 +1,15 @@
|
|||
<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");
|
||||
internals.sendText(input, "hello");
|
||||
});
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue