Chrome 132

Data di rilascio stabile: 14 gennaio 2025

Salvo diversa indicazione, le seguenti modifiche si applicano alla release del canale stabile di Chrome 132 per Android, ChromeOS, Linux, macOS e Windows.

HTML e DOM

Generare un'eccezione per i popup e le finestre di dialogo nei documenti non attivi

In precedenza, l'utilizzo di showPopover() o showModal() in un popup o una finestra di dialogo che si trova in un documento non attivo non andava a buon fine. Non viene generata alcuna eccezione, ma poiché il documento non è attivo, non viene visualizzata alcuna finestra popup o di dialogo. A partire da Chrome 132, in queste situazioni viene generato InvalidStateError.

Bug di monitoraggio #373684393 | Voce di ChromeStatus.com | Specifiche

Eventi di attivazione/disattivazione della finestra di dialogo

È utile sapere quando si aprono e si chiudono gli elementi <dialog> e popover possiede già ToggleEvent, che viene inviato quando si apre o si chiude un popup. In precedenza, per rilevare l'apertura di un <dialog>, dovevi registrare un osservatore delle mutazioni per verificare l'apertura. Tuttavia, si tratta di un lavoro piuttosto laborioso, mentre un evento sarebbe più semplice.

Questa modifica incorpora lo stesso ToggleEvent inviato dai popup, ma per gli elementi <dialog>: quando viene chiamato showModal o show, <dialog> invia un ToggleEvent con newState=open. Quando un <dialog> viene chiuso (utilizzando il modulo, il pulsante o closewatcher), deve inviare un ToggleEvent con newState=closed.

Bug di monitoraggio 41494780 | Voce di ChromeStatus.com | Specifiche

Correggi la selezione isCollapsed nel DOM ombra

La selezione isCollapsed deve restituire true se e solo se l'ancora e lo stato attivo sono uguali. Questo dovrebbe essere vero indipendentemente dal fatto che la selezione inizi o termini all'interno di un albero di illuminazione o di un albero di ombre.

Demo | Bug di monitoraggio #40400558 | Voce di ChromeStatus.com | Specifiche

CSS

Posizionamento dell'ancora CSS: consenti anchor-size() nelle proprietà inset e margin

In origine, anchor-size() era consentito solo nelle proprietà di dimensionamento. La specifica è stata modificata per consentire anche anchor-size() in rientranze e margini.

Bug di monitoraggio 346521300 | Voce di ChromeStatus.com | Specifiche

Modalità di scrittura CSS in orizzontale

Supporto delle parole chiave sideways-rl e sideways-lr per la proprietà CSS writing-mode. sideways-rl e sideways-lr sono utili per scrivere testo non CJK verticalmente. A differenza di vertical-rl e vertical-lr, non hanno comportamenti favorevoli per le lingue CJK.

MDN writing-mode | Bug di monitoraggio #40501131 | Voce di ChromeStatus.com | Specifiche

Caricamento in corso

Recupera: Request.bytes() e Response.bytes()

Aggiungi un metodo bytes() alle interfacce Request e Response, che restituisce una promessa che si risolve con un Uint8Array. Sebbene Request e Response abbiano un metodo arrayBuffer(), non puoi leggere direttamente da un buffer. Per leggerlo, devi creare una visualizzazione come Uint8Array. Il metodo bytes() migliora l'ergonomia dell'ottenimento del corpo di Request e Response.

Bug di monitoraggio #340206277 | Voce di ChromeStatus.com | Specifiche

Ignora Strict-Transport-Security per localhost

Le intestazioni di risposta Strict-Transport-Security (STS) possono causare problemi per i server web localhost perché STS si applica all'intero host, su tutte le porte. Ciò causa problemi di compatibilità per gli sviluppatori web che eseguono test locali. Inoltre, colpisce gli utenti finali che utilizzano pacchetti software che avviano comunemente i server web localhost per motivi temporanei. Ad esempio, la comunicazione di un token di autenticazione da un accesso web a un pacchetto software locale. Se un ascoltatore locale imposta Strict-Transport-Security su una risposta localhost, questo valore viene applicato a tutte le richieste localhost successive, indipendentemente dalla porta.

Chrome 132 risolve questo problema ignorando gli Strict-Transport-Security header nelle risposte degli URL localhost.

Bug di monitoraggio 41251622 | Voce di ChromeStatus.com

Media

Acquisisci tutte le schermate

Acquisisci tutte le schermate collegate al dispositivo utilizzando getAllScreensMedia().

La chiamata di getDisplayMedia() più volte richiede più gesti dell'utente, grava sull'utente con la scelta della schermata successiva ogni volta e non garantisce all'app che tutte le schermate siano state selezionate. Il metodogetAllScreensMedia() offre miglioramenti su tutti questi fronti.

Questa funzionalità è disponibile solo su computer.

