Commit graph

207 commits

Author SHA1 Message Date
Brian Smith
bff1f3bc60 Issue #1442 - Part 8: Fetch implementation of streams. https://bugzilla.mozilla.org/show_bug.cgi?id=1128959 +worker-friendly pref checking for the DOM API. 2023-10-04 09:55:06 +08:00
Brian Smith
dd2c9eb418 Issue #1442 - Part 7: Use of ReadableStream in WebIDL files. https://bugzilla.mozilla.org/show_bug.cgi?id=1128959 2023-10-04 09:54:45 +08:00
Martok
e0e1542913 Issue #2321 - Fall back to 0 if setInterval interval not supplied 2023-10-03 22:03:18 +08:00
Brian Smith
dd4c0a44b6 Issue #2282 - - Properly implement Performance Timeline Level 2 w3c spec. https://bugzilla.mozilla.org/show_bug.cgi?id=1539006 Do not throw from PerformanceObserver.observe when none of the entryTypes are known. https://bugzilla.mozilla.org/show_bug.cgi?id=1403027 Implement PerformanceObserver::takeRecords(). https://bugzilla.mozilla.org/show_bug.cgi?id=1436692 "server" is not a valid PerformanceEntry type. https://bugzilla.mozilla.org/show_bug.cgi?id=1463065 Fix a null ptr crash in PerformanceObserver::Observe. https://bugzilla.mozilla.org/show_bug.cgi?id=1631346 2023-08-08 09:42:31 +08:00
Job Bautista
4ec35fdcf2 Issue #2241 - Part 7.2: Implement .fromRect and .fromQuad.
Backported from Mozilla bug 1558101.
2023-05-15 09:12:47 +08:00
Job Bautista
0e2f687f4d Issue #2241 - Part 7.1: Implement .fromFloat{32/64}Array.
Backported from Mozilla bug 1558101.
2023-05-15 09:12:41 +08:00
Job Bautista
10bdcb7e5f Issue #2241 - Part 6: Implement DOMMatrix.fromMatrix.
Also fixes .multiply() to use DOMMatrixInit.

Backported from Mozilla bug 1560462.
2023-05-15 09:12:03 +08:00
Job Bautista
51f812bb80 Issue #2241 - Part 4&5 Follow-up: Fix WebIDL errors
Remove [Pref] attribute from Geometry interfaces as they're now exposed to web
workers too via Part 5.

Remove nonexistent toJSON objects erroneously added in Part 4.1.
2023-05-15 09:11:46 +08:00
Job Bautista
c3042a2f41 Issue #2241 - Part 5: Expose Geometry interfaces to web workers.
Exposes DOMMatrix, DOMPoint, DOMQuad, and DOMRect to workers.

Backported from Mozilla bug 1420580.
2023-05-15 09:11:24 +08:00
Job Bautista
840658ab39 Issue #2241 - Part 4.2: Resurrect DOMQuad.bounds, but deprecated.
This also forces DOMQuad.toJSON() to only return the points.

Backported from Mozilla bug 1186265.
2023-05-15 09:10:49 +08:00
Job Bautista
60c88dd11b Issue #2241 - Part 4.1: Get DOMPoint, DOMQuad, DOMRect, DOMMatrix a bit closer to spec.
Backported from Mozilla bug 1186265's part 1.
2023-05-15 09:10:31 +08:00
FranklinDM
ae50e9e01d Issue #2225 - Implement Element.replaceChildren
This accounts for refactoring changes (e.g. avoids RemoveChild*
changes).

Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1626015
2023-05-02 23:55:52 +08:00
FranklinDM
3b57ba1415 Issue #2053 - Part 3: Update PerformanceMark to User Timing L3
There are a few minor differences between this and Mozilla's implementation:
(a) The type error messages were not hardcoded to the Performance class and were moved to Errors.msg or domerr.msg instead.
(b) Resist fingerprinting-pref changes were skipped.

Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1724645
2023-04-12 10:02:58 +08:00
FranklinDM
23519e0c22 Issue #2053 - Part 2: Update PerformanceMeasure to User Timing L3
There are a few minor differences between this and Mozilla's implementation:
(a) The type error messages were not hardcoded to the Performance class and were moved to Errors.msg instead.
(b) PerformanceMeasureOptions is used directly and doesn't use the the Maybe<> container class. I haven't found the reason yet, but PerformanceMeasureOptions is disallowed from having a copy constructor and without that, it isn't possible to use it with Maybe<>... There doesn't seem to be any problem with using it directly, though.
(c) Resist fingerprinting-pref changes were skipped.

Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1762482
2023-04-12 10:02:42 +08:00
FranklinDM
995f3117b0 Issue #2053 - Part 1: Performance should be an EventTarget
Some sites (e.g. Bitbucket) are now calling `performance.addEventListener` and expect that Performance is an EventTarget.

Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1432522
2023-04-12 10:02:25 +08:00
FranklinDM
31283d993b Issue #595 - Implement window.event
This MSIE extension is still technically part of the standard*, although its use is discouraged. This API will also likely never go away based on some comments at this issue on MDN content**.

