Wayland-ке бағытталған KWin-тің KWinFT шанышқысы ұсынылды

Роман Гилг, қатысу KDE, Wayland, Xwayland және X Server әзірлеуде, енгізілді жоба KWinFT (KWin Fast Track), кодтық база негізінде Wayland және X11 үшін икемді және қолдануға оңай композиттік терезе менеджерін әзірлеу Жеңу. Терезе менеджерінен басқа жоба кітапхананы да дамытады орама Qt/C++ үшін libwayland арқылы байланыстыруды жүзеге асырумен, дамуды жалғастыруда КВэйланд, бірақ Qt байланыстырудан босатылған. Код GPLv2 және LGPLv2 лицензиялары бойынша таратылады.

Жобаның мақсаты KWin және KWayland көмегімен қайта өңдеу болып табылады
жобаның дамуын жылдамдатуға, кодты қайта өңдеуге, оңтайландыруларды қосуға және іргелі инновацияларды қосуды жеңілдетуге мүмкіндік беретін заманауи технологиялар мен әзірлеу тәжірибелері, олардың қазіргі түрінде KWin-ге интеграциясы қиын. KWinFT және Wrapland KWin мен KWayland-ді біркелкі ауыстыру үшін пайдаланылуы мүмкін, бірақ олар толық үйлесімділікті сақтау инновацияның алға жылжуына кедергі болатын басымдық болып табылатын көптеген өнімдердің KWin құлыптауымен шектелмейді.

KWinFT көмегімен әзірлеушілер заманауи әзірлеу әдістерін қолдану арқылы тұрақтылықты сақтай отырып, жаңа мүмкіндіктермен тәжірибе жасауға еркін қол жеткізе алады. Мысалы, KWinFT кодын тексеру үшін әртүрлі линтерлерді пайдаланып тексеруді, жинақтарды автоматты түрде жасауды және кеңейтілген тестілеуді қамтитын үздіксіз интеграциялық жүйе қолданылады. Функционалдылықты дамыту тұрғысынан KWinFT-тің негізгі бағыты жоғары сапалы және толық хаттамалық қолдауды қамтамасыз етуге бағытталады.
Wayland, соның ішінде Wayland-пен интеграцияны қиындататын KWin архитектуралық мүмкіндіктерін қайта өңдеу.

KWinFT-ке қосылған эксперименттік инновациялар арасында:

  • Композициялау процесі қайта өңделді, ол X11 және Wayland жұмыс істейтін мазмұнды көрсетуді айтарлықтай жақсартты. Оған қоса, кескін жасау мен оны экранда көрсету арасындағы кідірістерді азайту үшін таймер қосылды.
  • Wayland хаттамасына кеңейту енгізілді »көруші«, клиентке серверлік масштабтауды және бетінің жиектерін кесуді орындауға мүмкіндік береді. XWayland-тің келесі негізгі шығарылымымен біріктірілген кеңейтім ескі ойындар үшін экран ажыратымдылығының өзгерістерін эмуляциялау мүмкіндігін береді.
  • Wayland негізіндегі сеанстар үшін шығысты айналдыруға және көшіруге толық қолдау көрсету.

Wrapland C++ жобаларында қолдануға оңай пішінде libwayland функцияларына қол жеткізуді қамтамасыз ететін Qt стиліндегі бағдарламалау интерфейсін ұсынады. Wrapland бастапқыда KWayland шанышқысы ретінде әзірленді деп жоспарланған, бірақ KWayland кодының қанағаттанарлықсыз күйіне байланысты қазір ол KWayland-ті толығымен жөндеу жобасы ретінде қарастырылуда. Wrapland пен KWayland арасындағы ең маңызды айырмашылық, ол енді Qt-ге байланысты емес және Qt орнатпай бөлек пайдалануға болады. Болашақта Wrapland C++ API интерфейсі бар әмбебап кітапхана ретінде пайдаланылуы мүмкін, бұл әзірлеушілердің libwayland C API пайдалану қажеттілігін болдырмайды.

Дайын пакеттер Manjaro Linux пайдаланушылары үшін жасалған. KWinFT пайдалану үшін репозиторийден kwinft орнатыңыз, ал стандартты KWin жүйесіне оралу үшін kwin бумасын орнатыңыз. Wrapland пайдалану тек KDE-мен шектелмейді, мысалы, клиенттің іске асыруы қолдану үшін дайындалған тамырлар wlroots негізіндегі композиттік серверлерге рұқсат беретін шығыс басқару протоколы (Қарсы, Ұшақ) шығысты теңшеу үшін KScreen пайдаланыңыз.

Сол уақытта, жалғастырыңыз жоба жаңартулары жарияланады KWin-төмен кідіріс, интерфейстің жауап беру қабілетін арттыру және енгізудегі кекіру сияқты пайдаланушы әрекеттеріне жауап беру жылдамдығымен байланысты кейбір мәселелерді шешу үшін патчтары бар KWin композиттік менеджерінің шығарылымын қалыптастыру. DRM VBlank-ке қоса, KWin-lowlatency жауап беру қабілетіне теріс әсер етпестен жыртылудан қорғауды қамтамасыз ету үшін glXWaitVideoSync, glFinish немесе NVIDIA VSync пайдалануды қолдайды (KWin-тің бастапқы жыртылудан қорғауы таймер арқылы жүзеге асырылады және үлкен кідірістерге әкелуі мүмкін (50 мс дейін шығыс)). және нәтижесінде енгізу кезінде жауаптың кешігуі). KWin-lowlatency жаңа шығарылымдарын KDE Plasma 5.18 жүйесіндегі қор құрамды серверінің орнына пайдалануға болады.

Ақпарат көзі: opennet.ru

пікір қалдыру