Chrome 112 Beta

Aninhamento de CSS, composição de animação e um parâmetro de envio para o construtor FormData.

Salvo indicação em contrário, as mudanças descritas abaixo se aplicam à versão mais recente do Canal Beta do Chrome para Android, ChromeOS, Linux, macOS e Windows. Saiba mais sobre os recursos listados aqui nos links fornecidos ou na lista em ChromeStatus.com. O Chrome 112 está na versão Beta em 9 de março de 2023. Faça o download da versão mais recente em Google.com para computador ou na Google Play Store no Android.

CSS

Transição de CSS

A capacidade de aninhar regras de estilo CSS dentro de outras regras de estilo, combinando seletores do externo com a regra interna para aumentar a modularidade e a manutenção das folhas de estilo. Saiba mais neste artigo sobre aninhamento de CSS.

Propriedade do CSS animation-composition

Com a propriedade animation-composition, é possível especificar a operação composta para ser usada quando várias animações afetam a mesma propriedade simultaneamente. Confira um exemplo nesta demonstração.

APIs Web

A barra de informações "Atualizar esta página" não é mais mostrada se o frame de nível superior estiver observando mudanças de permissão.

Suprime a barra de informações "Recarregar esta página" se o frame de nível superior estiver inscrito no evento onchange de PermissionStatus, que é considerado como uma indicação de que o aplicativo quer reagir dinamicamente às mudanças de permissão da câmera ou do microfone iniciadas pela caixa de diálogo de informações da página. Independentemente da presença do listener de eventos, o comportamento preexistente permanece inalterado: os streams de mídia são encerrados imediatamente depois que a permissão é revogada.

Adicionar o parâmetro do remetente opcional ao construtor FormData

Permite transmitir um botão de envio ao construtor FormData. Se o botão tiver um nome ou for um botão de imagem, ele contribuirá para o conjunto de dados do formulário. Isso possibilita criar um objeto FormData com o mesmo conjunto de dados de um envio de formulário básico acionado pelo botão.

Sinalização RegExp v com notação e propriedades de strings definidas

Adicione operações de conjunto, literais de string, classes aninhadas e propriedades unicode de strings a classes de caracteres de expressões regulares. As operações definidas e as propriedades Unicode de strings permitem que os desenvolvedores criem expressões regulares que correspondam a strings com determinados caracteres Unicode com facilidade.

Por exemplo:/[\p{Script_Extensions=Greek}&&\p{Letter}]/v corresponde a todas as letras gregas.

O algoritmo de foco inicial <dialog> foi atualizado

Algumas mudanças foram feitas em qual elemento é selecionado para receber foco quando um elemento <dialog> é aberto:

  • Faça com que as etapas de foco da caixa de diálogo olhem para os elementos focalizáveis do teclado em vez de qualquer elemento focalizável.
  • Fazer com que o próprio elemento da caixa de diálogo receba foco se ele tiver o atributo autofocus definido.
  • Faça com que o próprio elemento da caixa de diálogo receba foco como substituto, em vez de ser "redefinido" para o elemento do corpo.

Chamada de cauda do WebAssembly

Adiciona uma chamada de cauda explícita e opcodes de chamada de cauda indireta ao WebAssembly.

WebGLContextEvent em Web workers

O tipo WebGLContextEvent já foi definido na especificação WebGL do Khronos há vários anos, mas só havia sido observado recentemente que, no Blink, esse tipo não é exposto em Web workers.

A maioria dos aplicativos simplesmente adiciona um listener de eventos para o tipo e não procura o protótipo no escopo global. Essa é uma correção simples para a IDL da Web do Blink para WebGLContextEvent, mas é uma mudança exposta na Web.

Pular o gerenciador de busca de ambiente autônomo do service worker

O recurso agiliza a navegação em páginas com gerenciadores de busca do service worker em ambiente autônomo, ignorando-os.

Alguns sites têm um listener de busca no-op (sem operação) (por exemplo, onfetch = () => {}). Como ter o listener de busca era um dos requisitos para ser um Progressive Web App (PWA), presumimos que eles tenham feito isso para tornar o site reconhecido como PWA. No entanto, isso só traz sobrecarga para iniciar um service worker e executar um listener de ambiente autônomo, sem trazer nenhum benefício de recursos como armazenamento em cache ou recursos off-line, porque o código não faz nada.

