Novidades do Chrome 75

No Chrome 75, adicionamos suporte para:

Eu sou Pete LePage. Vamos conferir as novidades para os desenvolvedores do Chrome 75.

Registro de alterações

Isso abrange apenas alguns dos principais destaques. Confira os links abaixo para ver outras mudanças no Chrome 75.

Dica sobre contextos de baixa latência canvas

Desenhar na tela com o elemento "Canvas" exige que a página sincronize atualizações gráficas com o DOM. Essa sincronização às vezes pode causar latência. Por exemplo, em um app de desenho, latências maiores que 50 milissegundos podem interferir na coordenação mão-olho, dificultando o uso.

A dica desynchronized, ao criar um contexto canvas, usa um caminho de código diferente, que ignora o mecanismo comum de atualização do DOM. A dica diz ao sistema para pular o máximo de composição possível. Em alguns casos, o buffer subjacente de canvas é enviado diretamente para o controlador de exibição da tela. Isso elimina a latência que seria causada pelo uso da fila do compositor do renderizador.

Usar a dica dessincronizada é simples, basta adicionar desynchronized: true ao objeto de opções ao criar a tela.

const opts = { desynchronized: true };
const ctx = canvas.getContext('2d', opts);

Confira o artigo de Joe Renderização de baixa latência com a dica dessincronizada para ver mais detalhes, incluindo como fazer a detecção de recursos para isso.

Compartilhar arquivos com a API Web Share

A API Web Share permite se conectar ao serviço de compartilhamento fornecido pelo SO, facilitando o compartilhamento de páginas da Web e apps com outros apps instalados no dispositivo do usuário.

No Chrome 75, a API Web Share agora oferece suporte ao compartilhamento de arquivos. Estou especialmente empolgado com isso, porque assim fica mais fácil para os apps compartilharem fotos, vídeos e muito mais. O Squoosh está adicionando suporte para compartilhar um arquivo assim que você terminar de compactá-lo. Atualmente, a API Web Share é compatível com o compartilhamento de arquivos de áudio, imagens, vídeos e documentos de texto.

É melhor usar a detecção de recursos para conferir se a API Web Share é compatível. Caso contrário, use o mecanismo tradicional. Além disso, você pode usar navigator.canShare para verificar se o compartilhamento de arquivos é compatível.


const webShareAvailable = {
  links: 'share' in navigator,
  files: 'canShare' in navigator,
};

Se navigator.canShare retornar true, o compartilhamento desses arquivos será aceito. Assim, será possível chamar navigator.share e transmitir um objeto com a matriz de arquivos que você quer compartilhar. O Chrome vai abrir a página de compartilhamento do sistema e mostrar uma lista de apps instalados com os quais você pode compartilhar os arquivos.

if (webShareAvailable.files) {
  const shareData = { files: filesArray };
  if (navigator.canShare(shareData)) {
    shareData.title = 'Squooshed files.';
    navigator.share(shareData)
      .then(...)
      .catch(...);
  } else {
    // File sharing not supported
  }
}

Teste a demonstração e confira todos os detalhes no artigo Compartilhar arquivos com o Compartilhamento na Web.

Separadores numéricos

Os literais numéricos agora permitem sublinhados (_, U+005F) como separadores para torná-los mais legíveis. Por exemplo, 1_000_000_000 será interpretado por operações matemáticas como equivalente a 1000000000.

Os sublinhados podem ser exibidos apenas entre dígitos, e sublinhados consecutivos não são permitidos. Portanto, literais como 3._14, _2.71 ou 1.6__2 são ilegais.

O Google I/O 2019 chegou ao fim

Se você não foi ao I/O, ou talvez tenha participado e não tenha assistido todas as palestras, todas elas estão no canal Chrome Developers no YouTube, na playlist Web at Google I/O 2019.

Inscrever-se

Para ficar por dentro dos nossos vídeos, inscreva-se no canal de desenvolvedores do Chrome no YouTube. Você vai receber uma notificação por e-mail sempre que lançarmos um novo vídeo.

Eu sou Pete LePage e, assim que o Chrome 76 for lançado, terei aqui as novidades:

Créditos das fotos