Commit Graph

188 Commits

Author SHA1 Message Date
Pierre Tachoire
63e19c7704 netsurf: factorize document parsing 2024-02-29 14:14:13 +01:00
Pierre Tachoire
25bc2d5e75 DOM: improve innerHTML setter test 2024-02-28 14:44:40 +01:00
Pierre Tachoire
810bd11a5b dump: rename HTML dump funcs 2024-02-28 14:39:22 +01:00
Pierre Tachoire
c0e2377e16 dom: implement innerHTML setter 2024-02-27 16:11:11 +01:00
Pierre Tachoire
f7c0bcceae dom: fix replace child 2024-02-27 16:11:11 +01:00
Pierre Tachoire
37f4a9c72c dom: add innerHTML getter 2024-02-27 16:11:10 +01:00
Francis Bouvier
501b3caa8e Add legacy document.createEvent and event.initEvent
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-29 09:04:03 +01:00
Francis Bouvier
ce3c533680 Add deinit for EventTarget (eventTargetRemoveAllEventListeners)
And unify the way allocator is used on eventTarget add/remove listener

Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-29 08:01:35 +01:00
Francis Bouvier
9ba4c69a92 Add removeEventListener
And check if callback has been already added in addEventListener

Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-24 11:43:16 +01:00
Francis Bouvier
3483dfa81e Check if event target has listener before adding it
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-23 02:56:12 +01:00
Francis Bouvier
de7fe8ba09 Add tests for Event
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-19 16:46:09 +01:00
Francis Bouvier
da0a54a0df Add more tests cases for event capture/target/bubbles phases
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-19 13:16:40 +01:00
Francis Bouvier
2faf584d36 Updates, fix and Event properties
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-18 22:00:36 +01:00
Francis Bouvier
86cc3d25dc Move some details implementation from EventTarget to the parser
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-17 15:29:48 +01:00
Francis Bouvier
ae6a714573 First implementation of Event system
Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-17 00:12:57 +01:00
Pierre Tachoire
d8df27ead7 dom: refacto append/prepend/replaceChild in Node 2024-01-18 09:59:26 +01:00
Pierre Tachoire
b33fc68898 dom: add doc.prepend/append 2024-01-18 09:53:21 +01:00
Pierre Tachoire
c0643398d7 dom: declare document prepend/append/replaceChildren 2024-01-18 09:53:20 +01:00
Pierre Tachoire
84aad08806 dom: add element.replaceChildren 2024-01-18 09:53:20 +01:00
Pierre Tachoire
3af716d934 dom: add element prepend and append 2024-01-18 09:53:16 +01:00
Pierre Tachoire
a2e266514f dom: extract walker from html_collection to its own file 2024-01-17 18:25:05 +01:00
Pierre Tachoire
a461ecd7df Merge pull request #129 from lightpanda-io/html-collection-arraylike
dom: html collection: implement array like
2024-01-16 15:50:40 +01:00
Pierre Tachoire
93db41ff10 html_collection: update iterator values 2024-01-15 14:25:20 +01:00
Francis Bouvier
5734b903ec Adapt HTMLCollectionIterator to HTMLCollection._item changes
And update jsruntime to fix the build

Signed-off-by: Francis Bouvier <francis@lightpanda.io>
2024-01-13 15:14:43 +01:00
Pierre Tachoire
f59f36422c html_collection: free generated array like keys 2024-01-11 10:49:17 +01:00
Pierre Tachoire
39afb6593d dom: hmtl collection: wip postAttach 2024-01-11 10:00:00 +01:00
Pierre Tachoire
c1b4026fa3 Merge pull request #144 from lightpanda-io/html-doc
dom: DocumentHTML getters
2024-01-10 17:33:43 +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
ca6bb577c6 Document: use document cast to node 2024-01-09 14:24:55 +01:00
Pierre Tachoire
c73ecb5e0d HTMLDocument: implement all getter 2024-01-09 14:13:51 +01:00
Pierre Tachoire
91d1f539d4 HTMLDocument: implements anchors 2024-01-09 14:13:51 +01:00
Pierre Tachoire
584b254c08 HTMLDocument: applets return empty collection 2024-01-09 14:13:50 +01:00
Pierre Tachoire
db8031f965 HTMLCollection: add match by links 2024-01-09 14:13:48 +01:00
Pierre Tachoire
2b681c8353 nodelist: add comment about liveness 2024-01-09 14:13:47 +01:00
Pierre Tachoire
0b952f5295 HTMLCollection: add a matcher by name 2024-01-09 14:13:47 +01:00
Pierre Tachoire
3b851f889e dom: add Element AttributeNode funcs 2024-01-03 14:44:24 +01:00
Pierre Tachoire
152014fe16 dom: implement Attr interface 2024-01-03 14:20:42 +01:00
Pierre Tachoire
874677fa81 Update src/dom/document.zig
Co-authored-by: Francis Bouvier <francis@lightpanda.io>
2023-12-19 14:57:26 +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
d7f8014d53 dom: add basic document queryselector 2023-12-19 14:47:10 +01:00
Pierre Tachoire
459a46a553 dom: implement basic queryselector for element 2023-12-19 14:47:08 +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
455136df17 code style 2023-12-15 16:53:46 +01:00
Pierre Tachoire
a9fee9be07 dom: implement NonDocumentTypeChildNode mixin for element 2023-12-15 16:53:41 +01:00
Pierre Tachoire
bedac0a2c5 html_collection: explicitely list switch cases 2023-12-15 13:55:04 +01:00
Pierre Tachoire
314d2dae80 typo fix
Co-authored-by: Francis Bouvier <francis@lightpanda.io>
2023-12-15 13:54:52 +01:00
Pierre Tachoire
510dd8bf9d dom: imprive children walker 2023-12-13 16:23:45 +01:00
Pierre Tachoire
d1f8555c1e element: implement parenteNode accessors 2023-12-13 13:38:24 +01:00