Chrome 122 beta

A menos que se indique lo contrario, los siguientes cambios se aplican a la versión beta de Chrome más reciente versión del canal para Android, ChromeOS, Linux, macOS y Windows. Más información acerca de las funciones enumeradas aquí a través de los vínculos proporcionados o de la lista en ChromeStatus.com. Chrome 122 está en versión beta desde el 24 de enero de 2024. Puedes descargar las últimas novedades en Google.com para computadoras en Google Play Store en Android.

CSS

En esta versión se agregan tres funciones de CSS nuevas.

Las consultas @container de CSS con funciones no compatibles nunca coinciden

Los selectores de @container que contengan consultas no admitidas nunca seleccionarán ninguna contenedores, lo que significa que nunca coincidirán.

Esto significa que esta consulta nunca coincidirá con ningún contenedor, incluso si también hay un que coincida con la consulta de ancho. Por ejemplo, la siguiente consulta nunca coincidirán debido a la función desconocida:

@container (width > 0px) or (unknown) {}

Este es un cambio reciente en la especificación para evitar la compatibilidad con versiones posteriores problemas.

Seudoelemento CSS ::backdrop que se hereda del elemento de origen

Es el seudoelemento ::backdrop que se usa para heredar de los valores iniciales. Eso quiso decir ::backdrop no pudo utilizar valores de propiedades personalizadas, a menos que se especifique directamente en la regla ::backdrop. Ahora la especificación cambió, de modo que ::backdrop hereda del elemento de origen, este cambio hace que Chrome implementación coincidan con la nueva especificación.

Condiciones supports() del CSS para @import

@import ahora acepta una condición supports(). Si la condición supports() no coincide, no se recuperará la importación.

@import "scroll-driven-animations.css" supports(animation-timeline: auto);

Las consultas de funciones que se deben colocar dentro de supports() son las mismas que las que se usan. con @supports

API web

API de Async Clipboard: Lee código HTML sin depurar

Agrega un elemento unsanitized. en el método read() para obtener el formato HTML sin depurar. A menos que los sitios incluir esta propiedad, se limpiará la lectura del portapapeles.

De forma predeterminada, cuando lees los tipos de MIME text/html con la API asíncrona, el se invoca sanitizer para quitar contenido del lenguaje de marcado HTML debido a problemas, y los estilos están intercalados en el HTML. Esto genera una gran carga útil de HTML y pérdida de fidelidad del contenido HTML cuando lo leen desarrolladores web o apps para dispositivos móviles.

No borres objetos de tipo de archivo en dataTransfer.clearData()

Actualiza Chrome para que coincida con spec, que especifica que clearData() no afecta los objetos File. Solo borra los objetos de tipo text

FedCM: desconectar

Permite desconectar una cuenta de acceso federada mediante el sitio web del usuario de confianza. Con la API de desconexión, un usuario de confianza puede notificar al proveedor de identidad que un cuenta utilizada anteriormente ahora se desconecta y, por lo tanto, se vuelve a usar esa cuenta con acceso federado requeriría tratarlo como una cuenta nueva.

Cancelación interoperable de eventos de desplazamiento del mouse en iframe

Haz que los objetivos de los eventos del mouse sean agnósticos a la cancelación del evento de mousedown cuando el elemento el puntero se arrastra fuera de un iframe. Cuando se arrastra el mouse fuera de un iframe, Todos los navegadores (incluido Chrome) envían los eventos mousemove y mouseup al iframe. Sin embargo, si el evento {i>mousedown<i} se cancela, Chrome mantiene un excepción antigua de WebKit que indica que los eventos mousemove y mouseup se envían al exterior marco. WebKit eliminó esta excepción el año pasado, y Mozilla nunca la mostró. en los últimos años. Esta función quitará la excepción exclusiva de Chrome para este caso especial.

Asistentes de iterador

Los asistentes de iterador son métodos nuevos. sobre el prototipo del iterador para permitir el uso y consumo general de iteradores.

