Per tutti gli utenti della versione stabile del browser Chrome è stato comunicato un cambiamento che attiva di default un nuovo codice per l'output sui sistemi con server X, basato sull'utilizzo di un layer Ozone, che astrae l'interazione con il sottosistema grafico. L'uso di Ozone consente di supportare X11 e Wayland in un'unica versione di Chrome, senza legarsi a un particolare sottosistema grafico. Il vecchio backend, che supportava solo il funzionamento tramite X11, è previsto per essere classificato come obsoleto e rimosso dalla base di codice nel tempo.
L’indipendenza dalle peculiarità della costruzione dell'interfaccia grafica nei vari sistemi operativi in Chrome è realizzata grazie a un proprio stack grafico cross-platform chiamato Aura. Aura svolge le funzioni di un gestore delle finestre (Aura shell), operando tramite un compositore proprietario un server e utilizzando le risorse GPU disponibili per accelerare le operazioni grafiche. Per la creazione degli elementi dell'interfaccia viene utilizzato il toolkit grafico Aura UI, che fornisce un insieme di widget, finestre di dialogo, controlli e gestori degli eventi. Dallo stack grafico sottostante (X11, Wayland, Cocoa o Windows) viene utilizzato solo l'output sopra la finestra principale.
Tutte le operazioni specifiche con lo stack grafico di Linux sono state semplificate in un layer astratto Ozone facilmente sostituibile. Fino ad ora, il supporto per Ozone era fornito come opzione, mentre di default veniva utilizzato il vecchio backend, rigidamente legato a X11. I lavori per la transizione delle versioni da X11 all’uso del layer Ozone sono iniziati nel 2020, e per gli utenti il cambiamento graduale al backend Ozone/X11 di default è iniziato con il rilascio di Chrome 92. Pochi giorni fa, il nuovo backend è stato attivato per tutti gli utenti Linux di Chrome. Oltre a X11 e Wayland ("—ozone-platform=wayland" e "—ozone-platform=x11"), Ozone sta sviluppando anche piattaforme per l'output sui driver grafici KMS/DRM, per la grafica ASCII tramite la libreria libcaca, il rendering in immagini PNG (Headless) e la trasmissione attraverso dispositivi Chromecast.

Fonte: opennet.ru
