Релиз web-браузера Chrome 69 с переработанным интерфейсом пользователя

Компания Google представила релиз web-браузера Chrome 69, который приурочен к празднованию десятилетия проекта и включает в себя несколько заметных новшеств, таких как обновлённый интерфейс пользователя, возможность настройки стартовой страницы и новый компилятор WebAssembly. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается использованием логотипов Google, возможностью загрузки модуля Flash по запросу, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого видеоконтента, системой автоматической установки обновлений и передачей при поиске RLZ-параметров.

Основные изменения в Chrome 69:

  • Предложен новый модернизированный интерфейс пользователя, оформленный в стиле Material Design и оптимизированный для устройств с сенсорными экранами (увеличенные отступы, скруглённое поле адресной строки, новая кнопка «+» для открытия вкладок, изменённая расцветка панелей и полей ввода). Переработка затронула практически все компоненты интерфейса, включая всплывающие предупреждения и систему управления загрузками;

  • Возможность настройки фона стартовой страницы, отображаемой при открытии новой вкладки. В правом нижнем углу страницы размещена кнопка в виде шестерёнки, при нажатии на которую можно выбрать фоновую картинку. Предоставлена готовая коллекция фоновых изображений, а также возможность загрузки своих картинок;

  • Список избранных ссылок на странице открытия новой вкладки теперь формируется с использованием пиктограмм сайтов (favicon), а не миниатюр со скриншотами страниц.

  • Добавлена возможность настройки состава избранных ссылок на странице открытия новой вкладки. Элементы теперь можно редактировать, добавлять и удалять;

  • В списке рекомендаций, показываемом при вводе в адресной строке, предоставлена возможность быстрого перехода к уже открытым вкладкам, если их содержимое соответствует запросу, заданному пользователем. Например, при наборе адреса сайта, уже открытого в другой вкладке, рядом с рекомендацией появится кнопка для перехода к этой вкладке вместо открытия новой;

  • В адресной строке добавлена поддержка вывода ответов на вопросы на естественном языке. В том числе при помощи новой системы рекомендаций можно сразу получать данные о прогнозе погоды, переводить слова на иностранном языке, вычислять математические выражения, получать справку о известных людях и событиях;
  • Существенно переработан менеджер паролей. Добавлена возможность генерации надёжных паролей при заполнении регистрационных форм. Сгенерированные пароли автоматически сохраняются во встроенном менеджере паролей и могут синхронизироваться с другими устройствами пользователя, привязанными к текущей учётной записи в Google. Улучшена система автозаполнения форм. В меню управления входом добавлены элементы для быстрого перехода к настройкам автозаполнения форм, сохранённым паролям и методам проведения платежей;

  • Воплощён в жизнь второй этап изменения индикации безопасности соединения. Для HTTPS теперь не показывается зелёная надпись «Secure», так как HTTP помечается небезопасным и нет смысла отдельно помечать HTTPS индикатором безопасного соединения. В октябрьском выпуске Chrome 70 будет убран и значок с изображением замка для HTTPS, а цвет надписи «Not Secure» для соединений HTTP будет заменён с серого на красный.

  • Добавлена возможность просмотра видео в режиме «картинка в картинке» (PIP API, Picture in Picture), позволяющем отсоединить видео в форме плавающего окна, которое остаётся на виду в процессе навигации в браузере;
  • Добавлен экспериментальный эффект размытия курсора мыши при движении (видео). Для включения эффекта можно использовать настройку «chrome://flags/#ash-enable-cursor-motion-blur»;
  • Прекращено сохранение настроек, задаваемых сайтами при помощи Flash. Подобные настройки теперь не сохраняются между сеансами;
  • При установке в окружении Android 8.0+ на устройствах с 1 Гб ОЗУ Chrome теперь регистрируется как обработчик для воспроизведения мультимедийных файлов;
  • Существенно переработана версия Chrome для платформы iOS: Добавлена новая нижняя панель, предоставляющая быстрый доступ к наиболее часто вызываемым функциям. Переработана страница открытия новой вкладки, на которой теперь представлены часто используемые закладки и списки чтения. Улучшена работа режима инкогнито, обзора недавно закрытых вкладок, интерфейса для просмотра истории посещений и списков чтения. Предложен новый интерфейс переключения между вкладками, отображающий открытые вкладки в виде сетки и позволяющий открыть вкладки в том числе на других устройствах.

  • Реализован режим выделения текста по границе графем в лигатуре (если символ образован соединением нескольких графем);

  • Добавлена экспериментальная поддержка видеокодека AV1, разработанного альянсом Open Media (AOMedia), в котором представлены такие компании, как Mozilla, Google, Microsoft, Intel, ARM, NVIDIA, IBM, Cisco, Amazon, Netflix, AMD, VideoLAN, CCN и Realtek. AV1 позиционируется как общедоступный и не требующий оплаты отчислений свободный формат кодирования видео, который заметно опережает H.264 и VP9 по уровню сжатия. Для включения поддержки AV1 следует активировать опцию «chrome://flags/#enable-av1-decoder»;

