No Chrome 76, adicionamos suporte para:
prefers-color-scheme
consulta de mídia, trazendo o modo escuro para sites.- Um botão de instalação na caixa de pesquisa para facilitar a instalação de apps da Web progressivos no computador.
- Impedir que a minibarra de informações apareça em Progressive Web Apps em dispositivos móveis.
- Atualizações mais frequentes de WebAPKs.
- E muito mais.
Meu nome é Pete LePage. Vamos conferir as novidades para desenvolvedores no Chrome 76.
Botão de instalação da Omnibox do PWA
No Chrome 76, estamos facilitando a instalação de apps da Web Progressivos no computador adicionando um botão de instalação à barra de endereço, às vezes chamada de caixa de pesquisa.
Se o site atender aos
critérios de instalabilidade de apps progressivos da Web, o Chrome
vai mostrar um botão de instalação na caixa de pesquisa, indicando ao usuário que o
PWA pode ser instalado. Se o usuário clicar no botão de instalação, será basicamente
o mesmo que chamar prompt()
no evento beforeinstallprompt
.
Isso mostra a caixa de diálogo de instalação, facilitando a instalação da PWA.
Consulte Instalação da barra de endereços para Progressive Web Apps no computador para conferir todos os detalhes.
Mais controle sobre a minibarra de informações do PWA

Em dispositivos móveis, o Chrome mostra a minibarra de informações na primeira vez que um usuário acessa seu site se ele atende aos critérios de instalabilidade de Progressive Web Apps. Você disse que quer impedir que a minibarra de informações apareça e oferecer sua própria promoção de instalação.
A partir do Chrome 76, chamar preventDefault()
no evento beforeinstallprompt
impede a minibarra de informações de aparecer.
window.addEventListener('beforeinstallprompt', (e) => {
// Don't show mini-infobar
e.preventDefault();
// Stash the event so it can be triggered later.
deferredPrompt = e;
// Update UI to promote PWA installation
pwaInstallAvailable(true);
});
Atualize a interface para informar aos usuários que o PWA pode ser instalado. Confira os Padrões para promover a instalação de PWAs para conferir nossas práticas recomendadas para promover a instalação de apps da Web progressivos.
Atualizações mais rápidas para WebAPKs
Quando um Progressive Web App é instalado no Android, o Chrome solicita e instala automaticamente um APK da Web. Depois da instalação, o Chrome verifica periodicamente se o manifesto do app da Web mudou, talvez você tenha atualizado os ícones, as cores ou o nome do app, para saber se um novo WebAPK é necessário.
A partir do Chrome 76, o Chrome vai verificar o manifesto com mais frequência, a cada dia, em vez de a cada três dias. Se alguma das propriedades principais tiver mudado, o Chrome vai solicitar e instalar um novo WebAPK, garantindo que o título, os ícones e outras propriedades estejam atualizados.
Consulte Como atualizar WebAPKs com mais frequência para saber mais.
Modo escuro
Muitos sistemas operacionais agora oferecem suporte a um modo escuro ou tema escuro.
A consulta de mídia prefers-color-scheme
permite ajustar a aparência
do seu site para corresponder ao modo preferido do usuário.
@media (prefers-color-scheme: dark) {
body {
background-color: black;
color: white;
}
}
Tom escreveu um ótimo artigo Hello darkness, my old friend no web.dev com tudo o que você precisa saber, além de dicas para projetar suas folhas de estilo para oferecer suporte a um modo claro e escuro.
E muito mais.
Estas são apenas algumas das mudanças no Chrome 76 para desenvolvedores. Há muitas outras.
Promise.allSettled()
Pessoalmente, estou muito animado com Promise.allSettled()
. Ele é semelhante a
Promise.all()
, exceto que ele aguarda até que todas as promessas sejam resolvidas antes de
retornar.
const promises = [
fetch('/api-call-1'),
fetch('/api-call-2'),
fetch('/api-call-3'),
];
// Imagine some of these requests fail, and some succeed.
await Promise.allSettled(promises);
// All API calls have finished (either failed or succeeded).
A leitura de blobs ficou mais fácil
Os Blob
s são mais fáceis de ler com três novos métodos: text()
, arrayBuffer()
e stream()
. Isso significa que não precisamos mais criar um wrapper em torno do leitor
de arquivos.
// New easier way
const text = await blob.text();
const aBuff = await blob.arrayBuffer();
const stream = await blob.stream();
// Old, wrapped reader
return new Promise((resolve) => {
const reader = new FileReader();
reader.addEventListener('loadend', (e) => {
const text = e.srcElement.result;
resolve(text);
});
reader.readAsText(file);
});
Suporte a imagens na API Async Clipboard
Também adicionamos suporte a imagens à API Clipboard assíncrona, facilitando a cópia e a colagem de imagens por programação.
Leitura adicional
Este artigo aborda apenas alguns dos principais destaques. Confira os links abaixo para ver outras mudanças no Chrome 76.
- Novidades do Chrome DevTools (76)
- Remoção e descontinuação de recursos do Chrome 76
- Atualizações do ChromeStatus.com para o Chrome 76
- Novidades do JavaScript no Chrome 76
- Lista de mudanças no repositório de origem do Chromium
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 77 for lançado, vou estar aqui para contar as novidades do Chrome.