Safari Technology Preview – WebKit https://webkit.org Open Source Web Browser Engine Thu, 12 Mar 2026 21:39:38 +0000 en-US hourly 1 https://wordpress.org/?v=6.9.1 Release Notes for Safari Technology Preview 239 https://webkit.org/blog/17852/release-notes-for-safari-technology-preview-239/ Thu, 12 Mar 2026 21:21:57 +0000 https://webkit.org/?p=17852 Safari Technology Preview Release 239 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 307619@main…308417@main.

Accessibility

Resolved Issues

  • Fixed an issue where SVG <use> elements referencing <symbol> elements inside an <img> were incorrectly included as unnamed images in VoiceOver’s Images web rotor. (308126@main) (98999595)
  • Fixed an issue where VoiceOver was unable to access aria-owned rows and their cells in grids and tables. (308087@main) (168770938)
  • Fixed an issue where VoiceOver could not find focusable splitter elements when navigating to the next or previous form control. (308089@main) (170187464)
  • Fixed an issue where controls with aria-labelledby did not use the native label’s geometry when both the control and its ARIA label had no visible bounding box. (307727@main) (170518900)

CSS

New Features

  • Added support for the :open pseudo-class for <input> elements. (308148@main) (170804152)

Resolved Issues

  • Fixed an issue where tables with collapsed borders incorrectly calculated the first row width, causing excess border width to spill into the table’s margin area. (308311@main) (149675907)
  • Fixed an issue where inset box-shadow was incorrectly positioned on table cells with collapsed borders. (307661@main) (169254286)
  • Fixed an issue where display: grid subgrids inside grid-lanes containers incorrectly contributed their item intrinsic sizes to the parent’s track sizing algorithm. (308253@main) (170168798)
  • Fixed the baseline calculation for inline-block elements so that when overflow is not visible, the baseline is correctly set to the bottom margin edge. (307718@main) (170575015)
  • Fixed an issue where replaced elements did not correctly apply min-height and min-width constraints in certain configurations. (308212@main) (170765025)
  • Fixed an issue where children with percentage heights inside absolutely positioned elements using intrinsic height values (fit-content, min-content, max-content) incorrectly resolved against the containing block’s height instead of being treated as auto. (308226@main) (171179193)

Editing

Resolved Issues

  • Fixed an issue where execCommand('FormatBlock') did not preserve inline styles of replaced block elements, causing text formatting to be lost when pasting content. (308365@main) (157657531)
  • Fixed an issue where text-indent flickered or was ignored on contenteditable elements while typing. (307646@main) (170280101)

Forms

Resolved Issues

  • Fixed an issue where a readonly date <input> could still be edited via keyboard using the date picker. (307934@main) (169488939)

MathML

Resolved Issues

  • Fixed an issue where dynamic changes to <mo> element attributes did not trigger a relayout. (308014@main) (170907029)
  • Fixed positioning of the <mprescripts> element within <mmultiscripts> layout. (308013@main) (170909975)
  • Fixed an issue where the MathML fraction bar was not painted when its thickness was equal to its width. (308025@main) (170934351)
  • Fixed an issue where <none> and <mprescripts> elements were not laid out as <mrow> elements in MathML. (308050@main) (170940035)

Media

Resolved Issues

  • Fixed an issue where the VideoFrame constructor did not handle the video color range correctly for NV12 (I420 BT601) video frames. (307649@main) (170299037)

PDF

Resolved Issues

  • Fixed a regression where form fields in PDF documents were not readable when editing in dark mode. (308330@main) (171198060)

Rendering

Resolved Issues

  • Fixed an issue where images were incorrectly stretched in certain page layouts. (307751@main) (170270187)

Scrolling

Resolved Issues

  • Fixed an issue where interrupting scroll momentum caused the scrolling container to stop rendering and hit-testing to be misplaced. (308215@main) (116205365)
  • Fixed an issue where pages could become blank and jump to the top after dynamically loading new content when scroll anchoring was enabled. (308352@main) (170889205)
  • Fixed an issue where scroll anchoring could cause pages to scroll to negative offsets. (308320@main) (171221075)

Web API

Resolved Issues

  • Fixed an issue where the change event was not fired on <input> and <textarea> elements when they lost focus while another application was in the foreground. (308203@main) (98526540)
  • Fixed an issue where the dragend event had incorrect coordinates when dragging within a nested <iframe>. (308216@main) (170750013)

Web Inspector

New Features

  • Added color contrast information within the Color Picker in Web Inspector. (308318@main) (113887185)

Resolved Issues

  • Fixed an issue in the Network panel where the Request / Response menu did not remember the user’s previously selected value. (308142@main) (108231795)
  • Fixed an issue in the Elements tab where “Copy HTML” only copied HTML for a single node when multiple nodes are selected. (307826@main) (169196441)

WebAssembly

Resolved Issues

  • Fixed WebAssembly streaming compilation APIs to accept the optional compileOptions parameter required to enable JS String builtins. (308419@main) (170989896)

WebRTC

Resolved Issues

  • Fixed an issue where RTCPeerConnection.addIceCandidate() did not reject when the connection was already closed. (307702@main) (170470988)
]]>
Release Notes for Safari Technology Preview 238 https://webkit.org/blog/17848/release-notes-for-safari-technology-preview-238/ Thu, 26 Feb 2026 22:36:22 +0000 https://webkit.org/?p=17848 Safari Technology Preview Release 238 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 306596@main…307618@main.

Animations

New Features

  • Enabled threaded time-based animation resolution, synchronizing accelerated time-based animations with scroll-driven animations while preserving enhanced performance by running animations off the main thread. This also allows CSS Motion Path animations to be accelerated. (307252@main) (170131323)

CSS

New Features

  • Added support for the CSS :open pseudo-class, which matches form elements and other elements in an open state. (307295@main) (170108337)

Resolved Issues

  • Fixed scrollable overflow computation for block containers to account for padding-inline-end, aligning with the CSS Overflow specification. (307212@main) (144312078)
  • Fixed rendering of linear gradients when all color stops are at the same position. (306823@main) (169063497)

Editing

New Features

  • Added menu items to convert editable text between Simplified and Traditional Chinese characters in the “Transformations” submenu. (306761@main) (156354464)

Forms

New Features

  • Enabled the customizable <select> element, allowing custom styling and content in <select> dropdowns using appearance: base-select. (307548@main) (170328089)

Networking

Resolved Issues

  • Fixed an issue where Safari’s address bar could display an internationalized domain name (IDN) homograph as a visually identical legitimate Latin domain, enabling potential phishing attacks. (307005@main) (166796168)
  • Fixed incorrect URL query percent-encoding when using non-UTF-8 character encodings such as iso-8859-2, windows-1250, and gbk. (306768@main) (169566553)

