Salvo indicação em contrário, as mudanças descritas abaixo se aplicam à versão mais recente do canal Beta do Chrome para Android, Chrome OS, Linux, macOS e Windows. Para saber mais sobre os recursos listados aqui, acesse os links fornecidos ou a lista exibida em ChromeStatus.com. O Chrome 79 está na fase Beta desde 31 de outubro de 2019.

A realidade virtual chegou à Web

A API WebXR Device está habilitada no Chrome. Agora, os desenvolvedores podem criar experiências imersivas para smartphones e óculos de realidade virtual. Mais navegadores serão compatíveis com essas especificações em breve, incluindo Firefox Reality, Oculus Browser, Edge, Helio da Magic Leap, entre outros.

Esse lançamento define as bases para futuros recursos imersivos, como suporte à realidade aumentada, ferramentas e expansão da compreensão do mundo real de experiências imersivas. Diversas experiências podem ser aprimoradas com a funcionalidade imersiva. Os exemplos incluem jogos, compra de imóveis, visualizar produtos na sua casa antes de adquiri-los e muito mais. Para dar os primeiros passos em realidade virtual e na nova API, leia A realidade virtual chegou à Web.


Testes de origem

Essa versão do Chrome apresenta os testes de origem descritos abaixo. Com eles, você pode testar novos recursos e fornecer feedback sobre usabilidade, praticidade e eficácia aos padrões da comunidade da Web. Para se registrar em qualquer teste de origem atualmente compatível com o Chrome, incluindo os descritos abaixo, acesse o painel de testes de origem. Acesse o Guia de testes de origem para desenvolvedores Web e saiba mais sobre esse tipo de teste.

Suporte ao atributo RenderSubtree

Adiciona o atributo RenderSubtree a todos os elementos HTML, o que bloqueia um elemento DOM para exibição. Quando o RenderSubtree é definido como "invisible", o conteúdo do elemento não é desenhado nem testado, permitindo otimizações de renderização. Com o token "activatable" do RenderSubtree, o navegador pode remover o atributo invisível, renderizando o conteúdo e tornando-o visível.

API Wake Lock com base em promessas

Adiciona uma atualização da API Wake Lock que introduz tipos de wake locks e promessas. A API Wake Lock trouxe uma maneira padrão, segura e confiável de impedir que alguns recursos do dispositivo, como a tela ou os ciclos de CPU, entrem no estado de economia de energia. Essa atualização soluciona algumas falhas da antiga API, que se limitava ao Wake Lock da tela e não resolvia certos problemas de segurança e privacidade.

Outros recursos desta versão

Exibição adaptativa de ícones para PWAs instalados no Android

O Android Oreo introduziu ícones adaptativos, o que aplicou a mesma forma para todos os ícones na tela inicial e no inicializador. Antes, os ícones do Android O podiam ter qualquer forma, e não havia segundo plano para cada ícone. Por exemplo, o Gmail era retangular, e o Google Play era um triângulo. Consequentemente, esses ícones eram inseridos em um círculo branco. Com a exibição adaptativa de ícones, o Android mascara automaticamente os ícones com forma irregular para que se ajustem corretamente.

Suporte ao foco automático para qualquer elemento HTML/SVG focalizável

Adiciona o atributo autofocus para qualquer elemento HTML ou SVG focalizável. Antes, o autofocus era compatível com uma quantidade limitada de elementos HTML, e havia elementos que podiam receber foco, mas não eram compatíveis com o atributo autofocus. Esse recurso corrige as inconsistências.

Calcular proporção de imagem e vídeo a partir de atributos HTML de largura ou altura

A proporção de uma imagem agora é calculada. Assim, ela pode ser usada para dimensionar uma imagem com o CSS, antes do carregamento. Isso evita que o layout seja retrabalhado desnecessariamente quando a imagem for carregada.

font-optical-sizing

A propriedade font-optical-sizing
define automaticamente o tamanho da fonte para o opsz (eixo de dimensionamento óptico) das fontes variáveis compatíveis com o dimensionamento óptico. Isso melhora o estilo e a legibilidade das fontes, dependendo do tamanho, uma vez que é escolhida uma forma de glifo que funciona de maneira ideal no tamanho fornecido. Por exemplo, o contraste do glifo é aprimorado nas fontes, nos tamanhos de cabeçalho, quando comparado à mesma fonte no tamanho do texto do corpo.

list-style-type: <string>

Permite que uma folha de estilo use um caractere arbitrário para o marcador de estilo de lista. Os exemplos incluem “-”, “+”, “★” e “▸”. Desde o CSS nível 2, o list-style-type é compatível com palavras-chave, como disc ou decimal, para definir a aparência do marcador de item da lista.
Sem isso, os desenvolvedores geralmente são forçados a ocultar o marcador real e inserir o marcador arbitrário usando um pseudoelemento ::before por meio da propriedade do conteúdo. Infelizmente, o marcador falso não será bem posicionado por list-style-position.

Rejeitar Worklet.addModule() com um erro mais específico

Quando ocorre falha do Worklet.addModule(), há a rejeição de uma promessa com um objeto de erro mais específico do que anteriormente. O Worklet.addModule() pode falhar por diversos motivos, incluindo, por exemplo, erros de rede e sintaxe. Antes da alteração, o Worklet.addModule() rejeitava com AbortError, independentemente da causa real. Isso dificultava a tarefa dos desenvolvedores de depuração dos worklets. Após a mudança, o Worklet.addModule() faz a rejeição com um erro mais claro, como SyntaxError.

Recuperar um objeto service worker correspondente ao próprio worker

Um service worker agora pode acessar o próprio objeto ServiceWorker com self.serviceWorker em um script de service worker e o estado atual com self.serviceWorker.state. Antes, não havia como uma instância de service worker acessar o próprio estado do ciclo de vida atual. Isso elimina a necessidade do artifício de rastrear o estado atual do ciclo de vida com uma variável global, um método propenso a erros que não captura corretamente os períodos de espera.

Parar de avaliar elementos de script movidos entre documentos durante a busca

O Chrome deixará de avaliar scripts ou acionar eventos error e load se os elementos <script> forem movidos entre documentos durante a busca. Os elementos de script ainda podem ser movidos entre documentos, mas não serão executados. Isso evita possíveis erros de segurança causados pela exploração de elementos <script> movidos entre documentos.

Suspensões de uso e remoções

Essa versão do Chrome introduz as suspensões de uso e remoções listadas abaixo. Acesse ChromeStatus.com para ver as listas de suspensões de uso atuais e de remoções anteriores.

Palavras-chave -webkit-appearance para elementos arbitrários

Altera as palavras-chave -webkit-appearance para funcionarem somente com tipos de elementos específicos. Se uma palavra-chave for aplicada a um elemento não suportado, ele assumirá a aparência padrão.