Technology

Google Chrome 97 released today contains the controversial keyboard API function

Google Chrome 96 entered the stable channel nearly two months ago. Although the current release rhythm means that we should expect a new version every four weeks, this is not the case with Chrome 97 due to the western holiday season. Today, Chrome 97 finally came to the stable channel, one of the noteworthy features is a new attribute in the keyboard API, which can be said to be quite controversial.

Previously, some web applications such as Excel, PowerPoint, and Word could not use the keyboard API to recognize which key was pressed on a specific layout, such as French or English. Increasing the value of “Keyboard Map” solves this problem. Although web developers obviously support it, it faces problems from Apple Strong criticism from the WebKit team and the Mozilla development team. Both expressed concerns about privacy, saying that this API exposes a visitor fingerprint that can be used to identify and track people, especially when the keyboard layout he uses is not common in an area. Therefore, Apple and Mozilla classify this API change as “harmful” and will not implement it in Safari and Firefox respectively. Another change is that the normalization of line breaks in tables will now be completed in later stages of Chrome, which will make its behavior consistent with Safari and Firefox, which have already done this. In addition, CSS math functions can now accept a “number” value, whereas previously only “integer” was supported. Similarly, the perspective CSS function now supports a “none” parameter, which can be parsed as an identity matrix, so its animation can be used in a simpler way.

A new HTMLScriptElement.supports() method has also been introduced, which enables developers to use a unified way to detect new features using script elements. Using two new methods, it is also easier to search from the last index of the array. Another interesting feature in Chrome 97 is the enhancement of the communication protocol. Currently, developers use WebSockets or RTCDataChannel for two-way communication with remote servers. The former is based on TCP, which means it is not suitable for delay-sensitive applications, while the latter is based on SCTP and is mainly designed for point-to-point communication. Google has now introduced a WebTransport protocol framework that solves these two problems and supports two-way communication of reliable and unreliable data using cancelable streams and UDP-style datagrams.

Apple has not yet commented on this, but Mozilla has classified it as “worthy of prototyping”, which is obviously a good sign. Finally, the “PermissionStatus” interface also adds a “name” attribute to make it easier to identify and distinguish different objects of the Permissions API. Service workers handling navigation requests will now also use the origin and redirect chain from “FetchEvent.request”. Chrome 97 will start rolling out later today. If your browser is not automatically updated to version 97, please go to Help>About Google Browser. Once there is an update, the update will be triggered automatically. Next is Chrome 98, which will enter the test channel on January 6, and will land on the stable channel on February 1.