Rendering

Resolved Issues

  • Fixed a performance issue causing a hang when rendering tables with a large number of rowspan="0" cells. (306891@main) (146056348)

SVG

Resolved Issues

  • Fixed: Updated the default values of fx and fy attributes on SVGRadialGradientElement to 50% to align with the SVG2 specification. (306811@main) (169645572)
  • Fixed SVGAnimatedRect.baseVal to ignore invalid values set on the viewBox attribute, such as negative width or height, aligning with Firefox and Chrome. (307463@main) (170214971)
  • Fixed SVG length attributes to reset to their default values when removed, rather than retaining previously set values. (307585@main) (170360351)

Scrolling

New Features

  • Enabled scroll anchoring, which prevents visible jumps in scroll position when content is inserted or removed above the viewport. (307475@main) (170279026)

Web API

New Features

  • Added support for ReadableStream.from() to create a ReadableStream from an async iterable or iterable. (306786@main) (169605740)
  • Added support for transferring ReadableStream objects via postMessage(). (307068@main) (169950592)

Resolved Issues

  • Fixed an issue where Speculation Rules did not trigger prefetches for anchor elements that were not themselves visible but had visible descendants. (306730@main) (169561588)
  • Fixed NavigateEvent.canIntercept to correctly return false when navigating to a URL with a different port, aligning with the Navigation API specification. (307316@main) (169845691)

Web Inspector

New Features

  • Improved discoverability of color formats and gamuts in the color picker by adding explicit format and gamut toggle controls. (306691@main) (168216591)

Resolved Issues

  • Fixed an issue where the text filter in the Sources tab did not apply to Local Overrides and Console Snippets sections. (306647@main) (169443917)
  • Fixed an issue where tree outlines in Web Inspector would intermittently show blank content while scrolling when a filter was active. (306680@main) (169502061)
  • Fixed an issue in the Timelines tab where rows containing object previews were sometimes not visible in the heap snapshot data grid. (307358@main) (170164522)
  • Fixed context menu items in the Elements tab to only display relevant options when multiple DOM nodes are selected. (307485@main) (170307979)

WebAssembly

New Features

  • Added support for JavaScript Promise Integration (JSPI) for WebAssembly, enabling WebAssembly code to suspend and resume execution while waiting for JavaScript promises. (307404@main) (170260385)

WebRTC

Resolved Issues

  • Fixed RTCRtpSynchronizationSource.timestamp to use the correct time base, aligning with the WebRTC specification. (307063@main) (169679084)
  • Fixed RTCIceCandidate.toJSON() to include the usernameFragment field in the serialized output. (306845@main) (169679947)
  • Fixed RTCRtpTransceiver.setCodecPreferences() to accept codec entries regardless of the mimeType case, aligning with Firefox and the specification. (307062@main) (169789074)
  • Fixed RTCRtpSender to allow a maxFramerate encoding parameter value of 0, aligning with the specification and other browsers. (307034@main) (169863687)
]]>
Release Notes for Safari Technology Preview 237 https://webkit.org/blog/17842/release-notes-for-safari-technology-preview-237/ Thu, 12 Feb 2026 16:59:49 +0000 https://webkit.org/?p=17842 Safari Technology Preview Release 237 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 305774@main…306595@main.

Accessibility

Resolved Issues

  • Fixed slot elements referenced by aria-labelledby to correctly use their assigned slotted content for accessible names and ignore hidden slotted nodes. (305882@main) (114500560)
  • Fixed <meter> element to have consistent labels between aria-label and title attributes. (305883@main) (127460695)
  • Fixed elements with display: contents and content in a shadow root to have their content properly read when referenced by aria-labelledby. (305918@main) (129361833)
  • Fixed aria-labelledby to use the checkbox name instead of its value when the checkbox name comes from an associated <label> element. (305894@main) (141564913)
  • Fixed grid elements with child rows in a shadow root to properly work with VoiceOver. (306159@main) (153134654)
  • Fixed elements with aria-controls or aria-expanded and the hidden attribute to no longer appear in VoiceOver’s Form Control menu. (305902@main) (162783041)
  • Fixed ::first-letter text not being exposed in the accessibility tree when no other text accompanies it. (305884@main) (168458291)

CSS

New Features

  • Added support for the :heading pseudo-class selector. (306151@main) (158759228)

Resolved Issues

  • Fixed CSS rules within @scope not being applied to <input> and <textarea> elements. (306129@main) (168101378)
  • Fixed dynamic flow-tolerance changes to trigger relayout for display: grid-lanes. (306093@main) (168711707)

DOM

Resolved Issues

  • Fixed offsetX and offsetY for SVG elements to use the outermost SVG as the base for coordinate calculation. (305993@main) (168548585)

HTML

New Features

  • Added support for the source attribute on ToggleEvent interface. (306152@main) (152580641)

Networking

Resolved Issues

  • Fixed X-Frame-Options to only strip tab or space characters, not vertical tabs. (306279@main) (126915315)
  • Fixed range request validation to properly handle HTTP 416 (Requested Range Not Satisfiable) responses. (305866@main) (168487440)

Rendering

Resolved Issues

  • Fixed table rendering for rowspanned cells and bottom border color. (306471@main) (94163960)
  • Fixed <marquee> elements causing incorrect table width calculations. (306059@main) (99826593)
  • Fixed table layout to properly handle visibility: collapse on columns. (305997@main) (168556786)
  • Fixed intrinsic sizing for absolutely positioned replaced elements. (306309@main) (168815514)
  • Fixed percentage padding in table cells to resolve against column widths. (306281@main) (168940907)
  • Fixed table height distribution to apply to tbody sections instead of only the first section. (306457@main) (169154677)

SVG

New Features

  • Added support for the color-interpolation attribute for SVG gradients. (305921@main) (87294645)

Resolved Issues

  • Fixed :visited link color to properly propagate to SVG through currentColor. (306387@main) (98776770)
  • Fixed removing an item from SVGTransformList to properly allow attribute removal. (306162@main) (117840533)

Web API

New Features

  • Added support for async iteration over ReadableStream objects using for await...of loops. (305808@main) (168049382)
  • Added support for the Service Worker static routing Resource Timing API. (306006@main) (168499249)
  • Added srgb-linear and display-p3-linear to PredefinedColorSpace. (306563@main) (169340732)

Resolved Issues

  • Fixed Content Security Policy to only recognize ASCII whitespace excluding vertical tabs to align with the specification. (306222@main) (108559413)
  • Fixed emoji input on Google Docs and similar web applications by supressing keypress events for supplementary characters. (305914@main) (122678873)
  • Fixed an issue where selecting credentials in the Digital Credentials API sometimes required a second click to trigger verification. (305868@main) (163295172)
  • Fixed window bar visibility properties (toolbar.visible, statusbar.visible, menubar.visible) to return static values per the HTML specification for privacy and interoperability. (306391@main) (166554327)
  • Fixed layerX and layerY to return correct values with CSS transforms. (306300@main) (168968832)

