Релиз Chrome 147 с поддержкой вертикальных вкладок и переделанным режимом чтения

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 1275
Зарегистрирован: 20.08.2022

#

Релиз Chrome 147 с поддержкой вертикальных вкладок и переделанным режимом чтения
Дата публикации:Thu, 09 Apr 2026 14:02:03 +0300

Компания Google опубликовала релиз web-браузера Chrome 147. Одновременно доступен стабильный выпуск свободного проекта Chromium, выступающего основой Chrome. Браузер Chrome отличается от Chromium использованием логотипов Google, наличием системы отправки уведомлений в случае краха, модулями для воспроизведения защищённого от копирования видеоконтента (DRM), системой автоматической установки обновлений, постоянным включением Sandbox-изоляции, поставкой ключей к Google API и передачей RLZ-параметров при поиске. Для тех, кому необходимо больше времени на обновление, отдельно поддерживается ветка Extended Stable, сопровождаемая 8 недель. Следующий выпуск Chrome 148 запланирован на 5 мая.
Основные изменения в Chrome 147 (1, 2, 3, 4):
  • Добавлен режим вертикального отображения вкладок, заменяющий верхнюю горизонтальную панель с кнопками вкладок на боковую панель с вертикальными вкладками. Вертикальные вкладки могут показываться в развёрнутом (пиктограмма + часть описания) и свёрнутом режимах (только пиктограммы). При наведения курсора на боковую вкладку показывается эскиз с её содержимым. Упрощено управление группами вкладок. В контекстное меню, появляющееся при клике правой кнопкой мыши на строке вкладок, добавлена опция "Показать вкладки вертикально" ("Show Tabs Vertically"). Если опция не появилась по умолчанию, её можно активировать через настройку "chrome://flags/#vertical-tabs".
    Изображение
    Изображение
    Переработан режим чтения (reading mode), при котором отображается только значимый текст страницы, а все сопутствующие управляющие элементы, баннеры, меню, навигационные панели и прочие не связанные с контентом части страницы скрываются. В новой версии по аналогии с Firefox значимое содержимое показывается во всей видимой области, а не как раньше в узком боковом окне рядом с исходной страницей. Если новый режим не применяется по умолчанию, его можно активировать через настройку "chrome://flags/#read-anything-immersive-reading-mode".
    Изображение
    В меню "Help" добавлена кнопка для отправки жалобы для занесения в список блокировки web-страниц, созданных для мошенничества или фишинга. Кнопка показывается при включённом режиме "Safe Browsing".
    Изображение
    Расширены средства защиты от обращения к локальной системе при взаимодействии с публичными сайтами. Обращения с сайтов к IP-адресам локальной сети (интранет или внутренние адреса) или loopback-интерфейсу (127.0.0.0/8) потребует подтверждения операции у пользователя. Под действие защиты теперь попадают не только попытки загрузки ресурсов по HTTP/HTTPS, запросы fetch() и iframe-вставки, но и установка соединений через WebSockets и WebTransport, а также fetch-запросы, инициированные через метод WindowClient.navigate(). Обращение к внутренним ресурсам используются злоумышленниками для косвенной идентификации и осуществления CSRF-атак на маршрутизаторы, точки доступа, принтеры, корпоративные web-интерфейсы и другие устройства и сервисы, принимающие запросы только из локальной сети. Функциональность для разбора XML переведена c libxml2 на новую библиотеку, написанную на языке Rust с оглядкой на обеспечение безопасности. Изменение касается только XML, как было объявлено ранее поддержка XSLT скоро будет прекращена. Реализована возможность применения метода startViewTransition() не только для всей страницы, но и для отдельных HTML-элементов. Добавлена CSS-функция contrast-color(), возвращающая противоположный вариант для указанного цвета (для белого вернёт чёрный, а для чёрного - белый). Функцию можно использовать для подбора цвета фона для определённого цвета текста и наоборот. Добавлено CSS-свойство "border-shape", позволяющего создавать непрямоугольное обрамление элементов, например, использовать рамки круглой или многоугольной формы. CSS-свойство "border-shape" принимает те же виды форм, что и свойство "clip-path", но в отличие от последнего определяет контур, декодирует его и отсекает выходящее за контур содержимое. Добавлен интерфейс CSSPseudoElement, позволяющий работать с псеведоэлементами CSS из JavaScript. В элементе link реализована возможность применения атрибута "rel=modulepreload" для упреждающей загрузки не только скриптов, но и модулей с CSS-стилями (<link rel="modulepreload" as="style" href="...">) и данными JSON (<link rel="modulepreload" as="json" href="...">). Изменено поведение при вычислении ширины рамок и контуров в CSS-свойствах border-width, outline-width и column-rule-width, которое унифицировано с Firefox и браузерами на движке WebKit. До сих пор ширина в указанных свойствах обнулялась, независимо от выставленных в них значений, если свойства border-style, outline-style или column-rule-style имели значение "none" или "hidden". Теперь значения order-width, outline-width и column-rule-width всегда выставляют заданные разработчиком значения, независимо от содержимого свойств "*-style". Добавлен метод Math.sumPrecise() для вычисления суммы элементов массивов и других перечисляемых объектов с точностью, превышающей точность обычного суммирования в цикле (исключаются потери точности при промежуточном сохранении результатов). Добавлен атрибут Request.isReloadNavigation, позволяющий определить, что страница была перезагружена, например, после нажатия на кнопку "Refresh" или вызова методов location.reload() и history.go(0). Для снижения точности косвенной идентификации изменена логика округления размера памяти, возвращаемого через API Device Memory, позволяющего получить сведения о размере оперативной памяти. Данная информация может оказаться полезной для создания легковесных вариантов web-приложений, загружающихся для устройств с небольшим ОЗУ или для активации расширенных возможностей при наличии большого объёма памяти. В сборках для платформы Android размер памяти теперь округляется до 1, 2, 4 и 8, а для других платформ до 2, 4, 8, 16 и 32. Для изолированных web-приложений (IWA - Isolated Web Apps) реализован API Web Printing, предоставляющий методы для определения наличия принтеров, отправки документов на печать и управления очередью вывода на печать. Используемые в API имена атрибутов и семантика соответствуют протоколу IPP (Internet Printing Protocol). В режиме "Origin trials" реализован API WebNN, позволяющий использовать предоставляемые операционной системой сервисы для машинного обучения и связанные с этим аппаратные возможности. Внесены улучшения в инструменты для web-разработчиков. Во встроенном AI-ассистенте реализован автоматический выбор контекста. Модернизирована панель "Device Mode", применяемая для тестирования работы сайта на разных мобильных устройствах. В панели Network обеспечено автоматическое декодирование сжатого содержимого запросов, переданных с заголовком Content-Encoding: gzip или deflate. Предоставлена возможность применения регулярных выражений для фильтрации CSS-стилей.
Кроме нововведений и исправления ошибок в новой версии устранено 60 уязвимостей. Многие из уязвимостей выявлены в результате автоматизированного тестирования инструментами AddressSanitizer, MemorySanitizer, Control Flow Integrity, LibFuzzer и AFL. Двум проблемам (переполнение буфера и целочисленное переполнение в WebML) присвоен критический уровень опасности, подразумевающий, что уязвимости позволяют обойти все уровни защиты браузера и выполнить код в системе за пределами sandbox-окружения. В рамках программы по выплате денежного вознаграждения за обнаружение уязвимостей для текущего релиза компания Google учредила 60 премий и выплатила 118 тысяч долларов США (две премии $43000, две премии $11000 и по одной премии в $4000, $3000, $2000 и $1000. Размер 52 вознаграждений пока не определён.

Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=65166

Жизнь за Нер'зула!

Ответить