Para agilizar a navegação, a partir do Chrome 112, vamos omitir a inicialização do service worker e o envio do listener do caminho crítico de navegação se um user agent identificar que todos os listeners de busca dele estão inativos.

Como parte dessa mudança, o Chromium mostrará avisos do console se todos os listeners de busca do service worker estiverem inativos, e incentivará os desenvolvedores a remover esses listeners de busca inúteis. Esperamos que os sites parem de usar listeners de busca inúteis e que possamos descontinuar o recurso no futuro.

Aceitar codificação: br (Brotli) na conexão HTTPS na WebView

O Brotli (tipo de codificação de conteúdo: br) é um algoritmo de compressão sem perdas de propósito genérico que oferece compactação mais densa com taxa de compressão e velocidade comparáveis aos melhores métodos de compactação de uso geral disponíveis atualmente. Consulte google/brotli e RFC 7932 para mais detalhes (links em inglês).

O Chrome oferece suporte ao tipo de codificação de conteúdo HTTP para Brotli (Accept-Encoding: br) desde a versão 50, mas ele não estava ativado para o WebView até agora. O recurso vai ser lançado em fases para garantir a estabilidade e estará disponível para 50% do público na versão Beta do WebView.

Testes de origem em andamento

No Chrome 112, você pode ativar os seguintes testes de origem.

FedCM: API de reautenticação automática

A versão mais recente do FedCM inclui um recurso de reautenticação automática que permite reautenticar automaticamente os usuários quando eles voltarem após a autenticação inicial com o FedCM.

Atualmente, depois que um usuário cria uma conta federada em uma RP (parte confiável) com um IdP (provedor de identidade) pela FedCM, na próxima vez que ele acessa o site, precisa seguir as mesmas etapas na interface do usuário. Ou seja, é necessário confirmar explicitamente e se autenticar outra vez para continuar com o fluxo de login. Como um dos principais objetivos da FedCM é evitar o rastreamento oculto, essa experiência do usuário (UX) faz sentido antes da criação da conta federada, mas se torna desnecessária e complicada depois que o usuário passa por ela uma vez. É por isso que o Chrome está introduzindo uma UX mais simplificada que as partes restritas podem escolher para os usuários recorrentes.

Inscrever-se para o teste de origem de reautenticação automática da FedCM

Teste de descontinuação

O método getStats() de RTCPeerConnection não vai mais retornar objetos de estatísticas em que type == "track" ou "stream" Esse recurso foi removido no Chrome 112. Ative o teste para ter mais tempo e fazer as mudanças necessárias.

Inscreva-se para o teste de descontinuação

"X-Required-With" na descontinuação do WebView

O teste de origem de descontinuação oferece suporte à pré-ativação de origem cruzada ao chamar serviços que dependem do cabeçalho X-Requested-With. Essa opção está disponível no WebView a partir do Chrome 112. Consulte as instruções de configuração do teste de origem para saber como usar esse recurso.

Inscreva-se no teste de descontinuação do "X-Solicitação com WebView".

Descontinuações e remoções

Esta versão do Chrome apresenta as suspensões de uso e remoções listadas abaixo. Acesse ChromeStatus.com para consultar as listas de descontinuações planejadas, suspensões atuais e remoções anteriores.

Nesta versão do Chrome, descontinuamos um recurso.

Descontinuar o setter document.domain

O setter de document.domain permite que os desenvolvedores relaxem a política de mesma origem, complicando o limite de segurança fundamental que queremos manter e colocando obstáculos no caminho de mudanças pós-Spectre no modelo de processo do Chromium. Agora é possível aceitar os clusters de agente com chave de origem.

Esta versão do Chrome remove um recurso.

Remova os objetos de estatísticas track e stream do método getStats() de RTCPeerConnection.

O método getStats() de RTCPeerConnection não vai mais retornar objetos de estatísticas em que type == "track" ou "stream" Não enviado no Chrome 112, com um teste de descontinuação (listado acima) para estender a disponibilidade dessas métricas para o Chrome 115.