Release Notes for Safari Technology Preview 45

Safari Technology Preview Release 45 is now available for download for macOS Sierra and macOS High Sierra. If you already have Safari Technology Preview installed, you can update from the Mac App Store’s Updates tab. This release covers WebKit revisions 224579-225266.

If you recently updated from macOS Sierra to macOS High Sierra, you may need to install the High Sierra version of Safari Technology Preview manually.

Rendering

  • Corrected the computed style in pseudo-elements with display:contents (r225049)
  • Changed to reset the SVG scrolling anchor if the fragmentIdentifier does not exist or is not provided (r224973)
  • Fixed the available height for positioned elements with box-sizing:border-box (r225101)
  • Fixed long pressing a phone number with spaces to result in a data detectors sheet instead of a link sheet (r224819)
  • Fixed compositing layers to use accelerated drawing when navigating back to a page (r224796)
  • Fixed Flexbox issues with display:contents by no longer eliminating the whitespace renderer if the previous sibling is a text renderer (r224773)
  • Fixed missing contents of composited overflow-scroll when newly added (r224715)
  • Fixed content not getting painted when scrolling an overflow node inside an iframe (r224618)
  • Fixed FETurbulence SVG filter with stitchTiles (r225018)
  • Fixed skewed colors in feImage as a filter input (r225152)
  • Fixed an issue in the FEGaussianBlur SVG filter where the output of the last blur pass wasn’t copied to the result buffer (r225147)
  • Optimized the FEDisplacementMap SVG filter (r225183)
  • Optimized the FEMorphology SVG filter (r225172)
  • Optimized the FEComponentTransfer SVG filter (r225107)
  • Optimized the FELighting SVG filter (r225088, r225122)
  • Optimized the FETurbulence SVG filter (r224977, r224996, r225009, r225021, r225020, r225035, r225024)
  • Used vImage to optimize alpha premultiplication and un-premultiplication in FilterEffect (r225086)

JavaScript

  • Added recursive tail call optimization for polymorphic calls (r225212)
  • Fixed async iteration to only fetch the next method once (r224787)
  • Updated module fetching to retry if the previous request fails (r224662)

CSS

  • Fixed continual style re-resolution due to calc() values always comparing as unequal as seen on arstechnica.com (r225141)
  • Fixed display issues in CSS Grid for a child with max-width (r225163)
  • Enabled display:contents by default (r224822)
  • Fixed inserting an image, selecting, underlining, and then deleting to remove the typing style with both -webkit-text-decorations-in-effect and text-decoration (r224649)
  • Prevented mixing stroke-width and stroke-color with their prefixed versions (r224780)

Web API

  • Added support for CanvasPattern.setTransform() (r225121)
  • Implemented OffscreenCanvas.getContext("webgl") (r225193)
  • Changed XMLHttpRequest to not treat file URLs as same origin (r224609)
  • Changed FetchLoader to unregister its blob URL (r224954)

Media

  • Added a FairPlay Streaming based CDM for Modern EME (r224707)
  • Changed Web Audio’s AnalyserNode.fftSize to allow up to 32768 to match specifications (r225226)
  • Changed skip back and skip forward buttons to not hard-code their numeric amount in localised strings (r225216)
  • Fixed play and pause when pressing the space bar while watching a fullscreen video (r225265)
  • Prevented captions from moving when <video> with no controls is hovered (r225138)

Web Inspector

  • Added the display of detailed status during canvas recording in the experimental Canvas tab (r224726)
  • Added showing the internal properties of PaymentRequest in the Console (r224606)
  • Cleaned up the backtrace in Canvas details sidebar (r225259)
  • Cleaned up navigation bar dividers and separators (r224807)
  • Gave the DataGrid table header ContextMenu a section header to better describe its functions (r224761)
  • Included Beacon loads in the Network table’s “Other” filter (r225246)
  • Moved console Preserve Log setting from Setting tab to Console navigation bar (r225257)
  • Added a toggle in the Network tab to control automatically clearing or preserving log across loads (r225250)
  • Added a HAR Export button to the Network tab (r224994)
  • Cleaned up the Network tab details view (r224733, r224851, r224769)
  • Fixed the Navigation sidebar that would become broken after closing and re-opening the tab (r224905)
  • Made the connection part thinner in the Network tab waterfall graph (r224727)
  • Updated the Ignore Caches icon in the Network tab (r224989)
  • Updated the Clear icon in the Network tab and Console tab (r225019)
  • Removed Network “Clear on load” from the Settings tab now that Network tab has a toggle for it (r225256)
  • Prevented adding a new property when clicking on inline swatches and property checkboxes in the Styles sidebar (r224651)
  • Changed typing colon in the property name field to advance to the value field in the Styles sidebar (r224906)
  • Fixed the clipped shadow of the selector’s field in the Styles sidebar (r225165)
  • Made the selector field inline-block when editing in the Styles sidebar (r224768)
  • Added undo and redo support for the DOM Tree’s add sibling context menus (r224648)
  • Removed context menu actions for images which did not work (r225234)

Accessibility

  • Fixed VoiceOver in Safari to read the table header for the first cell in the first body row (r224997)
  • Fixed the search predicate to return the text element for plain text instead of the containing group (r224650)
  • Prevented accessibility from triggering a sync layout while building the render tree on macrumors.com (r224899)