Platform/2023PlannedWork: Difference between revisions

more from 120, 121, and downgrade warning
(more from 115-119)
(more from 120, 121, and downgrade warning)
 
Line 3: Line 3:
=Gecko Planned Work For 2023=
=Gecko Planned Work For 2023=


{{warning|This is page is actively in-progress and is incomplete.}}
{{note|This page may have in-progress sections and is not fully complete.}}


Related Links:
Related Links:
Line 19: Line 19:
* <code>dirname</code> attribute on <code>input</code> & <code>textarea</code> ([https://bugzil.la/675943 675943])
* <code>dirname</code> attribute on <code>input</code> & <code>textarea</code> ([https://bugzil.la/675943 675943])
* <code>inert</code> attribute ([https://bugzil.la/1764263 1764263])
* <code>inert</code> attribute ([https://bugzil.la/1764263 1764263])
* <code>&lt;iframe&gt;</code> <code>loading</code> attribute and <code>HTMLIFrameElement.loading</code> ([https://bugzil.la/1622090 1622090])
* <code>media</code> attribute on <code>&lt;source&gt;</code> elements within <code>&lt;audio&gt;</code>, <code>&lt;video&gt;</code>, <code>&lt;picture&gt;</code> ([https://bugzil.la/1836128 1836128])
* <code>media</code> attribute on <code>&lt;source&gt;</code> elements within <code>&lt;audio&gt;</code>, <code>&lt;video&gt;</code>, <code>&lt;picture&gt;</code> ([https://bugzil.la/1836128 1836128])
* <code>rel=modulepreload</code> ([https://bugzil.la/1425310 1425310]
* <code>rel=modulepreload</code> ([https://bugzil.la/1425310 1425310]
* <code>&lt;search&gt;</code> element ([https://bugzil.la/1824121 1824121])
* <code>&lt;search&gt;</code> element ([https://bugzil.la/1824121 1824121])
* <code>translate</code> attribute ([https://bugzil.la/1418449 1418449])
* <code>translate</code> attribute ([https://bugzil.la/1418449 1418449])
* ...
 
=== ARIA ===
=== ARIA ===
* <code>image</code> role alias for <code>img</code> ([https://bugzil.la/1829269 1829269])
* <code>image</code> role alias for <code>img</code> ([https://bugzil.la/1829269 1829269])
* ...


== CSS ==
== CSS ==
Line 42: Line 42:
* <code>font-size-adjust:from-font</code> ([https://bugzil.la/1708240 1708240])
* <code>font-size-adjust:from-font</code> ([https://bugzil.la/1708240 1708240])
* <code>font-synthesis-position</code> property and <code>font-synthesis:position</code> [https://bugzil.la/1849010 1849010])
* <code>font-synthesis-position</code> property and <code>font-synthesis:position</code> [https://bugzil.la/1849010 1849010])
* <code>:has</code> pseudo-class ([https://bugzil.la/418039 meta 418039])
* <code>:has</code> pseudo-class selector ([https://bugzil.la/418039 meta 418039])
* <code>@import</code> <code>supports()</code> function <code>supports-conditions</code> feature ([https://bugzil.la/1830779 1830779])
* <code>@import</code> <code>supports()</code> function <code>supports-conditions</code> feature ([https://bugzil.la/1830779 1830779])
* <code>:lang()</code> pseudo-class support string-matching semantics (including * wildcards) for matching language codes and comma-separated lists of languages ([https://bugzil.la/1121792 1121792])
* <code>:lang()</code> pseudo-class support string-matching semantics (including * wildcards) for matching language codes and comma-separated lists of languages ([https://bugzil.la/1121792 1121792])
Line 48: Line 48:
* <code>lh</code> and <code>rlh</code> line height units ([https://bugzil.la/1310170 1310170])
* <code>lh</code> and <code>rlh</code> line height units ([https://bugzil.la/1310170 1310170])
* math functions: <code>abs()</code>, <code>sign()</code>, <code>round()</code>, <code>mod()</code>, <code>rem()</code>, <code>pow()</code>, <code>sqrt()</code>, <code>hypot()</code>, <code>log()</code>, <code>exp()</code> ([https://bugzil.la/1814589 1814589])
* math functions: <code>abs()</code>, <code>sign()</code>, <code>round()</code>, <code>mod()</code>, <code>rem()</code>, <code>pow()</code>, <code>sqrt()</code>, <code>hypot()</code>, <code>log()</code>, <code>exp()</code> ([https://bugzil.la/1814589 1814589])
* <code>math-style</code>, <code>math-depth</code> properties, and <code>font-size:math<code> ([https://bugzil.la/1845516 1845516]).
* <code>math-style</code>, <code>math-depth</code> properties, and <code>font-size:math</code> ([https://bugzil.la/1845516 1845516]).
* Nesting Module ([https://bugzil.la/id=1648037 1648037])
* Nesting Module ([https://bugzil.la/id=1648037 1648037])
* <code>:nth-child</code> selector supports children based on An+B rule that also matches a defined selector. See ([https://bugzil.la/1808229 1808229])
* <code>:nth-child</code> selector supports children based on An+B rule that also matches a defined selector. See ([https://bugzil.la/1808229 1808229])
Line 55: Line 55:
* <code>scripting</code> media feature support ([https://bugzil.la/1166581 1166581])
* <code>scripting</code> media feature support ([https://bugzil.la/1166581 1166581])
* system-color values <code>Mark</code>, <code>MarkText</code>, and <code>ButtonBorder</code> ([https://bugzil.la/1638052 1638052])
* system-color values <code>Mark</code>, <code>MarkText</code>, and <code>ButtonBorder</code> ([https://bugzil.la/1638052 1638052])
* <code>text-indent</code> values <code>each-line</code> and <code>hanging</code>, and multiple values ([https://bugzil.la/784648 784648])
* <code>text-wrap<code> values <code>balance</code> and <code>stable</code> ([https://bugzil.la/1731541 1731541])
* <code>transform-box</code> values <code>content-box</code>, <code>stroke-box</code> ([https://bugzil.la/1819464 1819464])
* <code>transform-box</code> values <code>content-box</code>, <code>stroke-box</code> ([https://bugzil.la/1819464 1819464])
* <code>-webkit-text-security</code> property ([https://bugzil.la/1826629 1826629])
* <code>-webkit-text-security</code> property ([https://bugzil.la/1826629 1826629])
Line 64: Line 66:
* <code>&lt;length&gt;</code> CSS Level 3 data types for all SVG attributes that accept a length value ([https://bugzil.la/1287054 1287054])
* <code>&lt;length&gt;</code> CSS Level 3 data types for all SVG attributes that accept a length value ([https://bugzil.la/1287054 1287054])
* <code>&lt;script&gt;</code> element with <code>type="module"</code>, <code>defer</code>, and <code>async</code> attributes in inline SVGs ([https://bugzil.la/1839954 1839954])  
* <code>&lt;script&gt;</code> element with <code>type="module"</code>, <code>defer</code>, and <code>async</code> attributes in inline SVGs ([https://bugzil.la/1839954 1839954])  
* ...


== JS ==
== JS ==
* ...
* <code>Array.fromAsync()</code> ([https://bugzil.la/1795816 1795816])
* <code>Array.fromAsync()</code> ([https://bugzil.la/1795816 1795816])
* <code>Array.toReversed() .toSorted() .toSpliced() .with(), TypedArrays.toReversed() .toSorted() .with()</code> ([https://bugzil.la/1811057 1811057])
* <code>Array.toReversed() .toSorted() .toSpliced() .with(), TypedArrays.toReversed() .toSorted() .with()</code> ([https://bugzil.la/1811057 1811057])
* <code>CanvasRenderingContext2D.reset()</code> ([https://bugzil.la/1709347 1709347])
* <code>CanvasRenderingContext2D.reset()</code> ([https://bugzil.la/1709347 1709347])
* Compression Streams API, including compress and decompress data using the <code>gzip</code> and <code>deflate</code> formats ([https://bugzil.la/1823619 1823619])  
* Compression Streams API, including compress and decompress data using the <code>gzip</code> and <code>deflate</code> formats ([https://bugzil.la/1823619 1823619])  
* <code>Date.parse()</code> additional date formats ([https://bugzil.la/1557650 1557650], [https://bugzil.la/449921 449921], [https://bugzil.la/1852422 1852422])
* <code>Date.parse()</code> additional date formats ([https://bugzil.la/1557650 1557650], [https://bugzil.la/449921 449921], [https://bugzil.la/1852422 1852422], [https://bugzil.la/1858851 1858851], [https://bugzil.la/1863489 1863489], [https://bugzil.la/1863125 1863125], [https://bugzil.la/1617562 1617562],)
* <code>Intl.NumberFormat</code> constructor options <code>roundingIncrement</code>, <code>roundingMode</code>, <code>roundingPriority</code>, <code>trailingZeroDisplay</code>, <code>useGrouping</code>, and methods <code>formatRange()</code> & <code>formatRangeToParts()</code> ([https://bugzil.la/1795756 1795756])
* <code>Intl.NumberFormat</code> constructor options <code>roundingIncrement</code>, <code>roundingMode</code>, <code>roundingPriority</code>, <code>trailingZeroDisplay</code>, <code>useGrouping</code>, and methods <code>formatRange()</code> & <code>formatRangeToParts()</code> ([https://bugzil.la/1795756 1795756])
* <code>Intl.PluralRules</code> constructor options <code>roundingIncrement</code>, <code>roundingMode</code>, <code>roundingPriority</code>, <code>trailingZeroDisplay</code>, and the <code>selectRange()</code> method ([https://bugzil.la/1795756 1795756])
* <code>Intl.PluralRules</code> constructor options <code>roundingIncrement</code>, <code>roundingMode</code>, <code>roundingPriority</code>, <code>trailingZeroDisplay</code>, and the <code>selectRange()</code> method ([https://bugzil.la/1795756 1795756])
Line 78: Line 78:
* <code>Object.groupBy()</code> ([https://bugzil.la/1792650 1792650])
* <code>Object.groupBy()</code> ([https://bugzil.la/1792650 1792650])
* <code>OffscreenCanvasRenderingContext2D.reset()</code> ([https://bugzil.la/1709347 1709347])
* <code>OffscreenCanvasRenderingContext2D.reset()</code> ([https://bugzil.la/1709347 1709347])
* <code>Promise.withResolvers()</code> static method, <code>resolve</code> and <code>reject</code> callback functions in same scope as returned <code>Promise</code> ([https://bugzil.la/1845586 1845586])
* <code>String.prototype.isWellFormed()</code> and <code>String.prototype.toWellFormed()</code> ([https://bugzil.la/1850755 1850755])
* <code>String.prototype.isWellFormed()</code> and <code>String.prototype.toWellFormed()</code> ([https://bugzil.la/1850755 1850755])
* Workers support loading ECMAScript modules. ([https://bugzil.la/1812591 1812591])
* Workers support loading ECMAScript modules. ([https://bugzil.la/1812591 1812591])
* Worklets support <code>import</code> to statically import ECMAscript/JavaScript modules ([https://bugzil.la/1812591 1812591])
* Worklets support <code>import</code> to statically import ECMAscript/JavaScript modules ([https://bugzil.la/1812591 1812591])
* ...


== APIs ==
== APIs ==
Line 93: Line 93:
* Compression Streams ([https://bugzil.la/1823619 1823619])
* Compression Streams ([https://bugzil.la/1823619 1823619])
* <code>MediaDevices.selectAudioOutput()</code>, <code>MediaDevices.enumerateDevices()</code>, <code>HTMLMediaElement.setSinkId()</code>, <code>HTMLMediaElement.sinkId</code>, and <code>Permissions-Policy: speaker-selection</code> ([https://bugzil.la/1498512 1498512])
* <code>MediaDevices.selectAudioOutput()</code>, <code>MediaDevices.enumerateDevices()</code>, <code>HTMLMediaElement.setSinkId()</code>, <code>HTMLMediaElement.sinkId</code>, and <code>Permissions-Policy: speaker-selection</code> ([https://bugzil.la/1498512 1498512])
* <code>Navigator.userActivation</code> property and <code>UserActivation</code> interface ([https://bugzil.la/1791079 1791079])
* Opaque Response Blocking (<abbr>ORB</abbr>, [https://bugzil.la/1532642 1532642])
* Opaque Response Blocking (<abbr>ORB</abbr>, [https://bugzil.la/1532642 1532642])
* <code>PublicKeyCredential.authenticatorAttachment</code> property ([https://bugzil.la/1810851 1810851])
* <code>PublicKeyCredential</code>: <code>parseCreationOptionsFromJSON()</code>, <code>parseRequestOptionsFromJSON()</code>, <code>toJSON() methods</code> ([https://bugzil.la/1823782 1823782])
* <code>PublicKeyCredential</code>: <code>parseCreationOptionsFromJSON()</code>, <code>parseRequestOptionsFromJSON()</code>, <code>toJSON() methods</code> ([https://bugzil.la/1823782 1823782])
* <code>ReadableStream.from()</code> [https://bugzil.la/1772772 1772772]
* <code>ReadableStream.from()</code> [https://bugzil.la/1772772 1772772]
Line 103: Line 105:
* <code>URL.canParse()</code> ([https://bugzil.la/1823354 1823354])
* <code>URL.canParse()</code> ([https://bugzil.la/1823354 1823354])
* <code>URLSearchParams.has()</code> and <code>URLSearchParams.delete()</code> methods support optional <code>value</code> argument ([https://bugzil.la/1831587 1831587])
* <code>URLSearchParams.has()</code> and <code>URLSearchParams.delete()</code> methods support optional <code>value</code> argument ([https://bugzil.la/1831587 1831587])
* Web Authentication API <code>minPinLength</code> ([https://bugzil.la/1844450 1844450])
* WebTransport API ([https://bugzil.la/1692754 1692754], [https://bugzil.la/1818754 1818754], [https://bugzil.la/1791835 1791835])
* WebTransport API ([https://bugzil.la/1692754 1692754], [https://bugzil.la/1818754 1818754], [https://bugzil.la/1791835 1791835])
* <code>WebTransportSendStream.sendOrder</code> property ([https://bugzil.la/1853444 1853444])
* <code>Window.print()</code> print dialog on Android, to print current document ([https://bugzil.la/1809922 1809922])
* <code>Window.print()</code> print dialog on Android, to print current document ([https://bugzil.la/1809922 1809922])
* ...


=== DOM ===
=== DOM ===
* ...
* <code>CSSContainerRule</code> ([https://bugzil.la/1787173 1787173])
* <code>CSSContainerRule</code> ([https://bugzil.la/1787173 1787173])
* <code>HTMLInputElement.showPicker()</code> support <code><input type="week"></code> and <code><input type="month"></code>  ([https://bugzil.la/1853797 1853797])
* <code>scrollend</code> events ([https://bugzil.la/1797013 1797013], [https://bugzil.la/1803435 1803435])
* <code>scrollend</code> events ([https://bugzil.la/1797013 1797013], [https://bugzil.la/1803435 1803435])
* <code>TextMetrics.fontBoundingBox*</code> ([https://bugzil.la/1102584 1102584])
* <code>TextMetrics.fontBoundingBox*</code> ([https://bugzil.la/1102584 1102584])
* <code>TextMetrics.fontBoundingBoxAscent</code> and <code>TextMetrics.fontBoundingBoxDescent</code> ([https://bugzil.la/1801198 1801198])
* <code>TextMetrics.fontBoundingBoxAscent</code> and <code>TextMetrics.fontBoundingBoxDescent</code> ([https://bugzil.la/1801198 1801198])
* ...


=== WebRTC ===
=== WebRTC ===
* ...
* <code>RTCRtpSender.getCapabilities()</code> ([https://bugzil.la/1531460 1531460])
* <code>RTCRtpSender.getCapabilities()</code> ([https://bugzil.la/1531460 1531460])
* <code>RTCRtpReceiver.getCapabilities()</code> ([https://bugzil.la/1531461 1531461])
* <code>RTCRtpReceiver.getCapabilities()</code> ([https://bugzil.la/1531461 1531461])
Line 125: Line 126:
* <code>RTCPeerConnectionStats</code> ([https://bugzil.la/1531087 1265827])
* <code>RTCPeerConnectionStats</code> ([https://bugzil.la/1531087 1265827])
* <code>RTCRtpReceiver.jitterBufferTarget</code> ([https://bugzil.la/1592988 1592988])
* <code>RTCRtpReceiver.jitterBufferTarget</code> ([https://bugzil.la/1592988 1592988])
* ...


== HTTP ==
== HTTP ==
Line 133: Line 133:
* <code>Permissions-Policy</code> header <code>publickey-credentials-get</code> directive ([https://bugzil.la/1460986 1460986])  
* <code>Permissions-Policy</code> header <code>publickey-credentials-get</code> directive ([https://bugzil.la/1460986 1460986])  
* <code>Range</code> header is a CORS-safelisted request header when the value is a single byte range ([https://bugzil.la/1733981 1733981])
* <code>Range</code> header is a CORS-safelisted request header when the value is a single byte range ([https://bugzil.la/1733981 1733981])
* <code>Sec-GPC</code> HTTP request header along with <code>Navigator.globalPrivacyControl</code> and <code>WorkerNavigator.globalPrivacyControl</code> properties ([https://bugzil.la/1856029 1856029])
* <code>Sec-Purpose</code> HTTP header included in requests to Prefetch resources ([https://bugzil.la/1836328 1836328])
* <code>Sec-Purpose</code> HTTP header included in requests to Prefetch resources ([https://bugzil.la/1836328 1836328])
* ...


== Media ==
== Media ==
* ...
* AV1 video codec support on Android with hardware accelerated decoding if available ([https://bugzil.la/1672276 1672276])
* AV1 video codec support on Android with hardware accelerated decoding if available ([https://bugzil.la/1672276 1672276])
* ...


== See Also ==
== See Also ==
canmove, Confirmed users
2,675

edits