Web Authentication

Resolved Issues

  • Fixed an issue in Safari Technology Preview where WebAuthn authentication over NFC failed. (306280@main) (168456474)

Web Extensions

New Features

  • Added support for runtime.getDocumentId() web extension API. (305912@main) (168060269)

Web Inspector

New Features

  • Added support to show each individual request when there are redirects in the Network tab. (306537@main) (152606018)

Resolved Issues

  • Fixed an issue where a large number of search results in the Search tab would freeze Web Inspector. (306429@main) (49234522)

WebRTC

New Features

  • Added support for the targetLatency attribute in WebRTC. (306062@main) (168225793)
]]>
Release Notes for Safari Technology Preview 236 https://webkit.org/blog/17791/release-notes-for-safari-technology-preview-236/ Tue, 03 Feb 2026 00:08:11 +0000 https://webkit.org/?p=17791 Safari Technology Preview Release 236 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 305084@main…305413@main.

CSS

Resolved Issues

  • Fixed handling of padding and margins for flex and grid layouts across all writing modes. (301814@main) (71046552)
  • Fixed text-combine-upright to properly ignore letter-spacing when composing text horizontally, aligning with the CSS Writing Modes specification. (305116@main) (116562622)
  • Fixed an issue where background-blend-mode was not applied correctly when combined with background-clip: text. (305118@main) (120901898)
  • Fixed an issue where CSS @starting-style entry animations were only applied on the first transition, especially when interacting with anchor positioning or position fallbacks. (305371@main) (163928932)
  • Fixed table column width distribution when a colspan spans mixed percentage and auto-width columns to properly respect percentage constraints. (305120@main) (165561401)
  • Fixed an issue where shape-outside did not update correctly after web fonts loaded. (305299@main) (166336491)
  • Fixed table height calculation to correctly account for captions with orthogonal writing-mode. (305110@main) (167220730)
  • Fixed an issue where grid-lanes items incorrectly used a grid area as their containing block in the stacking axis, ensuring proper sizing for cases like fit-content and percentage-based dimensions. (305319@main) (167221488)
  • Fixed counter-* properties serialization order. (305086@main) (167518994)
  • Fixed outline-width and outline-offset to follow updated computed style resolution rules. (305153@main) (167618367)
  • Fixed the computed style resolution for border-*-width properties. (305212@main) (167689519)
  • Fixed the computed style resolution for the column-rule-width property. (305240@main) (167725940)
  • Fixed border-*-width, outline-width, and column-rule-width so they now pixel snap correctly during CSS animations and transitions. (305272@main) (167763497)

Forms

Resolved Issues

  • Fixed an issue where input[type="search"] fields with appearance: none incorrectly reserved space for the datalist dropdown button. (305314@main) (166754216)
  • Fixed an incorrect fallback for the menu style for empty lists, improving readability and correctness. (305228@main) (167662316)

HTML

New Features

  • Added support for using the min(), max(), and clamp() math functions in the sizes attribute of <img> elements. (305226@main) (167526292)

Resolved Issues

  • Fixed an issue where nested about:blank frames were incorrectly treated as self-referencing, preventing them from loading. (305404@main) (148373033)

Images

Resolved Issues

  • Fixed image uploading to not transcode images when accept="image/*" is specified. (305283@main) (166124206)

Media

Resolved Issues

  • Fixed an issue where <video> poster images were incorrectly double-scaled when zoom was applied by using the cached intrinsic poster size without reapplying zoom. (305347@main) (150976146)
  • Fixed an issue where the macOS inline media controls timeline scrubber overlapped the right container buttons. (305177@main) (167634241)

Rendering

Resolved Issues

  • Fixed an issue where auto-positioned absolutely positioned descendants were not always marked for layout when their parent’s border box moved. (305229@main) (131806062)
  • Fixed an issue where color fonts could affect the color of other DOM elements. (305254@main) (166631312)
  • Fixed an issue by disabling CoreGraphics blur and drop-shadow filters due to system framework bugs and reverting the previous workaround. (305216@main) (166631624)
  • Fixed <col> elements with span > 1 not applying their width to all spanned columns during table layout, aligning behavior with other browsers. (305113@main) (167225435)
  • Fixed table layout min-width distribution for spanning cells with mixed percent, fixed, and auto columns. (305215@main) (167684748)

SVG

Resolved Issues

  • Fixed breaking SVG resource referencing when removing a resource which shares its id with other resources. (305197@main) (147015037)
  • Fixed <clipPath> to clip to its <use> child element based on the visibility of the <use> target element. (305374@main) (167491519)
  • Fixed displaying an SVG filter referencing an element with a huge stroke. (305136@main) (167516452)
  • Fixed hit testing for overlapping <text> and <tspan> elements in SVG. (305221@main) (167691166)

Web API

Resolved Issues

  • Fixed DeviceMotionEvent and DeviceOrientationEvent interfaces so that they only show up in secure contexts just like the corresponding events and made ondevicemotion and ondeviceorientation enumerable, aligning with the specification. (305266@main) (44804273)
  • Fixed handling of unknown DigitalCredential protocols by gracefully filtering them out and showing a console warning instead of throwing an error. (305257@main) (166673454)

WebRTC

Resolved Issues

  • Fixed RTCConfiguration.iceServers to be a non-optional sequence with an empty array as the default, improving spec compliance and ensuring RTCPeerConnection behaves correctly when iceServers is undefined. (305152@main) (167607478)
]]>
Release Notes for Safari Technology Preview 235 https://webkit.org/blog/17739/release-notes-for-safari-technology-preview-235/ Wed, 14 Jan 2026 22:28:19 +0000 https://webkit.org/?p=17739 Safari Technology Preview Release 235 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 304072@main…305083@main.

CSS

New Features

  • Added support for parsing and evaluating name-only @container queries that have no conditions, allowing named containers to match without explicit constraints. (304388@main) (164648718)
  • Added support for math-depth. (305010@main) (167332590)

Resolved Issues

  • Fixed an issue where display: list-item was incorrectly supported on fieldset. (304102@main) (95638460)
  • Fixed baseline handling for table cells when cell has no inflow children. (304477@main) (160774504)
  • Fixed -webkit-line-clamp so that it no longer propagates into inline-block children. (304956@main) (164488778)
  • Fixed an issue where nested identical CSS filter effects were not rendered. (304143@main) (165163823)
  • Fixed ::first-line pseudo-element to always use inline display to match the CSS Display specification. (304096@main) (166068698)
  • Fixed incorrect text selection ranges for truncated right-to-left content. (304821@main) (166944754)

