mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-10-22 08:00:45 +00:00
We currently delete a single code unit. If the user presses backspace on a multi code point emoji, they are going to expect the entire emoji to be removed. This now matches the behavior of Chrome and Firefox.
24 lines
723 B
HTML
24 lines
723 B
HTML
<!DOCTYPE html>
|
||
<script src="include.js"></script>
|
||
<input id="a" value="foo👩🏼❤️👨🏻bar" />
|
||
<input id="b" value="foo👩🏼❤️👨🏻bar" />
|
||
<script>
|
||
test(() => {
|
||
const testDelete = function (id, position, key) {
|
||
println(`--- ${id} ---`);
|
||
const input = document.querySelector(`input#${id}`);
|
||
println(`Before: ${input.value}`);
|
||
|
||
// Place cursor
|
||
input.setSelectionRange(position, position);
|
||
|
||
// Press backspace
|
||
internals.sendKey(input, key);
|
||
|
||
println(`After: ${input.value}`);
|
||
};
|
||
|
||
testDelete("a", 15, "Backspace");
|
||
testDelete("b", 3, "Delete");
|
||
});
|
||
</script>
|