В Chrome 76 мы добавили поддержку:
-  медиа-запрос 
prefers-color-scheme, позволяющий использовать темный режим на веб-сайтах. - Кнопка установки в омнибоксе для упрощения установки Progressive Web Apps на настольный компьютер.
 - Предотвращение появления мини-информационной панели в прогрессивных веб-приложениях на мобильных устройствах.
 - Более частые обновления WebAPK .
 - И многое другое .
 
Меня зовут Пит ЛеПейдж . Давайте углубимся в детали и посмотрим, что нового появилось в Chrome 76 для разработчиков!
Кнопка установки PWA Omnibox
В Chrome 76 мы упрощаем для пользователей установку прогрессивных веб-приложений на рабочий стол, добавляя кнопку установки в адресную строку, иногда называемую омнибоксом.
 Если ваш сайт соответствует критериям установки Progressive Web App , Chrome отобразит кнопку установки в омнибоксе, сообщая пользователю, что ваш PWA может быть установлен. Если пользователь нажимает кнопку установки, это по сути то же самое, что и вызов prompt() для события beforeinstallprompt ; он отображает диалоговое окно установки, что упрощает установку вашего PWA для пользователя.
Подробную информацию см. в разделе Установка адресной строки для прогрессивных веб-приложений на рабочем столе .
Больше контроля над мини-информационной панелью PWA

На мобильных устройствах Chrome показывает мини-информационную панель при первом посещении пользователем вашего сайта, если он соответствует критериям установки Progressive Web App . Мы слышали от вас, что вы хотите иметь возможность предотвратить появление мини-информационной панели и вместо этого предоставить собственную рекламную установку.
 Начиная с Chrome 76, вызов preventDefault() для события beforeinstallprompt остановит появление мини-информационной панели.
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);
});
Обязательно обновите свой пользовательский интерфейс, чтобы пользователи знали, что ваш PWA может быть установлен. Ознакомьтесь с Шаблонами для продвижения установки PWA, чтобы ознакомиться с нашими рекомендациями по продвижению установки ваших прогрессивных веб-приложений.
Более быстрые обновления WebAPK
Когда Progressive Web App устанавливается на Android, Chrome автоматически запрашивает и устанавливает Web APK . После установки Chrome периодически проверяет, изменился ли манифест веб-приложения, возможно, вы обновили значки, цвета или изменили имя приложения, чтобы узнать, требуется ли новый WebAPK.
Начиная с Chrome 76, Chrome будет проверять манифест чаще; каждый день, а не каждые три дня. Если какие-либо из ключевых свойств изменились, Chrome запросит и установит новый WebAPK, гарантируя актуальность заголовка, значков и других свойств.
Подробную информацию см. в разделе Более частое обновление WebAPK .
Темный режим
Многие операционные системы теперь поддерживают темный режим или темную тему.
 Медиа-запрос prefers-color-scheme позволяет вам настроить внешний вид вашего сайта в соответствии с предпочтительным режимом пользователя.
@media (prefers-color-scheme: dark) {
  body {
    background-color: black;
    color: white;
  }
}
У Тома есть замечательная статья «Привет, тьма, мой старый друг» на web.dev, в которой есть все, что вам нужно знать, а также советы по архитектуре таблиц стилей для поддержки как светлого, так и темного режима.
И многое другое!
Это лишь некоторые из изменений в Chrome 76 для разработчиков, конечно, их гораздо больше.
 Promise.allSettled()
 Лично я в восторге от Promise.allSettled() . Он похож на Promise.all() , за исключением того, что он ждет, пока все обещания не будут выполнены, прежде чем возвращать значение.
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).
Читать капли стало проще
 Blob -объекты стало проще читать благодаря трем новым методам: text() , arrayBuffer() и stream() ; это значит, что нам больше не нужно создавать оболочку вокруг средства чтения файлов!
// 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);
});
Поддержка изображений в API асинхронного буфера обмена
Кроме того, мы добавили поддержку изображений в API асинхронного буфера обмена , что упрощает программное копирование и вставку изображений.
Дальнейшее чтение
Здесь рассмотрены лишь некоторые из основных моментов. Дополнительные изменения в Chrome 76 можно найти по ссылкам ниже.
- Что нового в Chrome DevTools (76)
 - Устаревание и удаление Chrome 76
 - Обновления ChromeStatus.com для Chrome 76
 - Что нового в JavaScript в Chrome 76
 - Список изменений в исходном репозитории Chromium
 
Подписаться
Хотите быть в курсе наших видео? Подпишитесь на наш канал Chrome Developers на YouTube , и вы будете получать уведомления по электронной почте каждый раз, когда мы выпускаем новое видео.
Меня зовут Пит ЛеПейдж, и как только выйдет Chrome 77, я сразу же расскажу вам, что нового в Chrome!