No Chrome 75, adicionamos suporte para:
- Há uma nova maneira de reduzir a latência em elementos
canvas
. - Os apps da Web agora podem compartilhar arquivos com outros apps instalados usando a página de compartilhamento no nível do sistema.
- Agora, os literais numéricos permitem sublinhados como separadores para torná-los mais legíveis.
- O Google I/O 2019 foi encerrado, e todas as palestras estão no nosso canal do YouTube.
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.
- Novidades no Chrome DevTools (75)
- Suspensões de uso e remoções do Chrome 75
- Atualizações do ChromeStatus.com para o Chrome 75
- Novidades do JavaScript no Chrome 75
- Lista de alterações do repositório de origem do Chromium
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.
- Tom e eu apresentamos o artigo "Como aproveitar novos recursos para a Web" (em inglês), abordando alguns dos novos recursos incríveis que estão sendo lançados nos navegadores este ano.
- Addy e Katie abordaram algumas dicas e sugestões interessantes de desempenho em "Speed at Scale" (link em inglês).
- Elizabeth e Paul mergulham em alguns DevTools incríveis em "Demystifying Speed Tooling".
- Em "Criar apps rápidos e suaves da Web do Feature Phone para o computador", Mariko mostrou como ela e sua equipe criaram o Proxx para funcionar em qualquer dispositivo, desde feature phone até smartphone e desktop. Se você ainda não testou o Proxx, é um clone de mineração superdivertido.
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
- Esboços de Balázs Kétyi no Unsplash (links em inglês)