No Chrome 75, adicionamos suporte para:
- Há uma nova maneira de reduzir a latência em elementos
canvas
. - Agora os apps da Web podem compartilhar arquivos com outros apps instalados usando a página de compartilhamento no nível do sistema.
- Os literais numéricos agora permitem sublinhados como separadores para facilitar a leitura.
- O Google I/O 2019 acabou, e todas as palestras estão no nosso canal do YouTube.
Meu nome é Pete LePage. Vamos conferir as novidades para desenvolvedores no Chrome 75.
Registro de alterações
Este artigo aborda apenas alguns dos principais destaques. Confira os links abaixo para ver outras mudanças no Chrome 75.
- Novidades do Chrome DevTools (75)
- Descontinuações e remoções do Chrome 75
- Atualizações do ChromeStatus.com para o Chrome 75
- Novidades do JavaScript no Chrome 75
- Lista de mudanças do repositório de origem do Chromium
Dica para contextos canvas
de baixa latência
Desenhar na tela com o elemento canvas exige que a página sincronize as atualizações gráficas com o DOM. Às vezes, essa sincronização pode causar latência. Por exemplo, em um app de desenho, latências maiores que 50 milissegundos podem interferir na coordenação entre os olhos e as mãos, dificultando o uso.
A sugestão desynchronized
, ao criar um contexto canvas
, usa um caminho
de código diferente, que ignora o mecanismo de atualização DOM usual. A dica informa ao
sistema para pular o máximo possível de composições. Em alguns casos, o buffer
subjacente do 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.
O uso da dica dessynchronize é 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 dessynchronizada para mais detalhes, incluindo como fazer a detecção de recursos.
Compartilhar arquivos com a API Web Share
A API Web Share permite conectar o 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 muito animado com isso, porque facilita muito o compartilhamento de fotos, vídeos e muito mais. O Squoosh está adicionando suporte a isso para compartilhar um arquivo depois que você terminar de compactá-lo. No momento, a API Web Share oferece suporte ao compartilhamento de arquivos de áudio, imagens, vídeos e documentos de texto.
É melhor usar a detecção de recursos para saber se a API Web Share tem suporte
e usar o mecanismo tradicional como fallback se ela não tiver. E você pode usar
navigator.canShare
para verificar se o compartilhamento de arquivos é aceito.
const webShareAvailable = {
links: 'share' in navigator,
files: 'canShare' in navigator,
};
Se navigator.canShare
retornar true
, o compartilhamento desses arquivos será possível.
Portanto, chame navigator.share
e transmita 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 o artigo Compartilhar arquivos com o recurso Compartilhar na Web para saber mais.
Separadores numéricos
Os literais numéricos agora permitem sublinhados (_, U+005F) como
separadores para facilitar a leitura. Por exemplo, 1_000_000_000
será
interpretado por operações matemáticas como equivalente a 1000000000
.
Os sublinhados só podem aparecer 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 acabou
Se você não conseguiu ir ao I/O ou não assistiu a todas as palestras, elas estão disponíveis no canal do YouTube do Chrome Developers, na playlist da Web no Google I/O 2019.
- Tom e eu apresentamos "Desbloqueando novos recursos para a Web", que aborda alguns dos novos recursos incríveis que serão lançados nos navegadores este ano.
- Addy e Katie abordaram algumas dicas e truques legais de performance em "Speed at Scale".
- Elizabeth e Paul mergulharam em algumas ferramentas do desenvolvedor legais em "Demystifying Speed Tooling".
- E em "Criar apps da Web rápidos e suaves em smartphones e computadores", Mariko mostrou como ela e a equipe criaram o Proxx para funcionar em qualquer dispositivo, de feature phone a smartphone e computador. Se você ainda não experimentou o Proxx, ele é um clone super divertido do jogo de busca de minas.
Inscrever-se
Se quiser ficar por dentro dos nossos vídeos, inscreva-se no canal do YouTube para desenvolvedores do Chrome e receba uma notificação por e-mail sempre que lançarmos um novo vídeo.
Meu nome é Pete LePage, e assim que o Chrome 76 for lançado, vou estar aqui para contar as novidades do Chrome.
Créditos da foto
- Foto de esboço de Balázs Kétyi do Unsplash (em inglês).