Deprecations

  • Removed the FontFaceSet constructor from the CSS Font Loading API as it was deemed unnecessary, aligning with the CSSWG resolution. (304912@main) (132031306)

Canvas

Resolved Issues

  • Fixed ImageBitmap created from SVG image sources to correctly honor the flipY orientation. (304137@main) (83959718)

Clipboard

Resolved Issues

  • Fixed an issue where using the “Copy Image” context menu in Safari would also copy the image URL, causing some sites to paste the URL instead of the image. (304166@main) (76598990)

Editing

Resolved Issues

  • Fixed incorrect text selection when dragging across pseudo elements. (304719@main) (142905243)
  • Fixed an issue where focusing a hidden editable element would incorrectly display the text cursor and selection at full opacity. (304160@main) (165489471)

Encoding

Resolved Issues

  • Fixed incorrect handling of invalid UTF-8 sequences in the TextDecoder streaming decoder to properly manage partial sequence buffers. (304496@main) (166583808)

Forms

Resolved Issues

  • Fixed an issue where input fields did not display user input while typing . (304311@main) (163613957)

HTML

Resolved Issues

  • Fixed HTMLImageElement.currentSrc to return an empty string for <img src="proxy.php?url="> instead of resolving to the document base URL. (304982@main) (167229274)

JavaScript

Resolved Issues

  • Fixed %TypedArray%.prototype.includes to correctly check that the index is less than the array length, aligning its behavior with ECMA-262 (304485@main). (166578170)
  • Fixed %TypedArray%.prototype.includes to correctly check that the index is less than the array length, aligning its behavior with ECMA-262. (304940@main) (167183441)

MathML

New Features

  • Added support for CSS size containment in MathML elements using contain-intrinsic-inline-size and contain-intrinsic-block-size. (304458@main) (166323213)
  • Added support for math-style and math-shift to animate as discrete values. (305017@main) (167369164)

Resolved Issues

  • Fixed incorrect positioning of mpadded content in right-to-left mode. (304087@main) (166045517)
  • Fixed an issue where RenderMathMLRoot did not reset its radical operator when msqrt or mroot children were dynamically added or removed.(304822@main) (166556627)
  • Fixed <mpadded> so that percentage values for width, height, and depth attributes are treated as absent and use content dimensions as defaults, matching the MathML Core specification. (305027@main) (167350169)

Media

Resolved Issues

  • Fixed an issue where changing an HTMLMediaElement volume from 0 to 0 did not activate the audio session or update the sleep disabler. (304297@main) (161691743)
  • Fixed playback of application/ogg blob media. (304530@main) (163119790)
  • Fixed an issue where HTMLMediaElement did not correctly detect new audio or video tracks causing Safari to pause video when leaving a tab. (304336@main) (164514685)
  • Fixed a crash in AudioData.copyTo() when copying the last channel of 3-channel audio. (304728@main) (164730320)
  • Fixed the caption menu’s On option to correctly enable the highest-scoring text track and mark the appropriate language as checked in the subtitle menu. (304462@main) (166158394)
  • Fixed parseSequenceHeaderOBU to return an AV1CodecConfigurationRecord, fully decode the Sequence Header OBU, and capture the complete color profile. (304474@main) (166439682)

Networking

Resolved Issues

  • Fixed a regression where fetch() would throw a TypeError when using targetAddressSpace: 'loopback' for localhost requests. (304577@main) (166574523)

Rendering

Resolved Issues

  • Fixed an issue where overconstrained sticky elements were not properly adjusting their insets when the sticky box rectangle was larger than the viewport. (304335@main) (163654023)
  • Fixed inconsistent text layout when using list-style-type by ensuring outside list markers do not affect intrinsic width calculations. (304947@main) (164650313)
  • Fixed incorrect min and max width calculations for block-level boxes inside inline content. (304170@main) (166157696)
  • Fixed an issue where getClientRects returned an incomplete list of rectangles for inline boxes containing block elements. (304949@main) (167209147)

SVG

New Features

  • Added support for the lighter operator in SVGFECompositeElement IDL to align with the Compositing and Blending specification. (304941@main) (166704079)

Resolved Issues

  • Fixed an issue where stroke-dasharray incorrectly propagated to SVG markers when explicitly marked as ‘0’. (305042@main) (46607685)
  • Fixed an issue where foreignObject elements in SVG incorrectly allowed margin collapsing. (304916@main) (97208795)
  • Fixed an issue where dynamically changing marker-start, marker-mid, or marker-end attributes on SVG elements did not trigger re-rendering. (304880@main) (130678384)
  • Fixed tiling gaps in CSS reference filters using <feDisplacementMap>. (304830@main) (135448018)
  • Fixed behavior to avoid incorrect pruning of SVG mask subtrees based on visibility. (305047@main) (157729389)
  • Fixed an issue where SVG animateTransform animations on hidden elements were triggering full-page rendering updates each frame. (304744@main) (159647563)
  • Fixed SVGLength percentage resolution for elements inside non-instanced <symbol> elements. (304197@main) (165431008)
  • Fixed an issue where SVGLength.value did not update for font-relative units (e.g., ch, em) after changes to writing-mode. (304657@main) (166190252)
  • Fixed missing gradient fills when using paint-order stroke fill. (288788@main) (166997630)
  • Fixed embedded <svg> elements in <img> without an explicit viewBox to synthesize preserveAspectRatio='none' so the SVG stretches to fill the container. (305043@main) (167121931)
  • Fixed the <stop> element offset attribute in SVG to reject invalid values with trailing characters and correctly fall back to 0. (305036@main) (167356988)
  • Fixed the transform order for clipPath elements so that the bounding box is scaled correctly before applying the local transform. (305078@main) (167417135)
  • Fixed incorrect rendering when combining markerUnits=strokeWidth with vector-effect=non-scaling-stroke. (305077@main) (167493417)

Web API

New Features

  • Added support for pointer event and mouse event button support for the back and forward mouse buttons when they are available. (304761@main) (137592588)

Resolved Issues

  • Fixed an issue where IntersectionObserver computed the root rectangle incorrectly when overflow clipping was present. (304296@main) (117143395)
  • Fixed DigitalCredential behavior to make user mediation implicitly required. (304676@main) (165597827)
  • Fixed an issue where the Big5 TextDecoder failed to recover and emit ASCII characters after encountering an invalid leading byte. (304591@main) (166672674)

Web Inspector

