Commit Graph
2616 Commits
Author SHA1 Message Date
ldm0 fc191afd91 fix(navigator): validate protocol handler registrations 2026-10-11 18:06:46 +08:00
ldm0 789b82102b fix(dom): isolate reflected attributes by namespace 2026-10-11 18:06:46 +08:00
ldm0 a575b78e7b fix(forms): serialize FormData from native control state 2026-10-11 18:06:46 +08:00
ldm0 0fd232adeb fix(forms): apply native input value modes and type transitions 2026-10-11 18:06:46 +08:00
ldm0 be56c47d55 fix(webidl): reconcile Media and CSP registries after rebase 2026-10-11 18:06:46 +08:00
ldm0 2bb935c669 fix(forms): preserve UTF-16 option and select values 2026-10-11 18:06:46 +08:00
ldm0 3b839de90e fix(forms): validate native FormData arguments across document realms 2026-10-11 18:06:46 +08:00
ldm0 a046607537 fix(webidl): reconcile interface registries after main rebase 2026-10-11 18:06:46 +08:00
ldm0 d54ced12cf test: reconcile WPT module registrations after rebase 2026-10-11 18:06:46 +08:00
ldm0 9b72eaf0f1 fix(forms): preserve native UTF-16 control values 2026-10-11 18:06:46 +08:00
ldm0 eab9cac776 fix(dom): preserve UTF-16 in reflected string attributes 2026-10-11 18:06:46 +08:00
ldm0 dfab1f43de fix(forms): correct native input events across document trees
Use DOM connectedness for checkbox/radio activation, make native input events composed, and reuse DOM radio groups for keyboard navigation with form and disabled-fieldset rules. Cover windowless documents, shadow boundaries, listener mutations, and native select/radio/file inputs.
2026-10-11 18:06:46 +08:00
ldm0 73c13e8dd9 fix(events): unify native auxiliary pointer event construction 2026-10-11 18:06:46 +08:00
ldm0 20716811b6 fix(events): construct native click with pointer event defaults 2026-10-11 18:06:46 +08:00
ldm0 342618d1ab fix(forms): create native lifecycle events in target realms 2026-10-11 18:06:46 +08:00
ldm0 95c45c0604 fix(events): create click and control events in target realms 2026-10-11 18:06:46 +08:00
ldm0 4ddcd90128 fix(events): isolate native DOM event initialization 2026-10-11 18:06:46 +08:00
ldm0 3af847d7a2 fix(events): retain listener worlds for foreign Window targets 2026-10-11 18:06:46 +08:00
ldm0 5e567235b8 fix(events): project DOM dispatch into listener worlds 2026-10-11 18:06:46 +08:00
ldm0 687ce71750 fix(webidl): expose UI event attributes on native prototypes 2026-10-11 18:06:46 +08:00
ldm0 44ca18f641 fix(webidl): preserve UIEvent and CompositionEvent initialization 2026-10-11 18:06:46 +08:00
ldm0 a58c9f3918 fix(webidl): preserve KeyboardEvent initialization semantics 2026-10-11 18:06:46 +08:00
ldm0 56b6dae1ec style: format imports after main rebase
Format the preserved Request and Worker exports after rebasing onto main.

Validation: cargo fmt --all; cargo clippy --workspace --all-targets
--all-features -- -D warnings; cargo nextest run --no-fail-fast
--retries 0 (20836 passed, 16 skipped; 32 threads).
2026-10-11 18:06:46 +08:00
ldm0 9ee1affd7f fix(webmessaging): preserve MessageEvent WebIDL initialization
Use typed dictionaries and arguments for constructor/initMessageEvent,
native source and MessagePort brand checks, and lossless lastEventId strings.
Allocate frozen ports arrays in the event's creation realm.

Native message producers share intrinsic event creation and payload setup,
so public ports conversion cannot invoke author code during delivery or
change an undefined message payload to the public null default.