Documento di progettazione | Bug di monitoraggio #40216442 | Voce di ChromeStatus.com | Specifiche

Acquisizione di elementi

Dato un video MediaStreamTrack ottenuto tramite metodi preesistenti per avviare l'acquisizione di schede, Element Capture consente di modificare la traccia in modo da acquisire solo un sottoalbero del DOM a partire da un determinato elemento.

L'API presenta alcune somiglianze con l'API Region Capture, ma offre una maggiore flessibilità per le applicazioni, perché i contenuti che coprono e che sono coperti sono entrambi esclusi dall'acquisizione.

Demo | Bug di monitoraggio #270230413 | Voce di ChromeStatus.com | Specifiche

API web

PushMessageData::bytes()

L'interfaccia PushMessageData imita l'interfaccia Body, che è stata modificata all'inizio di quest'anno con un nuovo metodo bytes(), in base al principio che in genere le API devono vendere buffer di byte come Uint8Arrays. Chrome 132 si allinea nuovamente all'interfaccia Body fornendo l'accessore bytes() anche nell'interfaccia PushMessageData.

MDN PushMessageData: metodo bytes() | Bug di monitoraggio #373336950 | Voce di ChromeStatus.com | Specifiche

Contenitori con scorrimento attivabile da tastiera

L'implementazione di questa funzionalità (da Chrome 130) è stata interrotta a causa di un'evoluzione negativa dell'accessibilità. Il problema è stato risolto e la funzionalità continua a essere implementata con Chrome 132.

Barre di scorrimento attivabili da tastiera | Bug di monitoraggio 40113891 | Voce di ChromeStatus.com | Specifiche

API Device Posture

Questa API aiuta gli sviluppatori a rilevare la posizione attuale di un dispositivo pieghevole. La posizione del dispositivo è la posizione fisica in cui viene tenuto un dispositivo, che può essere ricavata dai sensori oltre che dall'angolo.

Dal miglioramento dell'usabilità di un sito web evitando l'area di una piega, all'attivazione di casi d'uso innovativi per il web, conoscere la posizione di un dispositivo può aiutare gli sviluppatori a personalizzare i propri contenuti per dispositivi diversi.

I contenuti possono essere consumati e sfogliati anche quando il dispositivo non è piatto. In questo caso, lo sviluppatore potrebbe voler fornire un layout diverso a seconda dello stato della postura in cui viene utilizzato il dispositivo.

Repository Git | Bug di monitoraggio #40124716 | Voce di ChromeStatus.com | Specifiche

Query salvate in sharedStorage.selectURL

sharedStorage.selectURL() ora consente di salvare e riutilizzare le query su base per pagina, in cui i due budget per caricamento di pagina vengono addebitati la prima volta che viene eseguita una query salvata, ma non per le esecuzioni successive della query salvata durante lo stesso caricamento di pagina. Questo viene ottenuto con un parametro savedQuery nelle opzioni per selectURL() che assegna un nome alla query.

Bug di monitoraggio #367440966 | Voce di ChromeStatus.com | Specifiche

Valore jolly della lista consentita predefinita dei criteri di autorizzazione dell'API Private State Tokens

L'accesso all'API Private State Token è limitato dalle funzionalità dei criteri di autorizzazione. Chrome 132 aggiorna la lista consentita predefinita sia per le funzionalità private-state-token-issuance che per quelle private-state-token-redemption da self a * (carattere jolly).

Voce di ChromeStatus.com | Specifiche

API FedCM Mode e API Use Other Account

Due nuove estensioni per FedCM:

  • Modalità: la modalità active consente ai siti web di chiamare FedCM all'interno di un clic su un pulsante (ad esempio, facendo clic su un pulsante Accedi all'IDP), il che richiede che FedCM garantisca di rispondere sempre con un'interfaccia utente visibile. La chiamata all'API FedCM in modalità attiva consente agli utenti di accedere all'Identity Provider (IdP) quando non sono più collegati. Inoltre, poiché la modalità attiva viene richiamata all'interno di un gesto dell'utente esplicito, l'interfaccia utente è anche più in evidenza (ad esempio, centrata e modale) rispetto all'interfaccia utente della modalità passiva (che non richiede un requisito di gesto dell'utente e può essere chiamata al caricamento della pagina).
  • Usa un altro account: con questa estensione, un'IDP può consentire agli utenti di accedere ad altri account.

Demo | Bug di monitoraggio #370694829 | Voce di ChromeStatus.com | Specifiche

Accesso al file system per Android e WebView

Questa API consente agli sviluppatori di creare app potenti che interagiscono con altre app (non web) sul dispositivo dell'utente utilizzando il file system del dispositivo. Dopo che un utente ha concesso l'accesso a un'app web, questa API consente all'app di leggere o salvare le modifiche direttamente nei file e nelle cartelle selezionate dall'utente. Oltre a leggere e scrivere file, questa API offre la possibilità di aprire una directory ed enumerarne i contenuti, nonché di memorizzare handle di file e directory in IndexedDB per riottenere in un secondo momento l'accesso agli stessi contenuti.