New Features

  • Added a context menu option to DOM nodes in the Elements Tab to copy pretty-printed HTML. (304698@main) (102125455)
  • Added support for toggling the visibility of User Agent stylesheet rules in the Elements tab, including hiding related “go-to” arrows in the Computed panel when the setting is disabled. (304627@main) (164265183)
  • Added support for showing actual composited layer snapshots in the 3D Layers view. (304758@main) (164977594)
  • Added support for Web Inspector to fetch CSS property keyword completions based on feature support. (304195@main) (165914089)
  • Added support for displaying Order Numbers in CSS Grid and CSS Grid Lanes overlays in Web Inspector, including new UI settings for toggling order number visibility. (304645@main) (166648769)
  • Added support for visualizing gaps between items in the masonry axis of grid-lanes layouts within the Web Inspector grid overlay. (304861@main) (166984079)

Resolved Issues

  • Fixed the Styles sidebar filter in Web Inspector to be case-insensitive. (304153@main) (36086981)
  • Fixed context menu items to rename Copy HTTP Request and Copy HTTP Response to Copy HTTP Request Headers and Copy HTTP Response Headers for clarity. (304768@main) (117708766)
  • Fixed an issue where the Sources navigation sidebar could be empty when reloading the page. (304221@main) (166141968)
  • Fixed timestamp formatting in the Web Inspector to remove unnecessary trailing .0 values for readability. (304851@main) (166500013)
  • Fixed item order labels in the Web Inspector grid and flex overlays to remove the # symbol, changing from Item #N to Item N. (304771@main) (166767949)

WebAssembly

Resolved Issues

  • Fixed Error.isError(WebAssembly.Exception) to correctly return false based on current WebAssembly spec semantics. (304917@main) (167110254)

WebRTC

Resolved Issues

  • Fixed RTCDataChannelInit to support [EnforceRange] on the maxPacketLifeTime and maxRetransmits fields to align with the WebRTC specification. (304499@main) (133630397)
  • Fixed an issue where RTCDataChannel close events did not fire when RTCPeerConnection was closed. (304859@main) (165617848)
]]>
Release Notes for Safari Technology Preview 234 https://webkit.org/blog/17674/release-notes-for-safari-technology-preview-234/ Fri, 19 Dec 2025 20:43:27 +0000 https://webkit.org/?p=17674 Safari Technology Preview Release 234 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 303092@main…304071@main.

Accessibility

Resolved Issues

  • Fixed missing aria-label on the button added by <img controls> to improve accessibility for screen readers. (304013@main) (164651880)

Animations

New Features

  • Added support for Threaded Scroll-driven Animations. With Threaded Scroll-driven Animations, eligible scroll-driven animations are updated as their associated timeline’s source element is scrolled instead of when the page rendering is updated, yielding smoother animations on devices with Pro Motion displays. Additionally, since scrolling is performed in a separate process, those animations update as scrolling occurs no matter the load on the main thread. Eligible animations are any scroll-driven animations animating the opacity, transform, translate, scale, rotate, filter, backdrop-filter or any of the Motion Path properties. (303997@main) (165924545)

CSS

New Features

  • Added support for CSS display: grid-lanes. (303114@main) (164860495)
  • Added support for an automatic initial value for grid-auto-flow in CSS Grid Level 3 to switch flow orientation based on grid-template-rows and grid-template-columns for grid lane layouts. (303634@main) (164791817)
  • Added support for item-tolerance in CSS Masonry layouts to improve flexible grid item placement. (303096@main) (164043151)

Resolved Issues

  • Fixed an issue where max-width was not correctly applied to tables with fixed widths. (303644@main) (96554687)
  • Fixed incorrect sizing and fragment URL handling for SVG images used in -webkit-cross-fade(). (303593@main) (106633417)
  • Fixed table layout so that fixed horizontal margins on <caption> elements now contribute to the table’s minimum preferred logical width, preventing captions from causing narrower than expected tables. (303642@main) (120990942)
  • Fixed incorrect width calculation for positioned elements using box-sizing: border-box with an aspect-ratio, ensuring borders and padding are not double-counted. (303834@main) (121500004)
  • Fixed the UA style sheet to use :focus-visible instead of :focus for outline properties. (303643@main) (123155364)
  • Fixed HighlightRegistry to remove its non-standard constructor and updated tests to use CSS.highlights while ensuring Map.prototype is properly restored after tampering. (303858@main) (125529396)
  • Fixed handling of @property registration so that the initial-value descriptor can be optional. (303757@main) (131288198)
  • Fixed devicePixelRatio so that page zoom now affects the main frame consistently with iframes, keeping their values synchronized. (303397@main) (163857955)
  • Fixed line-height to correctly scale font-relative units when text zoom is applied. (304012@main) (165073337)
  • Fixed element.clientWidth and element.clientHeight to correctly include padding for content-box tables. (303641@main) (165515755)
  • Fixed: Refactored the handling of block-level boxes inside inline boxes. (303985@main) (165523565)
  • Fixed an issue where text-decoration: underline appeared higher than expected when text-box-trim was applied to the root inline box. (303710@main) (165614136)
  • Fixed auto-placement cursor handling for spanning items in grid-lanes layouts to correctly wrap within the valid range. (303815@main) (165701659)
  • Fixed an issue with grid lanes masonry layout where items with negative margins were incorrectly positioned too low by always taking the maximum running position. (303813@main) (165718130)

HTML

Resolved Issues

  • Fixed shadowrootcustomelementregistry attribute serialization to correctly compare ShadowRoot and document registries. (303841@main) (165476421)

JavaScript

Resolved Issues

  • Fixed Date constructor overflow handling so that invalid day values now return NaN. (303582@main) (155776209)
  • Fixed Intl.Locale.prototype.getWeekInfo() to remove the minimalDays property for compliance with the specification. (303287@main) (165083619)
  • Fixed Intl.NumberFormat to properly apply minimumFractionDigits and maximumFractionDigits to ensure currency and compact notations behave correctly. (303943@main) (165875014)

MathML

Resolved Issues

  • Fixed default MathML rule thickness to use the font’s underlineThickness metric with a zero fallback. (303108@main). (164693673)
  • Fixed painting empty <msqrt> radical operator in MathML by removing an incorrect check. (303134@main) (164776629)
  • Fixed MathML <mpadded>, <mfrac>, <munderover>, <mover> and <mspace> elements not updating layout when attributes like width, height, depth, lspace, and voffset etc. changed. (303508@main) (164797996)
  • Fixed MathML boolean attributes so they are now compared ASCII case-insensitively. (303107@main) (164819048)

Media