Изменения для web-разработчиков:

  • Добавлено CSS-свойство conic-gradient для создания конусообразных градиентов, в которых изменение цвета производится вокруг центра, а не от центра к краю, что позволяет создавать эффекты в виде колеса меняющихся оттенков;
  • Добавлены расширенные варианты CSS-свойств margin, padding и border, задаваемые в формате margin|padding-{block,inline}-{start,end} и border-{block,inline}-{start,end}-{width,style,color}, например, «padding-inline-end: 10px;» или «border-block-start-style: dotted;». Ранее данные свойства не были стандартизированы и тестировались с префиксом «-webkit»;
  • Добавлена серия CSS-свойств scroll-snap-*, позволяющих управлять точкой остановки ползунка при прокрутке и выравниванием сдвигаемого содержимого. Например, можно настроить прокрутку со сдвигом по границам изображения или с центрированием картинки;
  • Представлена новая CSS-функция env() и meta-тег viewport-fit, которые позволяют использовать всё экранное пространство на устройствах с безрамочными экранами, содержащими неотображаемые области (например, закругление экрана и островок для фронтальной камеры, громкоговорителя и сенсоров);
  • Добавлен API OffscreenCanvas, позволяющий в отдельном потоке предварительно отрисовывать в буфер canvas-изображения (2D и WebGL) для их последующего использования в Worker-ах;
  • В DOM реализован новый метод Element.toggleAttribute(), позволяющий инвертировать существование атрибута элемента (создать если нет и удалить если есть) по аналогии с Element.classList.toggle;
  • В Fetch API добавлено свойство Request.isHistoryNavigation, дающее возможность узнать, связан ли выполняемый запрос с повторным отображением страницы при нажатии кнопок вперёд или назад;
  • Добавлен API ReportingObserver, позволяющий определить обработчик для генерации отчёта, вызываемый при обращении к устаревшим возможностям. Сгенерированный отчёт по выбору пользователя может быть сохранён, отправлен на сервер или обработан скриптом на JavaScript;
  • В реализацию JavaScript-массивов добавлено два метода: Array.prototype.flat() — возвращает новый массив с развёрнутым содержимым вложенных массивов; Array.prototype.flatMap() для создания нового массива, в котором каждый элемент сопоставлен при помощи заданной функции;
  • Добавлен API Web Locks для получения блокировок в асинхронном режиме, из закрепления за собой и освобождения после завершения необходимой работы с совместно используемым ресурсом. Пока один процесс удерживает блокировку, другие процессы ожидают её освобождения без остановки выполнения;
  • Добавлен API Keyboard Map для создания раскладок нажатий клавиш, позволяющий определить какой код символа (KeyboardEvent.code) возвращать при нажатии той или иной физической клавиши;
  • API Web Authentication добавлена поддержка устройств CTAP2, что позволяет применять для аутентификации на сайтах биометрические датчики и подключаемые хранилища ключей;
  • Добавлена возможность передачи клиентом подсказок (hint) «rtt», «downlink» и «ect» в составе HTTP-запроса, помогающих оценить на сервере качество канала связи с клиентом. Например, через rtt передаются сведения о задержке получения ответа (round-trip) для текущего соединения, что может быть использовано для отдачи урезанных изображений при медленном соединении;
  • Добавлен метод encryptionScheme, через который можно проверить поддерживается ли в текущей реализации Encrypted Media Extensions (EME) указанная схема шифрования;
  • Добавлена экспериментальная опция «chrome://flags/#omnibox-ui-hide-steady-state-url-scheme-and-subdomains», осуществляющая скрытие названия протокола и типовых поддоменов в запросе. Например, вместо «https://www.google.com/» при включении опции будет показано «google.com», а вместо «https://m.facebook.com» — «facebook.com»;
  • В JavaScript-движке V8 активирован новый начальный (baseline) компилятор Liftoff для WebAssembly. Ключевое отличие Liftoff от ранее применяемого компилятора TurboFan в том, что Liftoff нацелен на достижение наибольшей скорости начальной компиляции, ценой низкой производительности генерируемого кода. Liftoff значительно проще TurboFan и генерирует готовый для запуска машинный код очень быстро, что позволяет почти сразу приступить к его выполнению, сведя задержку от компиляции к минимуму. Для ускорения чернового кода параллельно запускается фаза оптимизирующей перекомпиляции, которая выполняется с использованием компилятора Turbofan. После готовности оптимизированых машинных инструкций, начальный черновой вариант заменяется на более быстрый код. В сумме, за счёт снижения задержки перед началом выполнения, применение Liftoff привело к увеличению производительности тестового набора WebAssembly примерно на 20%.

Кроме нововведений и исправления ошибок в новой версии устранено 40 уязвимостей. Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Критических проблем, которые позволяют обойти все уровни защиты браузера и выполнить код в системе, за пределами sandbox-окружения, не выявлено. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google выплатила 22 премии на сумму 29 тысяч долларов США (по одной премии в $5000, $4000 и $2500, три премии $3000, две премии $2000, три премии $1000 и три премии $500). Размер 8 вознаграждений пока не определён.

Релиз web-браузера Chrome 69 с переработанным интерфейсом пользователя: Один комментарий

  1. Этот новый интерфейс доказывает, что новое — не всегда лучшее.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.