L'accesso al file system è stato fornito su computer in Chrome 86 e, con Chrome 132, è disponibile su Android e WebView.

L'API File System Access | Bug di monitoraggio 40091667 | Voce di ChromeStatus.com | Specifiche

API WebAuthn Signal

Consente alle parti interessate WebAuthn di segnalare informazioni sulle credenziali esistenti ai fornitori di servizi di archiviazione delle credenziali, in modo che le credenziali errate o revocate possano essere aggiornate o rimosse dall'interfaccia utente del fornitore e del sistema.

Scopri di più sull'API Signal per le passkey su Chrome per computer.

Demo | Bug di monitoraggio #361751877 | Voce di ChromeStatus.com | Specifiche

Rendering e grafica

WebGPU: miscelazione di texture con valori float a 32 bit

La funzionalità GPU float32-blendable consente di miscelare le texture GPU con i formati r32float, rg32float e rgba32float.

Bug di monitoraggio #369649348 | Voce di ChromeStatus.com | Specifiche

WebGPU: esponi GPUAdapterInfo da GPUDevice

L'attributo GPUDevice adapterInfo espone lo stesso GPUAdapterInfo dell'oggetto GPUAdapter.

Bug di monitoraggio #376600838 | Voce di ChromeStatus.com | Specifiche

WebGPU: utilizzo della visualizzazione delle texture

Aggiunge un campo facoltativo alla creazione della visualizzazione della texture WebGPU per richiedere un sottoinsieme di indicatori di utilizzo dalla texture di origine.

Per impostazione predefinita, l'utilizzo della visualizzazione della texture viene ereditato dalla texture di origine, ma esistono formati di visualizzazione che possono essere incompatibili con l'insieme completo di utilizzi ereditati. L'aggiunta di un campo di utilizzo alla creazione della visualizzazione della trama consente all'utente di richiedere un sottoinsieme di utilizzi della trama di origine validi per il formato della visualizzazione e specifici per l'utilizzo previsto della visualizzazione della trama.

Le implementazioni di WebGPU possono anche ottimizzare la creazione di risorse a basso livello e migliorare le prestazioni quando si utilizzano visualizzazioni con flag di utilizzo più specializzati.

Bug di monitoraggio #363903526 | Voce di ChromeStatus.com | Specifiche

Prove dell'origine

Suggerimenti di compilazione espliciti con commenti magici

Questa funzionalità ti consente di allegare informazioni sulle funzioni da analizzare e compilare rapidamente nei file JavaScript. Le informazioni verranno codificate come commenti magici.

Origin Trial | Spiegazione | Bug di monitoraggio #42203853 | Voce di ChromeStatus.com

Document-Isolation-Policy

Document-Isolation-Policy consente a un documento di attivare crossOriginIsolation per se stesso, senza dover implementare COOP o COEP e indipendentemente dallo stato crossOriginIsolation della pagina. Il criterio è supportato dall'isolamento dei processi. Inoltre, le risorse secondarie cross-origin non CORS del documento verranno caricate senza credenziali o dovranno avere un'intestazione CORP.

Origin Trial | Tracking bug #333029146 | Voce di ChromeStatus.com | Specifiche

Ritiro e rimozione

navigator.storage è stato creato un EventTarget per l'evento di pressione dello spazio di archiviazione, che non è mai andato oltre la fase di prototipo. Questo codice inutilizzato verrà rimosso e, di conseguenza, navigator.storage non estenderà più EventTarget.

Voce di ChromeStatus.com | Specifiche

Rimuovere le API a schermo intero HTMLVideoElement con prefisso

Le API per video a schermo intero con prefisso HTMLVideoElement sono state ritirate da Chrome.

Sono state sostituite dall'API Element.requestFullscreen(), che è stata inizialmente distribuita senza prefisso in Chrome 71 nel 2018. A partire dal 2024, la maggior parte dei browser supporta le API senza prefisso da alcuni anni.

Chrome 132 rimuove quanto segue da HTMLVideoElement:

  • L'attributo webkitSupportsFullscreen.
  • L'attributo webkitDisplayingFullscreen.
  • Il metodo webkitEnterFullscreen().
  • Il metodo webkitExitFullscreen(). Tieni presente la diversa capitalizzazione della "S" in FullScreen.
  • Il metodo webkitEnterFullScreen().
  • Il metodo webkitExitFullScreen().

Questi metodi ora sono solo alias per l'API moderna. Il loro utilizzo è diminuito costantemente nel corso degli anni.

Voce di ChromeStatus.com

Per approfondire

Cerchi altro? Consulta queste risorse aggiuntive.

Scarica Google Chrome

Scarica Chrome per Android, computer o iOS.