Resolved Issues

  • Fixed an issue where Video Viewer UI elements overlapped or exited unexpectedly. (303256@main) (164051864)
  • Fixed an issue where WebM with VP9/Vorbis fallback would not play. (303100@main) (164053503)
  • Fixed an issue where empty <track> elements prevented media from advancing its readyState and blocked play() calls. (303314@main) (164125914)
  • Fixed MediaStreamTrackProcessor to respect track.enabled = false. (303389@main) (165199900)
  • Fixed an issue where the ended event for Media Source Extensions might never fire by ensuring buffered ranges update correctly and playback gaps are observed even when the video does not start at time zero. (303596@main) (165430052)
  • Fixed an issue where caption previews were not shown in the default media controls. (304070@main) (165931046)

SVG

Resolved Issues

  • Fixed SVG intrinsic sizing and preferredAspectRatio() to correctly transpose dimensions for vertical writing modes. (303578@main) (103262534)
  • Fixed SVGLength parsing to correctly return the initial value when encountering parser errors or invalid values. (303577@main) (136102554)
  • Fixed an issue where SVGImage did not respect system dark mode changes. (303920@main) (140661763)
  • Fixed SVGLength.prototype.valueAsString to throw a SyntaxError when assigned an empty string. (303594@main) (165429393)
  • Fixed an issue where lengths with leading or trailing whitespace failed to be parsed. (303951@main) (165501190)

Web API

New Features

  • Added support for ReadableStream.getIterator() and the [@@asyncIterator] methods to enable iteration over streams. (303970@main). (96318671)
  • Added support for the Keyboard Lock API. (303093@main) (161422221)
  • Added support for using readable byte streams as fetch request and response bodies and enabling synchronous start behavior. (303115@main) (162107262)
  • Added support for ReadableByteStream. (303239@main) (164877711)
  • Added support for upgrading elements in CustomElementRegistry.prototype.initialize. (303250@main) (165045530)
  • Added support for the customelementregistry content attribute and handling of null customElementRegistry values in document.createElement, document.createElementNS, and element.attachShadow. (303300@main) (165096267)
  • Expose MediaDeviceInfo interface in SecureContext only as per web specification. (303512@main) (165318702)

Resolved Issues

  • Fixed an issue where scroll-margin from IntersectionObserver incorrectly applied to scrollers inside cross-origin iframes. (303367@main) (164994009)
  • Fixed ReadableStream and WritableStream to correctly pass abort and cancel reasons and improving WebTransport stream handling. (303738@main) (165474756)

Web Authentication

New Features

  • Added support for the WebAuthn PRF extension that maps to the CTAP hmac-secret extension, enabling credential-bound cryptographic secrets for both credential creation and authentication flows. (303406@main) (113572812)

Resolved Issues

  • Fixed an issue where the excludeCredentials list was not sent to CTAP when its size was 1. (303120@main) (164546088)

Web Inspector

New Features

  • Added support for starting and stopping <canvas> recordings from the console within a Worker using console.record() and console.recordEnd(). (303230@main) (98223237)
  • Added support in the Web Inspector Timelines Heap view to display the dominator object, if any, when viewing the shortest GC path. (303368@main) (165177746)
  • Added support for auto-completion of sideways-lr and sideways-rl values for the writing-mode CSS property. (303884@main) (165777054)
  • Added support for auto-completion of grid-lanes and inline-grid-lanes values for the display CSS property. (304001@main) (165873256)

Resolved Issues

  • Fixed incorrect breakpoint and search result positions in the Web Inspector after pretty-printing inline scripts containing multi-line template literals. (303680@main) (29417859)
  • Fixed an issue where the Console tab search bar in Web Inspector would disappear when the window was too narrow. (304057@main) (50922509)
  • Fixed an issue where breakpoints and search results in Web Inspector could point to the wrong location after a previously formatted source file was reopened in an unformatted state. (303327@main) (165059693)

WebRTC

New Features

  • Added support for capturing audio from multiple microphones on macOS with getUserMedia while managing echo cancellation and dynamically migrating existing captures to non-VPIO units. (303113@main) (163945062)
]]>
Release Notes for Safari Technology Preview 233 https://webkit.org/blog/17635/release-notes-for-safari-technology-preview-233/ Mon, 08 Dec 2025 22:21:17 +0000 https://webkit.org/?p=17635 Safari Technology Preview Release 233 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 302450@main…303091@main.

Animations

Resolved Issues

  • Fixed incorrect overlap calculations for transform animations including translate, scale, and rotate properties. (303045@main) (88383253)

HTML

New Features

  • Added support for enhanced HTML select parsing to allow <select> elements to include <optgroup>, <option>, and <hr> at deeper nesting levels. (302480@main) (163927485)

MathML

New Features

  • Added support for the MathML scriptlevel attribute, mapping it to CSS math-depth as a presentational hint. (302841@main) (164469677)

Resolved Issues

  • Fixed mpadded elements in RTL (dir="rtl") to respect lspace. (303070@main) (164740784)

Rendering

Resolved Issues

  • Fixed an issue where fixed positioned elements were not rendered correctly in right-to-left pages using the vertical-rl writing mode. (302542@main) (161712734)

Web API

New Features

  • Added support for reading Blob.stream() with a BYOB (getReader({mode:'byob'})) reader. ( 302787@main ) (164307723)

Resolved Issues

  • Fixed Trusted Types to correctly send CSP violation reports when a default policy returns an invalid javascript: URL or throws an exception. (302543@main) (160960418)
  • Fixed NavigateEvent to correctly fire an AbortSignal when a navigation is aborted. (302591@main) (163957784)
  • Fixed NavigateEvent.sourceElement to correctly reference elements from different browsing contexts. (302504@main) (163962362)

Web Inspector

New Features

  • Added support for capturing console.screenshot images within a Worker, including handling of ImageData, ImageBitmap, OffscreenCanvas, various CanvasRenderingContext types, and valid base64 data: URLs. (302778@main) (98223234)
]]>
Release Notes for Safari Technology Preview 232 https://webkit.org/blog/17601/release-notes-for-safari-technology-preview-232/ Wed, 12 Nov 2025 22:23:22 +0000 https://webkit.org/?p=17601 Safari Technology Preview Release 232 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 301766@main…302449@main.

CSS

New Features

  • Added support for allowing positioned boxes in scrollable containing blocks to overflow along scrollable directions. (302259@main) (162722820)
  • Added support for flip-x and flip-y options in position-try-fallback for CSS Anchor Positioning. (302057@main) (163282036)

