Rimozioni e ritiri di API in Chrome 52

Joe Medley
Joe Medley

In quasi tutte le versioni di Chrome, vediamo un numero significativo di aggiornamenti e miglioramenti al prodotto, al suo rendimento e anche alle funzionalità della piattaforma web. Questo articolo descrive le modifiche apportate a Chrome 52, che è in versione beta dal 9 giugno. Questo elenco è soggetto a modifiche in qualsiasi momento.

Ritiro dell'evento e dell'attributo MediaStream ended e dell'attributo onended

TL;DR: l'evento e l'attributo ended e il gestore di eventi onended sono in fase di ritiro perché sono stati rimossi dalla specifica relativa a Media Capture e Streams.

Intento di rimozione | Tracker di Chromestatus | Bug di Chromium

Né l'evento ended né il gestore degli eventi onended fanno parte della specifica WebRTC da circa tre anni. Gli sviluppatori che vogliono guardare gli eventi devono utilizzare MediaStreamTracks anziché MediaStreams.

La rimozione è prevista in Chrome 53.

Bloccare i popup provenienti da iframe cross-origin durante gli eventi touch, tranne durante un gesto di tocco

TL;DR: Chrome inizierà a non consentire popup e altre operazioni sensibili sugli eventi tocco che non corrispondono a un tocco all'interno di iframe cross-origin.

Intento di rimozione | Tracker di Chromestatus | Bug di Chromium

Per loro natura, gli eventi tocco possono essere ambigui rispetto ai relativi eventi del mouse. Ad esempio, se un utente fa scorrere un dito sullo schermo, sta spostando un pulsante di attivazione/disattivazione o sta scorrendo la visualizzazione? Alcuni contenuti di terze parti negli iframe hanno sfruttato questa ambiguità per disattivare intenzionalmente lo scorrimento nella pagina contenente.

Per contrastare questo problema, i popup e altre operazioni sensibili non saranno consentiti sugli eventi tocco provenienti da iframe cross-origin. L'evento touchend continuerà a comportarsi come prima.

Ritiro del supporto dell'overload di postMessage()

TL;DR: una variante non necessaria e poco utilizzata dell'interfaccia postMessage(), in particolare postMessage(message, transferables, targetOrigin), verrà ritirata.

Intento di rimozione | Tracker di Chromestatus | Bug di Chromium

Il metodo postMessage() è un modo per comunicare in modo sicuro tra gli script delle pagine di origini diverse. WebKit/Blink supporta tre versioni:

  • postMessage(message, targetOrigin)
  • postMessage(message, targetOrigin, transferables)
  • postMessage(message, transferables, targetOrigin)

L'ultimo elemento di questo elenco è stato un incidente nella storia dell'evoluzione e dell'implementazione della specifica. Poiché viene utilizzata raramente, verrà ritirata e successivamente rimossa. Questo vale sia per window.postMessage() che per worker.postMessage().

La rimozione è prevista in Chrome 54.

Rimuovere il supporto di X-Frame-Options in tag

TL;DR: per rispettare le specifiche e aumentare la coerenza con altri browser, il supporto di X-Frame-Options all'interno di un tag <meta> verrà rimosso.

Intento di rimozione | Bug di Chromium

L'intestazione della risposta HTTP X-Frame-Options indica se un browser può visualizzare una pagina in un tag <frame>, <iframe> o <object>. In questo modo, un sito può evitare il clickjacking, poiché queste pagine non possono essere incorporate in altri siti. La versione corrente della specifica X-Frame-Options impedisce esplicitamente agli user agent di supportare questo campo all'interno di un tag <meta>.

Per rispettare le specifiche e aumentare la coerenza con altri browser, il supporto di X-Frame-Options all'interno di un tag <meta> verrà rimosso.

Rimuovere l'evento di clic del pulsante non principale

TL;DR: i clic del mouse non principali non attivano più gli eventi di clic, ma MouseEvent.button è ancora disponibile.

Intento di rimozione | Tracker di Chromestatus | Bug di Chromium

Per allineare Chrome alle specifiche UIEvents, rimuoveremo gli eventi di clic per i pulsanti del mouse non principali. I tasti del mouse diversi dal tasto principale variano in base al dispositivo. In genere, si tratta di qualsiasi altro pulsante del mouse, diverso da quello destro o sinistro. Tieni presente che il pulsante esatto su cui è stato fatto clic può comunque essere recuperato utilizzando la proprietà MouseEvent.button inviata a eventi come mousedown o mouseup.

Rimuovi requestAutocomplete()

La funzione requestAutocomplete() consentiva di compilare i moduli su richiesta tramite la funzionalità di compilazione automatica del browser. Tuttavia, a distanza di più di due anni, questa funzionalità è supportata solo in Blink e il suo utilizzo è ridotto. Per questi motivi, requestAutocomplete() viene rimosso in Chrome 52.

Intento di rimozione