Выпуск KWinFT 5.20 и kwin-lowlatency 5.20, форков оконного менеджера KWin

Представлен новый выпуск KWinFT 5.20 (KWin Fast Track), композитного оконного менеджера для Wayland и X11, основанного на кодовой базе KWin. Одновременно сформирован новый выпуск библиотеки Wrapland 0.52 с реализацией обвязки над libwayland для Qt/C++, продолжающей развитие KWayland, но избавленной от привязки к Qt и доступной для использования отдельно без установки Qt. Код KWinFT и Wrapland распространяется под лицензиями GPLv2 и LGPLv2. KWinFT и Wrapland нацелены на рефакторинг и переработку KWin и KWayland с использованием современных технологий и могут использоваться для их прозрачной замены. Готовые пакеты сформированы для пользователей Manjaro, Fedora и Arch Linux (AUR).

Из особенностей KWinFT можно отметить применение для стабилизации кода расширенного тестирования и системы непрерывной интеграции с проверкой при помощи разных linter. Развитие функциональности KWinFT сосредоточено на обеспечении качественной и полной поддержки протокола Wayland, в том числе переработке архитектурных особенностей KWin, усложняющих интеграцию с Wayland. В частности, в KWinFT переработан процесс композитинга, реализовано расширение протокола Wayland «viewporter«, предоставлена полная поддержка поворота и зеркального отражения вывода для сеансов на основе Wayland.

В новом выпуске кодовая база KWinFT синхронизирована с функциональностью KDE Plasma 5.20. Полностью переработана библиотека Disman, включающая функции для управления экраном. Переработка позволила использовать Disman для управления настройками экрана не только в сеанса KDE Plasma на базе KWinFT, но и при использовании штатного KWin, а также с композитными серверами Wayland на базе wlroots и с сеансами X11. Для настройки может применяться утилита dismanctl или графический интерфейс KDisplay. Disman является заменой libkscreen, а KDisplay заменой KScreen. Из особенностей KDisplay упоминается поддержка автоматического выбора наиболее оптимального видеорежима.

Одновременно опубликовано обновление проекта KWin-lowlatency 5.20, формирующего редакцию композитного менеджера KWin с патчами для увеличения отзывчивости интерфейса и исправления некоторых проблем, связанных со скоростью реакции на действия пользователя, таких как притормаживание ввода. Для предоставления защиты от появления разрывов при выводе (tearing) без негативного влияния на отзывчивость помимо DRM VBlank в KWin-lowlatency поддерживается использование glXWaitVideoSync, glFinish или NVIDIA VSync (изначально присутствующая в KWin защита от разрывов реализована с использованием таймера и может приводить к большим задержкам (до 50мс) вывода и, как следствие, к запаздыванию реакции при вводе). Новый выпуск KWin-lowlatency адаптирован для использования вместо штатного композитного менеджера в KDE Plasma 5.20.

Источник: http://www.opennet.ru/opennews/art.shtml?num=53901