Platform/2024PlannedWork

From MozillaWiki
Jump to navigation Jump to search

Gecko Planned Work For 2024

Related Links:

These are areas of planned work for Gecko in 2024. For current areas of planned work, see:

For current web platform documentation of these areas, see the subsections at:

HTML

  • contenteditable=plaintext-only (1922723)
  • fetchpriority attribute of <link>, <script>, <img> (1854077)
  • popover, popovertarget, popovertargetaction attributes (1823757, 1866993)
  • <hr> in <select> (1830909)
  • <meta name="viewport"> support interactive-widget feature (1831649, 1920755)
  • <template> supports shadowrootmode attribute (1712140, 1870052, 1880188)

CSS

  • Nested declaration rule (1918408)
  • Relative color syntax (1900251)
  • <color-interpolation-method> is now supported in gradients (1861363)
  • :has-slotted pseudo-class (1921747)
  • :popover-open pseudo-class
  • :state() pseudo-class (1887543)
  • ::backdrop pseudo-element supports popovers
  • ::target-text pseudo-element - (1914877)
  • @property syntax descriptor support <string> syntax (1846635)
  • @starting-style - (1834876, 1834877)
  • align-content supports display: block layouts (1882853)
  • clip-path & offset-path: rect() and xywh() shape functions. (1868722)
  • color-interpolation property
  • content property support alternative text (1281158, 1896047)
  • content-visibility:auto
  • hyphens property support Czech and Slovak languages (1908931)
  • offset-position (1598152)
  • offset-path methods (1598159)
  • ray() function (1598151)
  • shape() function (1823463, 1884424, 1884425)
  • text-emphasis-position: auto (1919658)
  • text-wrap: balance
  • text-wrap shorthand for text-wrap-mode & text-wrap-style (1758391)
  • transform-box: content-box & stroke-box values (1868374)
  • transition-behavior: (1882408, 1805727, 1901645)
  • zoom (390936)

CSSOM

  • CSSNestedDeclarations interface and CSSNestedDeclarations.style property (1918408)
  • CSSPropertyRule interface (1864818)
  • registerProperty() (1864818)

SVG

  • color-interpolation attribute on <linearGradient> & <radialGradient> elements
  • stroke-width attribute support for lh & rlh line height units (1892089)
  • <text> supports ::first-letter & ::first-line CSS pseudo-elements (1302722)
  • ...
  • Removed SVGAElement.text property in preference to textContent property
  • Removed data: support in <use> element and SVGUseElement (1806964)

DOM

  • Clipboard API full support (1887845, 1858788)
    • e.g. dom.events.asyncClipboard (1809106), Clipboard.readText() (1877400),
  • clonable support in Element.attachShadow() & ShadowRoot (1868428)
  • Document.fragmentDirective – (1914877)
  • Element.ariaBrailleLabel & Element.ariaBrailleRoleDescription reflecting global ARIA HTML aria-braillelabel & aria-brailleroledescription attributes
  • Element.currentCSSZoom (1880189)
  • ElementInternals.states (1887543)
  • fetchPriority property of HTMLLinkElement, HTMLScriptElement, HTMLImageElement (1854077)
  • HTMLButtonElement popoverTargetElement & popoverTargetAction properties
  • HTMLInputElement popoverTargetElement & popoverTargetAction properties
  • HTMLElement popover property; hidePopover(), showPopover(), and togglePopover() methods; beforetoggle & toggle_event events (of type ToggleEvent)
  • HTMLVideoElement methods requestVideoFrameCallback() & cancelVideoFrameCallback() (1800882, 1919367)
  • PopoverInvokerElement (1823757, 1866993)
  • Selection.direction (1867058)
  • Selection.getComposedRanges() (1867058)
  • ShadowRoot.getHTML() and properties ShadowRoot.serializable and HTMLTemplateElement.shadowRootSerializable
  • showPicker() (1865207)

JS

  • ArrayBuffer resizable, SharedArrayBuffer growable (1884150)
  • ArrayBuffer.prototype.transfer() & ArrayBuffer.prototype.transferToFixedLength() (1865103)
  • Float16Array typed arrays (1903329)
  • Intl.Segmenter (1423593, 1883914)
  • Set.prototype methods: intersection(), union(), difference(), symmetricDifference(), isSubsetOf(), isSupersetOf(), isDisjointFrom() (1868423)
  • synchronous iterator helper methods on Iterator.prototype - (1896390)
  • Uint8Array methods (1862220, 1917885)

