From be716e591dce72ef60ced2d0349d58559f06b3cc Mon Sep 17 00:00:00 2001 From: Francis Bouvier Date: Mon, 9 Oct 2023 14:29:37 +0200 Subject: [PATCH] characterdata: add deleteData method Signed-off-by: Francis Bouvier --- src/dom/character_data.zig | 10 ++++++++++ src/netsurf.zig | 4 ++++ 2 files changed, 14 insertions(+) diff --git a/src/dom/character_data.zig b/src/dom/character_data.zig index 10ed9133..dea3f031 100644 --- a/src/dom/character_data.zig +++ b/src/dom/character_data.zig @@ -58,6 +58,10 @@ pub const CharacterData = struct { pub fn _appendData(self: *parser.CharacterData, data: []const u8) void { return parser.characterDataAppendData(self, data); } + + pub fn _deleteData(self: *parser.CharacterData, offset: u32, count: u32) void { + return parser.characterDataDeleteData(self, offset, count); + } }; pub const Types = generate.Tuple(.{ @@ -118,4 +122,10 @@ pub fn testExecFn( .{ .src = "cdata.data === 'OK modified' ", .ex = "true" }, }; try checkCases(js_env, &append_data); + + var delete_data = [_]Case{ + .{ .src = "cdata.deleteData('OK'.length, ' modified'.length)", .ex = "undefined" }, + .{ .src = "cdata.data", .ex = "OK" }, + }; + try checkCases(js_env, &delete_data); } diff --git a/src/netsurf.zig b/src/netsurf.zig index 409f98b0..c4306b07 100644 --- a/src/netsurf.zig +++ b/src/netsurf.zig @@ -480,6 +480,10 @@ pub fn characterDataAppendData(cdata: *CharacterData, data: []const u8) void { _ = characterDataVtable(cdata).dom_characterdata_append_data.?(cdata, s); } +pub fn characterDataDeleteData(cdata: *CharacterData, offset: u32, count: u32) void { + _ = characterDataVtable(cdata).dom_characterdata_delete_data.?(cdata, offset, count); +} + // Text pub const Text = c.dom_text;