Cyflwynodd KWinFT, fforch o KWin sy'n canolbwyntio ar Wayland

Gilg Rufeinig, cymryd rhan wrth ddatblygu KDE, Wayland, Xwayland ac X Server, cyflwyno y prosiect KWinFT (KWin Fast Track), datblygu rheolwr ffenestri cyfansawdd hyblyg a hawdd ei ddefnyddio ar gyfer Wayland ac X11 yn seiliedig ar y cod sylfaen Kwin. Yn ogystal â'r rheolwr ffenestri, mae'r prosiect hefyd yn datblygu llyfrgell gwledd gyda gweithrediad rhwymol dros libwayland ar gyfer Qt/C++, datblygiad parhaus KWayland, ond yn rhydd rhag rhwymiad i Qt. Mae'r cod yn cael ei ddosbarthu o dan drwyddedau GPLv2 a LGPLv2.

Nod y prosiect yw ailgylchu KWin a KWayland gan ddefnyddio
technolegau modern ac arferion datblygu sy'n eich galluogi i gyflymu datblygiad y prosiect, ail-ffactorio'r cod, ychwanegu optimeiddiadau a symleiddio ychwanegu arloesiadau sylfaenol, y mae'n anodd eu hintegreiddio i KWin yn ei ffurf bresennol. Gellir defnyddio KWinFT a Wrapland i ddisodli KWin a KWayland yn ddi-dor, ond nid ydynt wedi'u cyfyngu gan gloi KWin llawer o gynhyrchion lle mae cynnal cydnawsedd llawn yn flaenoriaeth sy'n atal arloesedd rhag symud ymlaen.

Gyda KWinFT, mae gan ddatblygwyr law rhydd i arbrofi gyda nodweddion newydd tra'n cynnal sefydlogrwydd trwy ddefnyddio technegau datblygu mwy modern. Er enghraifft, i wirio'r cod KWinFT, defnyddir system integreiddio barhaus, gan gynnwys dilysu gan ddefnyddio gwahanol linters, cynhyrchu gwasanaethau yn awtomatig a phrofion uwch. O ran datblygu swyddogaethau, bydd prif ffocws KWinFT ar ddarparu cymorth protocol cyflawn o ansawdd uchel
Wayland, gan gynnwys ail-weithio nodweddion pensaernïol KWin sy'n cymhlethu integreiddio â Wayland.

Ymhlith yr arloesiadau arbrofol sydd eisoes wedi'u hychwanegu at KWinFT mae:

  • Mae'r broses gyfansoddi wedi'i hailweithio, sydd wedi gwella'n sylweddol y broses o rendro cynnwys sy'n rhedeg X11 a Wayland. Yn ogystal, mae amserydd wedi'i ychwanegu i leihau'r oedi rhwng creu delwedd a'i harddangos ar y sgrin.
  • Wedi gweithredu estyniad i brotocol Wayland "gwyliwr“, gan ganiatáu i'r cleient berfformio graddio ochr y gweinydd a thocio ymylon arwyneb. Ar y cyd â datganiad mawr nesaf XWayland, bydd yr estyniad yn darparu'r gallu i efelychu newidiadau cydraniad sgrin ar gyfer gemau hŷn.
  • Cefnogaeth lawn ar gyfer cylchdroi ac adlewyrchu allbwn ar gyfer sesiynau yn Wayland.

Mae Wrapland yn darparu rhyngwyneb rhaglennu arddull Qt sy'n darparu mynediad i swyddogaethau libwayland ar ffurf sy'n hawdd ei defnyddio mewn prosiectau C ++. Yn wreiddiol, cynlluniwyd i ddatblygu Wrapland fel fforch o KWayland, ond oherwydd cyflwr anfoddhaol cod KWayland, mae bellach yn cael ei ystyried fel prosiect i ailwampio KWayland yn llwyr. Y gwahaniaeth pwysicaf rhwng Wrapland a KWayland yw nad yw bellach yn gysylltiedig â Qt a gellir ei ddefnyddio ar wahân heb osod Qt. Yn y dyfodol, gellir defnyddio Wrapland fel llyfrgell gyffredinol gydag API C ++, gan ddileu'r angen i ddatblygwyr ddefnyddio API libwayland C.

Mae pecynnau parod yn cael eu creu ar gyfer defnyddwyr Manjaro Linux. I ddefnyddio KWinFT, gosodwch kwinft o'r ystorfa, ac i rolio'n ôl i KWin safonol, gosodwch y pecyn kwin. Nid yw'r defnydd o Wrapland wedi'i gyfyngu i KDE, er enghraifft, mae gweithrediad cleient wedi'i baratoi i'w ddefnyddio yn wlroots protocol rheoli allbwn, gan ganiatáu gweinyddwyr cyfansawdd yn seiliedig ar wlroots (Sway, Wayfire) defnyddio KSscreen i addasu'r allbwn.

Yn y cyfamser parhau bydd diweddariadau prosiect yn cael eu cyhoeddi KWin-lowlatency, gan ffurfio rhifyn o reolwr cyfansawdd KWin gyda chlytiau i gynyddu ymatebolrwydd y rhyngwyneb a thrwsio rhai problemau sy'n gysylltiedig â chyflymder ymateb i gamau gweithredu defnyddwyr, megis stuttering mewnbwn. Yn ogystal â DRM VBlank, mae KWin-lowlatency yn cefnogi'r defnydd o glXWaitVideoSync, glFinish neu NVIDIA VSync i ddarparu amddiffyniad rhag rhwygo heb effeithio'n negyddol ar ymatebolrwydd (mae amddiffyniad rhwygo gwreiddiol KWin yn cael ei weithredu gan ddefnyddio amserydd a gall arwain at allbwn hwyrni mawr (hyd at 50ms) ac, o ganlyniad, oedi yn yr ymateb wrth fewnbynnu). Gellir defnyddio datganiadau newydd o KWin-lowlatency yn lle'r gweinydd cyfansawdd stoc yn KDE Plasma 5.18.

Ffynhonnell: opennet.ru

Ychwanegu sylw