Resolved Issues

  • Fixed handling of padding and margins for flex and grid layouts across all writing modes. (301814@main) (71046552)
  • Fixed getComputedStyle("top") to correctly resolve percentage values for absolutely positioned elements inside inline containers. (302090@main) (161390162)
  • Fixed an infinite style resolution loop when a position-try box was inside a display: none subtree. (302254@main) (161570947)
  • Fixed width, height, min-width, min-height, max-width and max-height to apply CSS zoom at used-value time. (302241@main) (161848512)
  • Fixed CSS zoom to scale <iframe> element contents. (302097@main) (162314059)
  • Fixed getBoundingClientRect and getClientRects to return scaled lengths according to CSS zoom instead of unscaled values, aligning with the CSS Viewport specification. (301806@main). (162325730)
  • Fixed scrolling behavior so that scrollRectToVisible() can bring fixed anchor-positioned boxes outside the viewport into view, improving keyboard navigation. (302368@main) (162378346)
  • Fixed an issue where @font-face and FontFace.family failed when the font family name contained spaces, ensuring the family name is now treated as a plain string instead of being parsed. (301793@main) (162637501)
  • Fixed top, left, right, and bottom to apply CSS zoom at used-value time (302102@main) (162663056)
  • Fixed margin to apply CSS zoom at used-value time. (301965@main) (162907254)
  • Fixed evaluation of calc() expressions to correctly apply the used zoom factor to length values, ensuring properties like line-height and box dimensions scale properly. (301968@main) (163141549)
  • Fixed an issue where calc(em) values for unzoomed properties were incorrectly adjusted. (302041@main) (163267333)
  • Fixed position-area normal alignment to correctly align toward the non-auto inset when only one inset is auto. (302299@main) (163317238)
  • Fixed incorrect underline positioning for text-decoration when inline box sides are trimmed. (302435@main) (163858721)

JavaScript

Resolved Issues

  • Fixed Intl.DateTimeFormat to throw a RangeError for legacy non-IANA timezones, aligning behavior with TC39 standards. (302447@main) (156857252)

Media

Resolved Issues

  • Fixed: Aligned with other browsers by dispatching enter and exit events on TextTrackCue and VTTCue with no track. (301836@main) (160195643)
  • Fixed an issue where the mute button disappeared in macOS inline videos with adjustable sizes. (301896@main) (162897286)

Rendering

Resolved Issues

  • Fixed over-aggressive clipping of child layers in multicolumn layouts to prevent visual overflow issues with position: relative elements and transform:scale() text. (302249@main) (126413036)
  • Fixed unreadable Scroll-to-Text-Fragment highlights on dark pages. (301930@main) (126539910)
  • Fixed an issue where positioned, transformed, or opacity-altered <img> elements with HDR JPEG gainmaps would incorrectly render in SDR. (302200@main) (156858374)

SVG

Resolved Issues

  • Fixed animation of the stop-color attribute on <stop> elements.(302163@main) (109823555)

Storage

Resolved Issues

  • Fixed an issue where IndexedDB databases might have mismatched metadata version and database name encoding format. (302055@main) (163219457)

Web API

Resolved Issues

  • Fixed event ordering and committed promise timing for intercepted Navigation API traverse navigations. (302418@main) (161445256)
  • Fixed the processing order of Trusted Types for DOM attribute setting. (302272@main) (162143148)
  • Fixed NavigateEvent to correctly fire an AbortSignal when a navigation is aborted. (302591@main) (163957784)
  • Fixed NavigateEvent.sourceElement to correctly reference elements from different browsing contexts. (302504@main) (163962362)

Web Inspector

Resolved Issues

  • Fixed an issue where CSS properties added to new rules were not applied and were marked as invalid. (302301@main) (103548968)
  • Fixed an issue in the Console where the count of identical consecutive messages could be wrong. (301917@main) (162612099)
]]>
Release Notes for Safari Technology Preview 231 https://webkit.org/blog/17560/release-notes-for-safari-technology-preview-231/ Thu, 30 Oct 2025 19:19:53 +0000 https://webkit.org/?p=17560 Safari Technology Preview Release 231 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 300987@main…301765@main.

CSS

New Features

  • Added support for the safe keyword with anchor-center in CSS Anchor Positioning. (301301@main) (155767796)
  • Added support for flip-x and flip-y options in position-try-fallback for CSS Anchor Positioning. (302057@main) (163282036)

Resolved Issues

  • Fixed handling of padding and margins for flex and grid layouts across all writing modes. (301814@main) (71046552)
  • Fixed position-visibility: no-overflow to respond correctly to scrolling. (301211@main) (162173481)
  • Fixed: Renamed position-area keywords from x-self-start, x-self-end, y-self-start, and y-self-end to self-x-start, self-x-end, self-y-start, and self-y-end respectively to align with updated CSSWG specifications.(301226@main) (162214793)
  • Fixed <iframe> elements so their content correctly respects the page’s usedZoom(). (302097@main) (162314059)
  • Fixed auto margins by converting them to zero when position-area or anchor-center is applied in CSS Anchor Positioning. (301662@main) (162809291)

JavaScript

Resolved Issues

  • Fixed TypeError messages when calling class or function constructors without new to include the constructor name. (301023@main) (161152354)

Media

Resolved Issues

  • Fixed an issue where custom WebVTT caption text size settings did not propagate to cue child elements by moving the font-size definition into the cue’s shared <style> block. (301681@main) (162547969)

Rendering

New Features

  • Added support for text shaping across inline boxes. (301354@main) (162430932)

Resolved Issues

  • Fixed an issue where selecting table cells could cause overlapping selections in flex and grid layouts. (294464@main) (160805174)
  • Fixed a performance issue on layouts with long pre blocks and word-break: break-all by including whitespace in overflow width calculations. (301657@main) (162695099)
  • Fixed Largest Contentful Paint to optimize text paints by performing an early area comparison when an element has only one text box. (301895@main) (163067611)
  • Fixed Largest Contentful Paint to skip tracking loadTime for data URI images. (301988@main) (163213487)
  • Fixed how Largest Contentful Paint performs area checks for text nodes, optimizing calculations when all rects are collected and ancestor transforms are absent. (302072@main) (163285757)

Web API

Resolved Issues

  • Fixed Navigation API WPT tests failing due to a WebDriver error. (161199777)
  • Fixed PerformanceEventTiming so that keydown and pointerdown entries no longer wait for their corresponding keyup or pointerup events before assigning a duration, preventing durations from appearing too long. (302107@main) (161911473)
  • Fixed attachShadow() to use the global custom element registry by default when customElementRegistry is null, aligning with the WHATWG DOM specification (300996@main). (161949493)
  • Fixed navigate() with { history: "replace" } to correctly update the current History item instead of adding a new one during same-document navigations. (302130@main) (163323288)

Web Inspector

Resolved Issues

  • Fixed an issue where the Sources tab won’t show contents of a script that contains a for statement with optional chaining in the test condition. (301197@main) (160617913)

WebDriver