Note that this uses a different approach for getting the inner window.

* https://dom.spec.whatwg.org/#interface-window-extensions
** https://github.com/mdn/content/issues/21848

Spec PR: https://github.com/whatwg/dom/pull/407
Spec discussion: https://github.com/whatwg/dom/issues/334

Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=218415
2023-04-10 07:27:37 +08:00
FranklinDM
ef6b8db1d5 Issue #2197 - Part 3: Implement self.structuredClone()
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1722576
2023-04-10 07:26:49 +08:00
FranklinDM
4174037d8a Issue #2197 - Part 2d: Implement PostMessageOptions for Window
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1502802
2023-04-10 07:26:20 +08:00
FranklinDM
4d58139fe1 Issue #2197 - Part 2c: Implement StructuredSerializeOptions for ServiceWorker
Partially based on https://bugzilla.mozilla.org/show_bug.cgi?id=1502802
2023-04-10 07:26:05 +08:00
FranklinDM
158784cbed Issue #2197 - Part 2b: Implement StructuredSerializeOptions for Worker
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1502802
2023-04-10 07:25:49 +08:00
FranklinDM
fd982fd298 Issue #2197 - Part 2a: Implement StructuredSerializeOptions for MessagePort
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1502802
2023-04-10 07:25:34 +08:00
FranklinDM
47147d58b0 Issue #2197 - Part 1b: Transferables should be arrays of objects
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1336020
2023-04-10 07:25:20 +08:00
FranklinDM
438cdbd913 Issue #2197 - Part 1a: postMessages should have transferable as [] by default
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1336020
2023-04-10 07:25:03 +08:00
FranklinDM
b2d7504112 Issue #252 - Move getElementsByName from HTMLDocument to Document
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=1415176
2023-04-08 07:29:02 +08:00
Job Bautista
8182d08b13 Issue #1361 - Follow-up: Merge dom.getRootNode.enabled pref into dom.webcomponents.enabled. 2023-04-08 07:28:24 +08:00
FranklinDM
45c179d01b Issue #2135 - Bug 1453789: Remove Element.createShadowRoot 2023-03-06 16:16:40 +08:00
FranklinDM
e64aeea52d Issue #2135 - Bug 1430301: Implement ShadowRoot.elementFromPoint/elementsFromPoint 2023-03-06 16:15:38 +08:00
FranklinDM
3350af82c2 Issue #2135 - Bug 1438129: Remove ShadowRoot.applyAuthorStyles. 2023-03-06 16:15:24 +08:00
FranklinDM
e286eb8adb Issue #2135 - Bug 1430305: Implement ShadowRoot.fullscreenElement 2023-03-06 16:14:14 +08:00
FranklinDM
3dfffeaeca Issue #2135 - Bug 1430303: Implement ShadowRoot.pointerLockElement 2023-03-06 16:13:59 +08:00
Job Bautista
bc36c607a9 Issue #1375 - Implement customElements.upgrade.
Backported from Mozilla bug 1443722.
2022-10-12 17:20:32 +08:00
Brian Smith
e27289d569 Issue #1990 - Part 1 - EventSource for workers - Mozilla Bug 1267903 2022-09-02 10:59:03 +08:00
FranklinDM
8a7587b401 Issue #21 - Remove use counters telemetry
This reverts Bug 968923 - Implement some equivalent of Chrome's use counters (on top of telemetry?)

