Google heeft versie 75 van zijn webbrowser Chrome uitgebracht. Google Chrome is beschikbaar voor Windows, Linux en macOS. Er zijn ook versies voor Android en iOS, maar die volgen een iets ander releaseschema. Sinds versie 50 is de ondersteuning voor oudere versies van Windows en macOS vervallen. De belangrijkste veranderingen in versie 75, naast de gebruikelijke bug- en security fixes, zijn hieronder voor je op een rijtje gezet.
Hint for low latency canvas contexts
Thecanvas.getContext()
method now supports a desynchronized hint, which provides a low-latency alternative to the now deprecated NaCl/PPAPI solution which used native OpenGL rendering. The new solution requires either 2d or webgl context types. To use it, passdesynchronized: true
in the options parameter ofcanvas.getContext()
and specifyCanvasRenderingContext2D
, aWebGL2RenderingContext
, or a 65WebGL2ComputeRenderingContext
as the context type. For example:const canvas = document.querySelector("canvas");const context_type = '2d'; // 'webgl' or 'webgl2' canvas.getContext(context_type, {desynchronized: true, alpha: false });
For more information and links to sample code, read Low latency rendering with the desynchronized hint on our developer's site.
Web share now supports files
Files are now supported by the Web Share API. Over the last few years, we've been working to bring native sharing capabilities to the web. The Web Share API allows web apps to invoke the same share dialog box that a native app user would see. If you're already used the sharing APIs, most of this looks familiar. As highlighted above, the new feature brings a new method and a newshareData
property. For details read Share files with Web Share.
Numeric separators
Numeric literals now allow underscores (_
,U+005F
) as separators to make them more readable. For example,1_000_000_000
will be interpreted by mathematical operations as equivalent to1000000000
. There are a few things you should be aware of. Underscores can only appear between digits, and consecutive underscores are not allowed. So literals such as3._14
,_2.71
or1.6__2
are illegal.
Allow PaymentRequest.show() to take optional detailsPromise
ThedetailsPromise
argument is a way to signal that the browser should show a spinner or equivalent and wait on allowing user interaction until an update. Some users may not know the total or the number of line items at the time of attempting to open the payment sheet withshow()
.
Animation improvements
Animation() constructor
The newAnimation()
constructor gives developers more control over the created animation by using the exactKeyframeEffect
object (see below). Currently developers must use theElement.animate()
method, which returns anAnimation
object that is internally constructed.
AnimationEffect and KeyframeEffectAnimationEffect
andKeyframeEffect
allow a developer interactive control over the following parts of their Animation:AppCache: Cross-origin resource size padding
- The Animation target (the element being animated).
- The Animation timing properties (duration, delay, etc.).
For quota accounting purposes, the size of cross-originAppCache
resources are now padded. Cross-origin resources are resources whose origin differs from the manifest's origin. The padding size will be a random number between 0 and about 14MB. Quota accounting purposes include the size reported by the Quota API and quota enforcement. An origin's storage API calls are blocked when the origin exceeds its quota.
CSP: `script-src-attr`, `script-src-elem`, `style-src-attr`, `style-src-elem` directives
These four new directives provide the functionality of the script/style directive but with more granularity, applying to elements or attributes.
HTMLVideoElement.playsInline
This is a hint a website may provide to a user agent to display a video content within the element's playback area. MediaStreamTrack.getCapabilities() support for audio device-related constrainable properties.MediaStreamTrack.getCapabilities()
now returns the device-related capabilities of the source associated with aMediaStreamTrack
, specifically sample size, sample rate, latency, and channel count. There is also a variantInputDeviceInfo.getCapabilities()
, available in the results ofMediaDevices.enumerateDevices()
. These devices are used as sources forMediaStreamTrack
, andgetCapabilities()
in this case returns the same values asMediaStreamTrack.getCapabilities()
forsampleSize
,channelCount
, andlatency
.
noreferrer attribute for window.open()
Allows a web page to usewindow.open()
without leaking referrer information by leaving the referrer header out of page navigations.
Web RTC improvements
RTCDtlsTransport
This interface provides information about active transports. Specifically, this interface allows an application access to information about the Datagram Transport Layer Security (DTLS) transport over which RTP and RTCP packets are sent and received byRTCRtpSender
andRTCRtpReceiver
objects, as well as other data such as SCTP packets sent and received by data channels.
RTCIceTransport
This interface provides information about the state of the ICE transports used byRTCPeerConnection
to send and receive media to another endpoint.
Service workers appear in Chrome's Task Manager
Service workers now appear in Chrome's Task Manager.
stale-while-revalidate
The newstale-while-revalidate
response directive is used by theCache-Control
header to define an extra window of time during which a user agent can use a stale asset during asynchronous revalidation. The revalidation of such assets bypasses the service worker. This change improves subsequent page load latencies by keeping stale assets out of the critical path.
Web Authentication API: FIDO CTAP2 PIN support
This feature extends Chrome's implementation of the Web Authentication API to support local user authorization of security key operations via a user-defined PIN for keys that implement the FIDO CTAP2 protocol. Web sites using web authentication can request or require such authorization via the API's user verification mechanisms.
Interoperability
Allow waitUntil() and respondWith() inside microtasks during event dispatch
To conform to the specification,ExtendableEvent.waitUntil()
andFetchEvent.respondWith()
can now be called during the microtask checkpoint at the end of event dispatch. Previously, this would throw anInvalidStateError
.
Feature Removal
Remove overflow: -webkit-paged-x and overflow: -webkit-paged-y
These are old webkit-specific properties that allowed developers to fragment content over columns inside a scrollable region. They are now removed. Practically speaking these aren't used. Most developers use them accidentally, and typically when they are they force a new formatting context similar tosetting overflow: hidden
.