В современном вебе страницы часто содержат 3D-графику и сложную анимацию. Почему же интерфейс браузера со скучной анимацией и визуальными эффектами не должен следовать за трендами?
В последние годы значительно расширился спектр задач, с которыми может справляться браузер. Теперь это не только простой веб-обозреватель, но и инструмент для повышения продуктивности. Однако, интерфейс браузера почему-то данная эволюция не затрагивает. Команда Opera решила изменить это в новом браузере Opera One, получившим «Многопоточный компоновщик» (Multithreaded Compositor).
Версия для разработчиков с ранним доступом
Первое, что заметят пользователи Opera One — это обновленный пользовательский интерфейс с новыми функциями, такими как «острова вкладок» с автоматической группировкой вкладок, а также быструю и плавную анимацию.
«Острова вкладок» в новом Opera One – это инновационный подход к группировке открытых веб-страниц. Вкладки с похожим содержимым автоматически объединяются в "островки". Так, вкладки с информацией о ресторанах или различные документы Google сгруппируются в отдельные острова.
Каждый остров отделен вертикальной цветной линией. Нажав на неё, можно свернуть или развернуть группу вкладок, облегчая навигацию. Пользователи также могут самостоятельно создавать острова, добавляя нужные им вкладки, чтобы оптимизировать свой процесс работы в браузере.
Зачем нужны эти изменения? Команда Opera дала подробное объяснение.
Многопоточность в браузерах Chromium
Что означает фраза «Многопоточный компоновщик»? В части рендеринга браузера на основе Chromium есть основной поток и «поток-компоновщик» (compositor thread).
Основной поток отвечает за координацию и управление общим процессом рендеринга в браузере. Он интерпретирует код HTML, CSS и JavaScript, создает все состояния веб-страницы, обрабатывает вводимые пользователем данные и пользовательское взаимодействие, например клики и прокрутку, и связывается с поток-компоновщиком, чтобы помочь обновить то, что отображается на экране.
Поток-компоновщик отвечает за то, чтобы элементы, созданные основным потоком, отображались на экране. Сюда входят такие эффекты, как анимация и переходы.
Основной поток часто останавливается на короткое время (например, от десятков до сотен миллисекунд). Таким образом, поток-компоновщик берет то, что создал основной поток, и обеспечивает его отображение на экране, когда пользователь прокручивает страницу. Проще говоря, поток-компоновщик гарантирует, что работа пользователя останется гладкой, пока основной поток догоняет его.
Поток-компоновщик интерфейса браузера
В пользовательском интерфейсе браузера все устроено по-другому. Интерфейс браузера включает в себя все, что находится за пределами окна веб-сайта — адрес и панель поиска, кнопки, вкладки и др. Здесь есть только один поток, который должен выполнять все необходимые задачи, а также отрисовывать такие элементы с анимацией. По сути, все, что должно происходить в интерфейсе браузера, происходит в потоке пользовательского интерфейса. В результате вы получаете довольно скучную или заикающуюся анимацию.
Чтобы решить эту проблему, в Opera One представлен «многопоточный компоновщик». Разработчики внесли два существенных изменения:
- В интерфейсе реализован поток-компоновщик. Данное решение аналогично средству визуализации веб-страницы. Этот поток отвечает на анимацию на экране и помогает разгрузить поток пользовательского интерфейса. Таким образом, если поток интерфейса заблокирован, анимация не подвержена заиканиям или рывкам.
- Анимации используются на основе слоев. Они будут выполняться исключительно в потоке-компоновщика без какого-либо участия интерфейса, поэтому анимация может продолжать работать, даже когда поток интерфейса задерживается. В результате анимация будет плавнее и четче.
Данные улучшения гарантируют, что при использовании Opera One вы всегда будете наслаждаться плавной анимацией и лучшим пользовательским интерфейсом.
Обновления программ, что нового
• Исправления в Steam Beta: проблемы Wi-Fi на Steam Deck и сбои с видеокартами AMD Radeon на ПК
• Google тестирует функцию «ИИ Ответы» для приложения «Телефон»
• В Яндекс.Браузере появилась функция кешбэка в рублях в онлайн-магазинах
• В России начали блокировать сайты, которые используют шифрование ECH от Cloudflare
• HiSec Endpoint – бесплатный антивирус Huawei с ИИ-защитой для Windows
• Приложение NVIDIA обновилось до версии 11.0.1