Se ha comunicado a todos los usuarios de la rama estable del navegador Chrome un cambio que activa por defecto un nuevo código para la organización de la salida en sistemas con servidor X, basado en el uso de la capa Ozone, que abstrae la interacción con el subsistema gráfico. El uso de Ozone permite soportar X11 y Wayland en una sola compilación de Chrome, sin estar atado a un subsistema gráfico específico. Se planea que el viejo backend, que solo soporta el funcionamiento a través de X11, se clasifique como obsoleto y se elimine de la base de código con el tiempo.
La independencia respecto a las peculiaridades de construcción de interfaces gráficas en diferentes sistemas operativos en Chrome se ha implementado mediante su propia pila gráfica multiplataforma Aura. Aura actúa como un gestor de ventanas (Aura shell) que trabaja a través de su propio compositor. servidor y utiliza los recursos disponibles de la GPU para acelerar las operaciones gráficas. Para la formación de elementos de la interfaz se utiliza el toolkit gráfico Aura UI, que proporciona su propio conjunto de widgets, cuadros de diálogo, controles y manejadores de eventos. De las capacidades de la pila gráfica subyacente (X11, Wayland, Cocoa o Windows), solo se utiliza la salida sobre la ventana raíz.
Todas las operaciones específicas con la pila gráfica de Linux se han reducido a una capa abstracta Ozone fácilmente reemplazable. Hasta ahora, el soporte para Ozone se proporcionaba en forma de opción, mientras que por defecto se utilizaba el viejo backend, rígidamente vinculado a X11. El trabajo para trasladar las compilaciones de X11 al uso de la capa Ozone se ha estado realizando desde 2020, y para los usuarios, la activación gradual del backend Ozone/X11 por defecto comenzó con la versión 92 de Chrome. Hace unos días, el nuevo backend fue activado para todos los usuarios de Linux de Chrome. Aparte de X11 y Wayland («—ozone-platform=wayland» y «—ozone-platform=x11»), también se están desarrollando plataformas dentro de Ozone para la salida sobre drivers gráficos KMS/DRM, salida en forma de gráficos ASCII mediante la biblioteca libcaca, renderizado en imágenes PNG (Headless) y transmisión a través de dispositivos Chromecast.

Fuente: opennet.ru