APIs

  • AbortSignal.any() (1830781)
  • Blob.bytes() (1896509)
  • CloseWatcher (1888729)
  • CookieStore & CookieChangeEvent interfaces, Window.cookieStore & ServiceWorkerGlobalScope.cookieStore properties (1800882)
  • IDBFactory.databases() (934640)
  • IDBTransaction.durability (1878143)
  • JSON.parse with source, JSON.isRawJSON(), JSON.rawJSON() (1913085, 1925334)
  • LargestContentfulPaint (1866266)
  • MediaStreamTrack.getCapabilities() (1179084)
  • navigator.credentials.create supports cross-origin credential creation (1870863)
  • Navigator.wakeLock - Screen Wake Lock API (1589554, 1874849)
  • Notification.silent (1809028)
  • Permissions.query() support microphone & camera permissions (1609427, 1915222)
  • PointerEvent properties altitudeAngle & azimuthAngle (1656377)
  • Promise.try() (1905364)
  • PushMessageData.bytes() (1897871)
  • Request.bytes() & Response.bytes() (1896475)
  • RTCDTMFSender.canInsertDTMF & RTCDTMFSender.insertDTMF() (1623193)
  • RTCIceCandidate properties and methods (1322186)
  • RTCRtpReceiver.getParameters() & RTCRtpSender.getParameters() (1534687)
  • RTCRtpTransceiver.setCodecPreferences() (1396922)
  • URL.parse() (1823354)
  • VideoEncoder, VideoDecoder, EncodedVideoChunk, VideoFrame, VideoColorSpace (1874445)
  • Web Codecs API support on desktop (1908572)
  • Web Crypto API support for Ed25519 (1804788), X25519 (1904836)
  • WebGLRenderingContext & WebGL2RenderingContext properties drawingBufferColorSpace (1885491) & unpackColorSpace (1885446)
  • WebSocket() constructor supports HTTPS, HTTP, and relative URLs (1797449)
  • WorkerNavigator.permissions (1193373)
  • ...
  • Removed Navigator.vibrate() (1653318, 1623193)

WebDriver BiDi

  • browser.createUserContext (1870848)
  • browser.removeUserContext (1870849)
  • browser.getUserContexts (1870847)
  • browsingContext.locateNodes command (1855023, 1869536)
  • browsingContext.navigationFailed event (1846601)
  • browsingContext.traverseHistory command (1841018)
  • input.setFiles command (1855040)
  • network.addIntercept command (1826192)
  • network.continueResponse command for remaining arguments (1853887, 1913737,
  • network.continueRequest, network.continueResponse, network.provideResponse support "request" to resume a blocked request (1874206, 1853882); support url argument (1898158)
  • network.continueWithAuth (1826196)
  • network.cookie.CHIPS (1898253, 1908160)
  • network.failRequest (1853883)
  • network.fetchError event (1790375)
  • network.removeIntercept command (1826193)
  • network.responseCompleted & network.fetchError events (1882803)
  • network.setCacheBehavior command (1906100)
  • permissions.setPermission command (1875065)
  • storage.deleteCookies command (1854581)
  • storage.getCookies command (1854580)
  • storage.setCookie command (1854582)
  • userAgent capability (1885495)

Add-ons

  • contextualIdentities.move function (1333395)
  • runtime.getContexts function (1875480)
  • runtime.onPerformanceWarning event (1861445)
  • storage.session support storage.StorageArea.getBytesInUse() and storage.session.QUOTA_BYTES property (1908925)
  • webRequest.onAuthRequired (1889897)

Protocols

  • ULPFEC packet loss recovery

HTTP

  • 103 Early Hints informational response status code enabled LINK rel=preload (1874445)
  • fetchpriority directive in the HTTP Link header (1854077)
  • Priority request and response header (1865040)
  • zstd directive supported in Content-Encoding HTTP header

Origin Trials

  • dom.origin-trials.private-attribution (1900929)

Related Projects

Specifications and Notes

Edit and publish new and updated specifications and notes. See Standards for our ongoing work in this area.

Previously

See Also