Validated from the original repository root with workspace formatting,
all-targets/all-features Clippy with warnings denied, and full nextest:
20831 passed, 16 skipped, 32 threads, no retries.
2026-10-11 18:06:46 +08:00
ldm0 a8d27e43f8 fix(webstorage): preserve StorageEvent WebIDL initialization 2026-10-11 18:06:46 +08:00
ldm0 a158c31160 fix(test): adapt upstream font query probe after rebase 2026-10-11 18:06:46 +08:00
ldm0 91ed8b9c7c feat(canvas): implement asynchronous toBlob exports 2026-10-11 18:06:46 +08:00
ldm0 8fa7b39b0c fix(webidl): reconcile native brand exports after rebase 2026-10-11 18:06:46 +08:00
ldm0 5582c9e525 fix(dom): preserve event listener type identity 2026-10-11 18:06:46 +08:00
ldm0 a6c879ad86 fix(dom): preserve event constructor type code units 2026-10-11 18:06:46 +08:00
ldm0 3b4a10c2b5 fix(dom): preserve event state in legacy initializers
Separate event creation from legacy reinitialization. Retain composed,
timeStamp, and subclass payloads while resetting initialization state.
Preserve UTF-16 event types in all eight legacy methods and complete
WebIDL argument conversion before the dispatch guard. Correct UI, mouse,
and keyboard initializer lengths to their one required argument.

Validation: workspace fmt, all-target/all-feature clippy, and nextest
(20,812 passed, 16 skipped, no retries). The shared 288-check fixture
passes on HTTP, HTTPS, and opaque insecure origins; 21 original WPT
pages remain 148/148.
2026-10-11 18:06:46 +08:00
ldm0 b47f5190ee fix(webrtc): construct ICE error events with native fields
Use native Event state and generated WebIDL argument, dictionary, and
receiver checks for RTCPeerConnectionIceErrorEvent. Preserve DOMString
code units, convert USVString fields, and expose readonly payload getters.

Validated with workspace fmt, all-target all-feature clippy, and nextest
(20,811 passed, 16 skipped, no retries). The 13-page native WPT event
selection passes all 99 assertions; the shared fixture passes 168 checks
on HTTP, HTTPS, and opaque insecure origins.
2026-10-11 18:06:46 +08:00
ldm0 2da839b8c8 fix(webrtc): implement native RTCError and RTCErrorEvent
Replace both constructor stubs with WebIDL conversion and native readonly metadata. Preserve UTF-16 messages, branded cross-realm payloads and the shared Event lifecycle and constructor fallback.

Validation: 32 jobs; cargo fmt --all; workspace/all-targets/all-features clippy with -D warnings; nextest 20,810 passed, 16 skipped, no retries. RTCError upstream WPT 21/21; shared fixture 191/191 in HTTP, HTTPS and insecure contexts.
2026-10-11 18:06:46 +08:00
ldm0 22750a4040 feat(cssom): expose CSS property shells with wide keywords 2026-10-11 18:06:46 +08:00
ldm0 47a48b2bdc fix(indexeddb): keep index build checks after main rebase 2026-10-11 18:06:46 +08:00
ldm0 c16f15bd4d feat(webtransport): expose secure transport interface shells 2026-10-11 18:06:46 +08:00
ldm0 b0d3397bb7 feat(speech): expose synthesis event interface shells 2026-10-11 18:06:46 +08:00
ldm0 d628485e5d feat(webidl): expose reporting interface shells 2026-10-11 18:06:46 +08:00
ldm0 0313a70c49 feat(performance): expose remaining timing interface shells 2026-10-11 18:06:46 +08:00
ldm0 78f836ede2 feat(media): expose EncodedVideoChunk interface shell 2026-10-11 18:06:46 +08:00
ldm0 d3798d84d2 feat(webrtc): expose transport and RTP interface shells 2026-10-11 18:06:46 +08:00
ldm0 4ef3e28f72 feat(webaudio): expose remaining audio interface shells 2026-10-11 18:06:46 +08:00
ldm0 25dbbc7dfb feat(media): expose media stream and video interface shells 2026-10-11 18:06:46 +08:00
ldm0 2710e3201f feat(css): expose CSS animation and transition interfaces 2026-10-11 18:06:46 +08:00
ldm0 99bb1f7fdc feat(media): expose video encoder and decoder interface shells 2026-10-11 18:06:46 +08:00
ldm0 251564f98c feat(webidl): expose secure payment interface shells 2026-10-11 18:06:46 +08:00
ldm0 69cb7bac70 feat(media): expose encrypted media interface shells 2026-10-11 18:06:46 +08:00
ldm0 7092e4607c feat(webidl): expose MIDI interface shells 2026-10-11 18:06:46 +08:00
ldm0 5dabe0d630 feat(webidl): expose secure Web Locks interface shells 2026-10-11 18:06:46 +08:00
ldm0 518932bb82 feat(webidl): expose credential and WebAuthn interface shells 2026-10-11 18:06:46 +08:00