O Chrome 79 está sendo lançado agora!
- Os Progressive Web Apps instalados no Android agora oferecem suporte a ícones mascarados.
- Agora você pode criar experiências imersivas com a API WebXR Device.
- A API Wake Lock está disponível como um teste de origem.
- O atributo
rendersubtree
está disponível como um teste de origem. - Os vídeos da conferência de desenvolvedores do Chrome já estão on-line.
- E muito mais.
Meu nome é Pete LePage. Vamos nos aprofundar e ver as novidades para desenvolvedores no Chrome 79.
Ícones mascaráveis
Se você estiver usando o Android O ou uma versão mais recente e tiver instalado um app da Web progressiva, provavelmente notou o círculo branco irritante ao redor do ícone.
Felizmente, o Chrome 79 agora oferece suporte a ícones com máscara para apps da Web progressivos instalados.Você precisa projetar seu ícone para caber na zona segura, essencialmente um círculo com um diâmetro de 80% da tela.
Em seguida, no manifesto do app da Web, será necessário adicionar uma nova propriedade purpose
ao
ícone e definir o valor como maskable
.
{
...
"icons": [
...
{
"src": "path/to/maskable_icon.png",
"sizes": "196x196",
"type": "image/png",
"purpose": "maskable"
]
...
}
Tiger Oakes tem um ótimo post no CSS Tricks: Maskable Icons: Android Adaptive Icons for Your PWA (em inglês) com todos os detalhes e uma ótima ferramenta para testar os ícones e garantir que eles se encaixem.
Web XR
Agora você pode criar experiências imersivas para smartphones e telas montadas na cabeça com a API WebXR Device.
O WebXR possibilita um espectro completo de experiências imersivas. Desde o uso da realidade aumentada para conferir como um novo sofá ficaria na sua casa antes de comprar até jogos de realidade virtual e filmes em 360 graus, entre outros.
Para começar a usar a nova API, leia A realidade virtual chegou à Web.
Novos testes de origem
Os testes de origem oferecem uma oportunidade para validar recursos e APIs experimentais e permitir que você envie feedback sobre a usabilidade e eficácia deles em uma implantação mais ampla.
Os recursos experimentais geralmente só estão disponíveis com uma flag, mas, quando oferecemos um teste de origem para um recurso, você pode se inscrever nesse teste para ativar o recurso para todos os usuários na sua origem.
Ao ativar um teste de origem, você pode criar demonstrações e protótipos que os usuários de testes Beta podem testar durante o período do teste sem precisar ativar nenhuma flag especial no Chrome.
Confira mais informações sobre testes de origem no Guia de testes de origem para desenvolvedores da Web. Você pode conferir uma lista de testes de origem ativos e se inscrever na página Testes de origem do Chrome.
Wake lock
Uma das coisas que mais me irritam no Google Slides é que, se você deixar a apresentação aberta em uma única página por muito tempo, o protetor de tela é ativado. Antes de continuar, você precisa desbloquear o computador. Aff.
No entanto, com a nova API Wake Lock, uma página pode solicitar um bloqueio e impedir que a tela escureça ou que o protetor de tela seja ativado. Ele é perfeito para slides, mas também é útil para sites de receitas, em que você pode deixar a tela ligada enquanto segue as instruções.
Para solicitar um bloqueio de ativação, chame navigator.wakeLock.request()
e
salve o objeto WakeLockSentinel
retornado.
// The wake lock sentinel.
let wakeLock = null;
// Function that attempts to request a wake lock.
const requestWakeLock = async () => {
try {
wakeLock = await navigator.wakeLock.request('screen');
wakeLock.addEventListener('release', () => {
console.log('Wake Lock was released');
});
console.log('Wake Lock is active');
} catch (err) {
console.error(`${err.name}, ${err.message}`);
}
};
O bloqueio é mantido até que o usuário saia da página ou até que você chame
release
no objeto WakeLockSentinel
salvo anteriormente.
// Function that attempts to release the wake lock.
const releaseWakeLock = async () => {
if (!wakeLock) {
return;
}
try {
await wakeLock.release();
wakeLock = null;
} catch (err) {
console.error(`${err.name}, ${err.message}`);
}
};
Confira mais detalhes em web.dev/wakelock.
rendersubtree
atributo
Há momentos em que você não quer que parte do DOM seja renderizada imediatamente. Por exemplo, roladores com uma grande quantidade de conteúdo ou interfaces com guias em que apenas parte do conteúdo fica visível.
O novo atributo rendersubtree
informa ao navegador que pode pular a renderização dessa
subárvore. Isso permite que o navegador passe mais tempo processando o restante da
página, aumentando o desempenho.
Quando rendersubtree
é definido como invisible
, o conteúdo do elemento não é
exibido nem testado, permitindo otimizações de renderização.
A mudança de rendersubtree
para activatable
torna o conteúdo visível
removendo o atributo invisible
e renderizando o conteúdo.
Chrome Dev Summit 2019
Se você perdeu o Chrome Dev Summit, todas as palestras estão no nosso canal do YouTube.
Jake também tem uma ótima linha do tempo no Twitter com todas as coisas divertidas que aconteceram entre as palestras, incluindo o novo membro da nossa equipe, Surjiko.
Leitura adicional
Isso abrange apenas alguns dos principais destaques. Confira os links abaixo para ver outras mudanças no Chrome 78.
- Novidades do Chrome DevTools (79)
- Remoção e descontinuação de recursos do Chrome 79
- Atualizações do ChromeStatus.com para o Chrome 79
- Novidades do JavaScript no Chrome 79
- 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 80 for lançado, vou estar aqui para contar as novidades do Chrome.