Report in Google Search Console to see if any of these abusive experiences have been found on

their site and improve their user experience.

Two types of abusive experiences where a deceptive site control appears to do one thing, but has a different behavior when clicked. One looks like a play button on a video but sends the user to an unwanted download when clicked (left), and the other looks like a close button but instead opens unwanted pop-up windows (right).

Resize Observer

Traditionally, responsive web applications have used CSS media queries or window.onresize to

build responsive components that adapt content to different viewport sizes. However, both of these

are global signals and require the overall viewport to change in order for the site to respond

Blink>JavaScript

Chrome now supports the Unicode property escapes\p{…} and \P{…} for regular expressions that have the u flag set, allowing developers to create more powerful Unicode-aware regular expressions.

To assist with local-aware formatting of strings produced by internationalization formatters, developers can now use Intl.NumberFormat.prototype.formatToParts() to format a number to a list of tokens and their type. Thanks to Igalia for helping make this happen!

Blink>Media

Matching other browser implementations, Chrome now sets the default preload value for <video> and <audio> elements to metadata in order to reduce bandwidth and resource usage by only loading resource metadata and not the media resource itself.

Chrome nowsupports the Media Capabilities API in Origin Trials, enabling developers to know whether an audio or video playback will be smooth and power-efficient based on previous performance statistics.

To match theMedia Capture and Streams spec, getUserMedia() returns a rejected Promise with DOMException or OverconstrainedError when there is an error.

Blink>Network

Developers can now use the cache option to specify the cache mode of a Request.

Developers can now use Request.prototype.cache to view the cache mode of a Request and determine whether a request is a reload request.

Blink>Permissions API

To better align with the Permissions API spec, the Permissions API can now be used to query the status of the camera and microphone permissions.

Blink>Scroll

In Focus Management APIs, developers can now focus an element without scrolling to it by using the preventScroll attribute.

Blink>SVG

Blink>WebAudio

AudioWorklet, an API that exposes low-level audio processing capability to support custom AudioNodes, is now available in origin trials and the experimental flag.

Blink>WebRTC

To align with the WebRTC 1.0 spec, RTCPeerConnection now supports addTrack() for single stream use cases, as well as removeTrack(), getSenders(), ontrack, and a minimal version of the RTCRtpSender interface.

Blink>WindowDialog

To improve interoperability and end user experience, window.alert()no longer brings a backgrounded tab to the foreground but instead shows the alert when the user switches to the background tab.