Chrome 132 beta

Data di pubblicazione: 13 novembre 2024

Salvo diversa indicazione, le seguenti modifiche si applicano alla release più recente del canale beta di Chrome per Android, ChromeOS, Linux, macOS e Windows. Scopri di più sulle funzionalità elencate qui tramite i link forniti o dall'elenco su ChromeStatus.com. Chrome 132 è in versione beta dal 13 novembre 2024. Puoi scaricare la versione più recente su Google.com per computer o sul Google Play Store su Android.

CSS

Questa release aggiunge due nuove funzionalità 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 anchor-size() anche in rientranze e margini.

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.

API web

Acquisisci tutte le schermate

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

La chiamata di getDisplayMedia() più volte richiede più gesti dell'utente, obbliga l'utente a scegliere ogni volta la schermata successiva e non garantisce all'app che tutte le schermate siano state selezionate. Il metodo getAllScreensMedia() migliora su tutti questi fronti.

Questa funzionalità è disponibile solo su computer.

Eventi di attivazione/disattivazione della finestra di dialogo

È utile sapere quando si aprono e si chiudono gli elementi <dialog> e che popover ha 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, questo è un lavoro piuttosto impegnativo, mentre un evento sarebbe più semplice.

Questa modifica incorpora lo stesso ToggleEvent inviato dai popover, 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 form, il pulsante o closewatcher), deve inviare un ToggleEvent con newState=closed.

Acquisizione di elementi

Dato un video MediaStreamTrack ottenuto tramite metodi preesistenti per avviare la registrazione della scheda, la funzionalità di acquisizione di elementi 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, in quanto i contenuti che coprono e che sono coperti sono entrambi esclusi dalla cattura.

Funzionalità di autorizzazione FedCM

Questo pacchetto include alcune funzionalità che possono essere utilizzate dai provider di identità (IdP) per implementare i flussi di autorizzazione, ad esempio consentire a un utente di concedere l'accesso al proprio calendario a una terza parte attendibile (RP). In particolare:

  • L'IDP deve essere in grado di mostrare una richiesta personalizzata per l'autorizzazione (API di continuazione).
  • L'RP ha bisogno di un modo estensibile per comunicare all'IdP a cosa vuole accedere (API dei parametri).
  • L'RP deve essere in grado di personalizzare o eliminare il testo che fa riferimento alla condivisione di "nome, indirizzo email e immagine del profilo" da parte dell'IDP perché in questa situazione vengono richieste informazioni diverse (API dei campi).
  • L'IdP potrebbe voler utilizzare un endpoint diverso per implementare il flusso di autorizzazione (più configURL).
  • Alcuni account potrebbero essere idonei solo per uno dei flussi di autenticazione e autorizzazione, pertanto è necessario un modo per mostrare account diversi nei due flussi (API etichette account).

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 al provider di identità (IdP) quando non sono connessi. Inoltre, poiché la modalità attiva viene richiamata all'interno di un gesto 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 gesto utente e può essere chiamata al caricamento della pagina).
  • Usa un altro account: con questa estensione, un provider di identità può consentire agli utenti di accedere ad altri account.

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 un Uint8Array. Il metodo bytes() migliora l'ergonomia dell'ottenimento del corpo di Request e Response.

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 selezionati dall'utente. Oltre a leggere e scrivere file, questa API offre la possibilità di aprire una directory ed enumerarne i contenuti, nonché di archiviare 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.

Ignorare 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 a livello di 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 autorizzazione 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 le intestazioni Strict-Transport-Security nelle risposte degli URL localhost.

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.

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).

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 le API in genere devono vendere buffer di byte come Uint8Arrays. Chrome 132 si allinea all'interfaccia Body fornendo l'accessore bytes() anche nell'interfaccia PushMessageData.

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.

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

In precedenza, la chiamata di showPopover() o showModal() in un popup o una finestra di dialogo che si trova all'interno di un documento inattivo non andava a buon fine in modo silenzioso. Non verrà sollevata alcuna eccezione, ma poiché il documento non è attivo, non verrà visualizzata alcuna finestra popup o di dialogo. Come di Chrome 132, in queste situazioni ora viene generato InvalidStateError.

API WebAuthn Signal

Consente alle parti interessate di 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 provider e del sistema.

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

WebGPU: miscelazione di texture con virgola mobile a 32 bit

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

WebGPU: esponi GPUAdapterInfo da GPUDevice

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

WebGPU: utilizzo della visualizzazione delle texture

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

Per impostazione predefinita, l'utilizzo della visualizzazione della trama viene ereditato dalla trama 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.

Nuove prove dell'origine

In Chrome 132 puoi attivare le seguenti nuove prove dell'origine.

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.

Suggerimenti di compilazione espliciti con commenti magici

Questa funzionalità consente di associare informazioni sulle funzioni che devono essere analizzate e compilate in modo eager nei file JavaScript. Le informazioni verranno codificate come commenti magici.

Ritiro e rimozione

Questa versione di Chrome introduce le seguenti ritiri e rimozioni. Visita ChromeStatus.com per gli elenchi delle ritirate pianificate, delle ritirate in corso e delle rimozioni precedenti.

Questa release di Chrome rimuove due funzionalità.

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.

Rimuovere le API HTMLVideoElement a schermo intero con prefisso

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

Sono stati sostituiti 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(). Nota 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.