Merge pull request #1584 from egrs/fix-textarea-selection-insert

fix textarea text insertion to respect selection range
This commit is contained in:
Pierre Tachoire
2026-02-20 15:24:39 +01:00
committed by GitHub

View File

@@ -3131,9 +3131,7 @@ pub fn handleKeydown(self: *Page, target: *Node, event: *Event) !void {
else return else return
; ;
// zig fmt: on // zig fmt: on
const current_value = textarea.getValue(); return textarea.innerInsert(append, self);
const new_value = try std.mem.concat(self.arena, u8, &.{ current_value, append });
return textarea.setValue(new_value, self);
} }
} }
@@ -3218,13 +3216,11 @@ pub fn insertText(self: *Page, v: []const u8) !void {
return; return;
} }
try input.innerInsert(v, self); return input.innerInsert(v, self);
} }
if (html_element.is(Element.Html.TextArea)) |textarea| { if (html_element.is(Element.Html.TextArea)) |textarea| {
const current_value = textarea.getValue(); return textarea.innerInsert(v, self);
const new_value = try std.mem.concat(self.arena, u8, &.{ current_value, v });
return textarea.setValue(new_value, self);
} }
} }