Commit Graph

49 Commits

Author SHA1 Message Date
Pierre Tachoire
8dc757ddf3 node: implement getRootNode 2024-10-17 14:44:34 +02:00
Pierre Tachoire
b64f7d013d node: implement node.compareDocumentPosition 2024-10-17 14:44:33 +02:00
Pierre Tachoire
f2a406d224 move netsurf and mimalloc into modules 2024-06-18 16:13:27 +02:00
Pierre Tachoire
840aea9013 dom: fix document creation process 2024-05-22 14:56:41 +02:00
Pierre Tachoire
7d91f7992c dom: first draft for hierachy check in nodes 2024-05-22 14:56:40 +02:00
Pierre Tachoire
2a3a243d1c add AGPL license header in zig files 2024-05-13 20:51:36 +02:00
Pierre Tachoire
4d5f6d42fa dom: use the css matcher for DOM 2024-03-26 10:25:50 +01:00
Pierre Tachoire
f7c0bcceae dom: fix replace child 2024-02-27 16:11:11 +01:00
Pierre Tachoire
d8df27ead7 dom: refacto append/prepend/replaceChild in Node 2024-01-18 09:59:26 +01:00
Pierre Tachoire
0b17d79baa dom: add HTMLCollectionIterator 2023-11-20 10:50:20 +01:00
Francis Bouvier
a5dfa6cb44 Adopt global Types changes in jsruntime
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-10 11:56:53 +01:00
Pierre Tachoire
9f6253b21d nodelist: return struct instead of pointer 2023-12-19 14:53:45 +01:00
Pierre Tachoire
3ea95982d6 dom: nodelist: use unmanaged arraylist 2023-12-19 14:47:11 +01:00
Pierre Tachoire
76bdd94a3c dom: reimplement nodelist in pure zig 2023-12-19 14:44:15 +01:00
Pierre Tachoire
8435f781ee dom: implement NodeList 2023-12-19 14:44:09 +01:00
Pierre Tachoire
d13da6ffab dom: implement document.createProcessingInstruction 2023-12-07 16:54:17 +01:00
Pierre Tachoire
94876d01f1 dom: add document.createCDATASection 2023-12-07 16:27:26 +01:00
Pierre Tachoire
1bcedead56 dom: implement document.createDocumentFragment 2023-12-05 14:21:00 +01:00
Pierre Tachoire
ad5c6236a7 dom: add NamedNodeMap implementation
and create Attr type
2023-12-05 08:53:34 +01:00
Francis Bouvier
2065d47d8e Check DOMError
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2023-11-28 17:55:49 +01:00
Francis Bouvier
57dcbe1ba9 Add DOMException
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2023-11-23 17:14:01 +01:00
Pierre Tachoire
5ac6a286fc dom: add DocumentType 2023-11-20 15:26:23 +01:00
Pierre Tachoire
2e40837f0d dom: add HTMLCollection 2023-11-15 16:08:52 +01:00
Francis Bouvier
ac76f95916 Format test.html for easier manipulation
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-12 14:15:08 +02:00
Francis Bouvier
b8aa291e1e Iterfaces generation refacto
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-09 17:31:42 +02:00
Francis Bouvier
70e3e00042 Small fix
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-10-02 12:33:24 +02:00
Francis Bouvier
4de6ad02f5 node: move arg check in API declaration for nodeLookupPrefix method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-29 13:42:39 +02:00
Francis Bouvier
bbcd9d8dcf Use orelse
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-29 13:39:41 +02:00
Francis Bouvier
e59309e392 Replace panic by std.log.err for NOT IMPLEMENTED
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-29 13:38:07 +02:00
Francis Bouvier
09ddfd2a09 node: add lookupNamespaceURI method (NOT TESTED)
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-28 18:22:39 +02:00
Francis Bouvier
8c0279bd1b node: add lookupPrefix method (NOT TESTED)
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-28 18:17:04 +02:00
Francis Bouvier
24dc25391e node: add isSameNode method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-28 17:49:07 +02:00
Francis Bouvier
9b544db2a9 node: add normalize method (NO TEST)
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-27 14:55:36 +02:00
Francis Bouvier
2e3d1220f6 node: add replaceChild method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-27 11:13:53 +02:00
Francis Bouvier
08ded87e02 node: add removechild method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-27 11:08:37 +02:00
Francis Bouvier
012622fc5f node: add isEqualNode method (TEST NOT WORKING)
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-26 21:41:09 +02:00
Francis Bouvier
a07d9829de node: add isDefaultnamespace (TEST NOT WORKING)
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-26 21:34:46 +02:00
Francis Bouvier
f3a99af670 node: add insertBefore method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-26 21:20:54 +02:00
Francis Bouvier
1e352c48ac node: add hasChildnodes method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-26 17:55:21 +02:00
Francis Bouvier
97b2435a13 node: add getRootnode method (NOT IMPLEMENTED)
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-26 17:43:44 +02:00
Francis Bouvier
70a66a95da node: add contains method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-26 17:32:13 +02:00
Francis Bouvier
a0751e07e3 node: add compareDocumentPosition method (NOT IMPLEMENTED)
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-26 17:16:39 +02:00
Francis Bouvier
7fc6f290e7 node: add cloneNode method
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-26 16:23:11 +02:00
Francis Bouvier
fab03586a3 netsurf: move to public only API
And add some Node APIs:
- getters: firstChild, lastChild, nextSibling, previoussibling,
parentNode, parentElement, nodeName, nodeType, ownerDocument,
isConnected
- getters/setters: nodeValue, textContent
- methods: appendChild

And some test comptime optimizations on Document

Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-26 11:58:05 +02:00
Francis Bouvier
b5b4659c87 backport some node_lexbor modifications
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-21 17:05:38 +02:00
Francis Bouvier
95d04bb48e netsurf: remove Node.make_tree
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-20 23:04:55 +02:00
Francis Bouvier
766b7b4ed8 netsurf: first adaptations
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-09-20 23:04:16 +02:00
Francis Bouvier
e0eee45156 Applies changes from jsruntime Self and mem_guaranteed
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-06-02 16:54:57 +02:00
Francis Bouvier
497a1119f8 Initial commit
Signed-off-by: Francis Bouvier <francis.bouvier@gmail.com>
2023-02-07 16:22:01 +01:00