For reference: https://bugzilla.mozilla.org/show_bug.cgi?id=968923
2022-04-28 10:43:09 +08:00
roytam1
92a1cc3139 Revert "Issue #21 - Remove use counters telemetry"
This reverts commit 8ca9db6b65.
2022-04-27 16:25:00 +08:00
FranklinDM
8ca9db6b65 Issue #21 - Remove use counters telemetry
This reverts Bug 968923 - Implement some equivalent of Chrome's use counters (on top of telemetry?)

For reference: https://bugzilla.mozilla.org/show_bug.cgi?id=968923
2022-04-27 16:15:31 +08:00
roytam1
c576ac1792 webidl: remove VoidFunction from RTCPeerConnection.webidl, missing in Issue #3063 since upstream removed WebRTC. (originally as part of bug 1324169) 2022-03-23 00:15:39 +08:00
Moonchild
bf17b1fec3 Issue #3063 - Implement queueMicroTask(callback()) 2022-03-22 23:08:26 +08:00
Moonchild
602bb0a877 Issue #3059 - Implement Selection.setBaseAndExtent() 2022-03-22 23:08:04 +08:00
Moonchild
13c48d24b0 Issue #1797 - Implement WindowOrWorkerGlobalScope.origin
Resolves #1797
2021-08-19 09:45:43 +08:00
Moonchild
467e117fd9 Issue #1792 - Part 4: Implement constructors for the EventTarget interface. 2021-07-15 09:24:18 +08:00
Moonchild
699781f37c Issue #1783 - Part 3: Remove ResizeObservation's BroadcastSize.
This is chrome-only and unused, and interfered with getting the spec update in.
2021-06-24 11:05:47 +08:00
Moonchild
25164d0b75 Issue #1783 - Part 2: Update ResizeObserver and resizeObserverSize.
This adds the later spec revision's contentBoxSize and borderBoxSize, and the
inlineSize and blockSize concepts.
The older spec contentRect remains functional as well for backwards
compatibility with the earlier spec (that was IMHO perfectly fine as it was...)
2021-06-24 11:05:45 +08:00
Moonchild
7e02267fd3 [DOM] Add missing IDL definitions for CSP .nonce attributes.
Apparently Mozilla completely spaced out on this when adding the CSP nonce
mechanism, potentially causing web compat issues if scripting relies on
being able to get/set nonces through DOM and/or causing CSP policy check
issues if websites try to "hide" nonces.
2021-04-20 09:05:20 +08:00
athenian200
618fa768c8 Issue #1757 - Reinstate "dom.details_element.enabled" preference
The removal of this preference was botched, all other surrounding plumbing changes appear to be working okay. The ability to use prefs to control this stylesheet might be useful in the future, so perhaps this is one of those "if it ain't broke, don't fix it" bugs where leaving well enough alone in the first place would have been the best choice.
2021-04-02 10:33:54 +08:00
Moonchild
348c6604be Issue #1053 - Remove MOZ_WIDGET_ANDROID and IDB_MOBILE 2021-03-12 08:59:50 +08:00
Moonchild
a828a5f321 Issue #1719 - Make <menuitem> pref-controlled and disable by default.
Resolves #1719
2021-01-27 21:01:54 +08:00
Moonchild
15feed4c00 Issue #1689 - Part 4: Add a preference for {Document,Element}.getAnimations()
This is probably the last thing we will ship (if ever) since it needs the most
spec and implementation work for arbitrary use that is pretty far into a corner.
2021-01-21 14:31:23 +08:00
Moonchild
ad1e2abea1 Issue #1689 - Part 1: Add pref for DOM Animation timelines API
Default false, no intent to ship for web content. Always enabled for Chrome.
2021-01-21 14:31:18 +08:00
Moonchild
6d5eda3010 Issue #1682 - Remove vibrator DOM interface and support code.
Resolves #1682
2020-11-16 21:10:19 +08:00
Moonchild
0cd673d720 Issue #1656 - Part 6: Clean up the build files 2020-09-25 22:04:23 +08:00