Resolved Issues

  • Fixed an issue where element references nested inside Array or Object arguments were not properly extracted when executing scripts. (301445@main) (162571946)
]]>
Release Notes for Safari Technology Preview 230 https://webkit.org/blog/17504/release-notes-for-safari-technology-preview-230/ Wed, 15 Oct 2025 21:15:36 +0000 https://webkit.org/?p=17504 Safari Technology Preview Release 230 is now available for download for macOS Tahoe and macOS Sequoia. If you already have Safari Technology Preview installed, you can update it in System Settings under General → Software Update.

This release includes WebKit changes between: 300291@main…300986@main.

Animations

Resolved Issues

  • Fixed animation-name resolution to correctly find matching @keyframes within tree-scoped and shadow DOM contexts. (300706@main) (156484228)

CSS

Resolved Issues

  • Fixed incorrect handling of auto inline margins on grid items during track sizing that caused excessive vertical spacing in subgrids. (300422@main) (157638931)
  • Fixed CSS anchor positioning to remember the last successful position option at ResizeObserver delivery time, aligning with the spec. (300890@main) (159225250)
  • Fixed an issue where transitioning an element to display: none with transition-behavior: allow-discrete and CSS Anchor Positioning would repeatedly restart the transition. (300519@main) (160421419)
  • Fixed the acceptable anchor algorithm in CSS Anchor Positioning to correctly consider inline elements as containing blocks. (300614@main) (160917762)
  • Fixed CSS nesting to inline parent selectors when possible instead of always wrapping them in :is() to improve selector performance. (300297@main) (160927950)
  • Fixed position-try-fallback resolution by treating names as tree-scoped references to properly search shadow DOM host scopes. (300333@main) (161081231)
  • Fixed an issue where a <select> element with long <option> text caused horizontal scrolling when nested inside a flex item. (300684@main) (161563289)
  • Fixed getComputedStyle to return numeric values (2) for orphans and widows instead of the internal auto value, ensuring the computed values correctly reflect the CSS specification. (300690@main) (161566631)
  • Fixed column-count: 1 so that it now correctly creates a multi-column container per the CSS Multi-column Layout specification. (300787@main) (161611444)
  • Fixed the calculation of anchor positions in vertical-rl multi-column layouts by correctly flipping coordinates in fragmented flows. (300807@main) (161616545)
  • Fixed the order to try anchor position fallback options, such that the last successful position option is tried first, followed by the original style, and then the remaining options. (300909@main) (161714637)
  • Fixed position-area handling to include the in-flow scrollable area of the initial containing block. (300921@main) (161741583)
  • Fixed position-visibility: no-overflow to respond correctly to scrolling. (301211@main) (162173481)
  • Fixed: Renamed position-area keywords from x-self-start, x-self-end, y-self-start, and y-self-end to self-x-start, self-x-end, self-y-start, and self-y-end respectively to align with updated CSSWG specifications.(301226@main) (162214793)

HTML

Resolved Issues

  • Fixed an issue where navigating to :~:text fragments on dynamically generated pages did not highlight or scroll to the fragment. (300918@main) (150880542)

MathML

Resolved Issues

  • Fixed rendering of unknown MathML elements so they now behave like mrow as required by the MathML Core specification. (300580@main) (148593275)

Media

Resolved Issues

  • Fixed MediaRecorder to no longer fire erroneous error events when stopped immediately after track changes, aligning behavior with Chrome and closer to Firefox. (300682@main) (161124260)

Rendering

Resolved Issues

  • Fixed incorrect clipping of position:fixed/sticky content during view transitions. (300561@main) (154886047)
  • Fixed an issue that caused cropped flexbox elements to render incorrectly. (300433@main) (159638640)
  • Fixed an issue where sticky elements at the edge of the viewport could disappear during rubber band scrolling. (300544@main) (160385933)
  • Fixed flickering of elements with slow-painting content during view transitions. (300902@main) (160886647)
  • Fixed an issue where elements with both opacity and CSS filter effects could render incorrectly. (300549@main) (161130683)
  • Fixed an issue where elements with background images were not counted as contentful for Paint Timing. (300667@main) (161456094)

SVG

Resolved Issues

  • Fixed an issue where stop-color incorrectly accepted hashless hex color values like 1234 by treating them as invalid to follow the spec. (300296@main) (119166640)
  • Fixed an issue where SVG pattern tileImage could appear blurred or pixelated when zooming or printing. (300357@main) (159202567)
  • Fixed SVGAElement so that its rel and relList attributes now affect navigation behavior, including proper handling of noopener, noreferrer, and the new opener value, aligning SVG links with HTMLAnchorElement behavior. (300462@main) (160724516)

Security

Resolved Issues

  • Fixed parsing of require-trusted-types-for in CSP to ensure 'script' is only valid when followed by whitespace or end of buffer. (300770@main) (147760089)

Web API

New Features

  • Added support for Largest Contentful Paint. (300834@main) (161705604)

Resolved Issues

  • Fixed an issue where the first pointerdown event was lost after triggering a context menu by right-clicking. (300696@main) (84787733)
  • Fixed Trusted Types to only verify event handler attributes for elements in the XHTML, SVG, and MathML namespaces, preventing incorrect checks on other namespaces. (300783@main) (147763139)
  • Fixed an issue where navigate.back in the main frame would fail after a navigate.back in a child frame by properly clearing the provisional history item to allow correct back navigation. (301092@main) (158259024)
  • Fixed NavigateEvent.sourceElement to correctly reference the submitting HTMLFormElement instead of null when a form is submitted. (301252@main) (160391355)
  • Fixed EventCounts interface was not maplike. Enables use of methods such as .forEach(), keys(), and entries(). (300830@main) (160968888)
  • Fixed an issue where mousemove events were still dispatched to removed mouseover targets instead of their parent element when the target was deleted. (300522@main) (161203639)
  • Fixed missing pointerenter and mouseenter events when a child element moved under the mouse. (300564@main) (161362257)
  • Fixed an issue where only one CSP violation report was sent for multiple enforced require-trusted-types-for directives. (300832@main) (161740298)
  • Fixed Trusted Types incorrectly treating null or undefined policy return values as null instead of empty strings during createHTML, createScript, and createScriptURL operations. (300892@main) (161837641)

Web Extension

New Features

  • Added support for browser.runtime.getVersion() to retrieve the extension version from its manifest. (300972@main) (161742137)

Web Inspector

Resolved Issues

  • Fixed syntax highlighting for JavaScript features like template literals, private class elements, optional chaining, and others. (300332@main) (107619553)
  • Fixed an issue where navigating the DOM tree using the keyboard would get stuck in a loop within certain subtrees. (300471@main) (159841729)
  • Fixed an issue where adding DOM attributes or node siblings did not work correctly when using the actions from the context menu. (300752@main) (161577627)
]]>