MessagePort.onclose

Un cambio en la API de Channel Messaging, que notifica a uno de los que el otro puerto se desenredó. Es decir, se llama a close(), un se destruye el documento adeudado o se recoge el puerto como elemento no utilizado.

Extensiones setParameters() de RTCRtpSender para solicitar la generación de un fotograma clave

Agrega un segundo parámetro opcional a la llamada RTCRtpSender.setParameters de WebRTC. que se puede usar para pedirle al codificador asociado que genere un fotograma clave.

Configurar métodos

Los métodos set son métodos nuevos, como la unión y la intersección, que se agregan a los métodos clase Set integrada.

API de Storage Buckets

Los buckets de almacenamiento brindan a los sitios la capacidad de organizar en "buckets" separados, lo que permite a los usuarios-agentes expulsar agrupar datos independientemente de los que están en otros buckets, y permitir que los sitios para administrar datos relacionados de forma ergonómica. Cada bucket de almacenamiento puede contienen datos asociados con las APIs de almacenamiento establecidas como IndexedDB y CacheStorage.

URLPattern: hasRegExpGroups

Permite inspeccionar si un elemento URLPattern usa uno o más de la versión regular de ECMAScript. grupos de expresión y, por lo tanto, podría no ser adecuado para su uso en los casos en que un El motor de ECMAScript no está disponible (como algunas API planificadas próximamente). En sentido estricto, esto refleja algo que los desarrolladores podrían saber de todas formas inspeccionar el patrón, pero tener acceso a la implementación de UA de esto lo que hace que sea más sencillo.

Dibujo de WebGLBufferStorage

WebGL permite la renderización en texturas y búferes de renderización de muchos píxeles diferentes. formatos. Por ejemplo, 8 bits, punto flotante y codificación sRGB.

El búfer de dibujo de WebGL (el que se pasa al compositor) se de 8 bits de forma predeterminada. La funcióndrawBufferStorage permite que WebGL configure la de píxeles de este búfer de dibujo, lo que les permite a los desarrolladores hacer lo siguiente:

  • Evita una copia adicional cuando conviertas su renderización al dibujo predeterminado formato de píxeles de búfer.
  • Dibuja el contenido con más de 8 bits de precisión.

La última función desbloquea varias aplicaciones adicionales:

  • Contenido con una gama de colores muy amplia sin pérdida de precisión.
  • Aplicaciones médicas que requieren más de 8 bits de precisión.
  • Aplicaciones de alto rango dinámico (cuando estén disponibles)

Encapsulamiento de claves X25519Kyber768 para TLS

Proteger el tráfico actual de TLS de Chrome contra el futuro criptoanálisis cuántico mediante implementar el algoritmo de acuerdo de claves Kyber768 resistente a cuánticas. Este es un Acuerdo de claves híbrido X25519 + KYber768 basado en un estándar IETF. Esta de la especificación y del lanzamiento está fuera del alcance de W3C. Este acuerdo clave será lanzarse como un algoritmo de cifrado de TLS y debería ser transparente para los usuarios.

Pruebas de origen en curso

En Chrome 122, puedes habilitar el siguiente origen nuevo pruebas.

Extensiones de alcance de la aplicación web

El alcance de la app web (definido por el campo de alcance) solo se puede definir con una ruta de un origen único. Se usa para determinar si la ventana de una app documento es una parte de la aplicación. También determina qué URLs están permitidas en a otros miembros del manifiesto.

Con scope_extensions, los desarrolladores pueden pueden expandir los comportamientos de su app para incluir otros orígenes si hay acuerdo entre el origen principal de una app web y los orígenes asociados.

Regístrate en la prueba de origen de las extensiones de alcance de la aplicación web

Control de superficie capturada

La API de Captured Surface Control permite a las aplicaciones web producir eventos de rueda en una pestaña o ventana capturada, y leer o escribir el nivel de zoom de una pestaña capturada.

Regístrate en la prueba de origen de Captured Surface Control.