Разработчики проекта Chromium сообщили о намерении перевести Chromе для Linux на кросс-платформенный графический стек Aura. Aura уже достаточно давно используется в Chrome OS и сборках Chromе для платформы Windows. На платформе Linux текущий фронтэнд на базе GTK+ будет заменён на Aura начиная с выпуска Chromе 35 и уже по умолчанию используется при сборке кода из ветки для разработчиков (trunk).
С практической стороны, использование единой унифицированной графической подсистемы и компонентов интерфейса пользователя позволит решить проблемы с одновременной реализацией новых возможностей для всех поддерживаемых в Chromе платформ. Ранее, часто возникали ситуации, когда функциональность в версии для Linux откладывалась или выпускалась с опозданием, так как её реализация приводила к дублированию работы и требовала создания разного кода для Linux и Windows.
Кроме того, переход на Aura позволит решить давно наблюдаемые проблемы с излишне высоким потреблением памяти GPU и производительностью рендеринга в Linux. В частности, при использовании Aura появится возможность применять один контекст OpenGL для целого окна, вместо использования одного контекста OpenGL для каждой вкладки, что позволит заметно сократить расходование ресурсов GPU. Так как переход на новый графический стек является существенным изменением, проект Chromium приглашает добровольцев для тестирования Aura с различными рабочими столами Linux. Поддержка Aura уже присутствует в unstable-сборках Chrome (sudo apt-get install google-chrome-unstable).
Aura берёт на себя функции оконного менеджера (Aura shell), работающего через собственный копозитный сервер, использующий доступные средства GPU для ускорения графических операций, и графического тулкита (Aura UI) для формирования элементов интерфейса, предоставляя собственный набор виджетов, диалоговых окон, элементов управления и обработчиков событий. Из подсистем нижележащего графического стека (X11, Cocooa или Windows) затрагивается только вывод поверх корневого окна. Кроме вывода через X11, уже доступны варианты прослойки Ozone, используемой для абстрагирования ввода и вывода в Aura, для работы поверх Wayland и Mir.
С практической стороны, использование единой унифицированной графической подсистемы и компонентов интерфейса пользователя позволит решить проблемы с одновременной реализацией новых возможностей для всех поддерживаемых в Chromе платформ. Ранее, часто возникали ситуации, когда функциональность в версии для Linux откладывалась или выпускалась с опозданием, так как её реализация приводила к дублированию работы и требовала создания разного кода для Linux и Windows.
Кроме того, переход на Aura позволит решить давно наблюдаемые проблемы с излишне высоким потреблением памяти GPU и производительностью рендеринга в Linux. В частности, при использовании Aura появится возможность применять один контекст OpenGL для целого окна, вместо использования одного контекста OpenGL для каждой вкладки, что позволит заметно сократить расходование ресурсов GPU. Так как переход на новый графический стек является существенным изменением, проект Chromium приглашает добровольцев для тестирования Aura с различными рабочими столами Linux. Поддержка Aura уже присутствует в unstable-сборках Chrome (sudo apt-get install google-chrome-unstable).
Aura берёт на себя функции оконного менеджера (Aura shell), работающего через собственный копозитный сервер, использующий доступные средства GPU для ускорения графических операций, и графического тулкита (Aura UI) для формирования элементов интерфейса, предоставляя собственный набор виджетов, диалоговых окон, элементов управления и обработчиков событий. Из подсистем нижележащего графического стека (X11, Cocooa или Windows) затрагивается только вывод поверх корневого окна. Кроме вывода через X11, уже доступны варианты прослойки Ozone, используемой для абстрагирования ввода и вывода в Aura, для работы поверх Wayland и Mir.