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.