Ieviests KWinFT, KWin dakša, kas koncentrējas uz Wayland

Romāns Gilgs, piedaloties izstrādājot KDE, Wayland, Xwayland un X Server, ieviesa projekts KWinFT (KWin Fast Track), izstrādājot elastīgu un viegli lietojamu saliktu logu pārvaldnieku Wayland un X11, pamatojoties uz kodu bāzi Kvins. Papildus logu pārvaldniekam projektā tiek attīstīta arī bibliotēka aptinums ar libwayland saistīšanas ieviešanu Qt/C++, turpinot attīstību Kveilenda, bet atbrīvots no saistību ar Qt. Kods tiek izplatīts saskaņā ar GPLv2 un LGPLv2 licencēm.

Projekta mērķis ir pārstrādāt KWin un KWayland, izmantojot
modernas tehnoloģijas un izstrādes prakse, kas ļauj paātrināt projekta izstrādi, pārveidot kodu, pievienot optimizācijas un vienkāršot fundamentālu jauninājumu pievienošanu, kuru integrēšana KWin pašreizējā formā ir sarežģīta. KWinFT un Wrapland var izmantot, lai nemanāmi aizstātu KWin un KWayland, taču tos neierobežo daudzu produktu KWin bloķēšana, kur pilnīgas saderības uzturēšana ir prioritāte, kas neļauj inovācijām virzīties uz priekšu.

Izmantojot KWinFT, izstrādātājiem ir brīvas rokas, lai eksperimentētu ar jaunām funkcijām, vienlaikus saglabājot stabilitāti, izmantojot modernākas izstrādes metodes. Piemēram, lai pārbaudītu KWinFT kodu, tiek izmantota nepārtrauktas integrācijas sistēma, kas ietver verifikāciju, izmantojot dažādus līkumus, automātisku mezglu ģenerēšanu un plašu testēšanu. Runājot par funkcionalitātes attīstību, KWinFT galvenā uzmanība tiks pievērsta kvalitatīva un pilnīga protokola atbalsta nodrošināšanai
Wayland, tostarp KWin arhitektūras elementu pārstrādāšana, kas sarežģī integrāciju ar Wayland.

Starp eksperimentālajiem jauninājumiem, kas jau ir pievienoti KWinFT, ir:

  • Kompozīcijas process ir pārstrādāts, kas ir ievērojami uzlabojis satura renderēšanu, kurā darbojas X11 un Wayland. Turklāt ir pievienots taimeris, lai samazinātu aizkavi starp attēla izveidi un tā parādīšanu ekrānā.
  • Ieviesa Wayland protokola paplašinājumu "skatlogs“, ļaujot klientam veikt servera puses mērogošanu un virsmas malu apgriešanu. Apvienojumā ar nākamo lielāko XWayland izlaidumu paplašinājums nodrošinās iespēju līdzināties vecāku spēļu ekrāna izšķirtspējas izmaiņām.
  • Pilns atbalsts rotējošai un spoguļattēlu izvadei Wayland sesijām.

Wrapland nodrošina Qt stila programmēšanas saskarni, kas nodrošina piekļuvi libwayland funkcijām C++ projektos viegli lietojamā formā. Sākotnēji Wrapland tika plānots izstrādāt kā KWayland dakšiņu, taču KWayland koda neapmierinošā stāvokļa dēļ tagad tas tiek uzskatīts par projektu KWayland pilnīgai kapitālremontam. Būtiskākā atšķirība starp Wrapland un KWayland ir tā, ka tā vairs nav saistīta ar Qt un to var izmantot atsevišķi, neinstalējot Qt. Nākotnē Wrapland varēs izmantot kā universālu bibliotēku ar C++ API, tādējādi izstrādātājiem vairs nebūs jāizmanto libwayland C API.

Manjaro Linux lietotājiem tiek izveidotas gatavas pakotnes. Lai izmantotu KWinFT, vienkārši instalējiet kwinft no repozitorija un, lai atgrieztos pie standarta KWin, instalējiet kwin pakotni. Wrapland lietošana neaprobežojas tikai ar KDE, piemēram, ir sagatavota klienta ieviešana lietošanai wlroots izvades kontroles protokols, kas ļauj izmantot saliktos serverus, kuru pamatā ir wlroots (šūpošanās, Ceļš) izmantojiet KScreen, lai pielāgotu izvadi.

Tikmēr Turpināt tiks publicēti projekta atjauninājumi KWin-lowlatency, veidojot KWin saliktā pārvaldnieka izdevumu ar ielāpiem, lai palielinātu interfeisa atsaucību un novērstu dažas problēmas, kas saistītas ar reakcijas ātrumu uz lietotāja darbībām, piemēram, ievades stostīšanās. Papildus DRM VBlank, KWin-lowlatency atbalsta glXWaitVideoSync, glFinish vai NVIDIA VSync izmantošanu, lai nodrošinātu aizsardzību pret plīsumiem, negatīvi neietekmējot reaģētspēju (KWin sākotnējā aizsardzība pret plīsumiem tiek ieviesta, izmantojot taimeri un var izraisīt lielu latentumu (līdz 50 ms) un līdz ar to atbildes aizkavēšanās ievades laikā). KDE Plasma 5.18 krājuma saliktā servera vietā var izmantot jaunas KWin-lowlatency versijas.

Avots: opennet.ru

Pievieno komentāru