KWinFT, una furchetta di KWin focu annantu à Wayland, introduttu

Roman Gilg, participà in u sviluppu di KDE, Wayland, Xwayland è X Server, introduttu scrive KWinFT (KWin Fast Track), sviluppendu un gestore di finestra compostu flessibile è faciule d'utilizazione per Wayland è X11 basatu nantu à a basa di codice Kwin. In più di u gestore di finestra, u prugettu sviluppa ancu una biblioteca wrapland cù l'implementazione di un ligame nantu à libwayland per Qt/C++, u sviluppu cuntinuatu Kwayland, ma liberatu da u ligame à Qt. U codice hè distribuitu sottu licenze GPLv2 è LGPLv2.

U scopu di u prugettu hè di riciclà KWin è Kwayland usendu
tecnulugii muderni è pratiche di sviluppu chì permettenu di accelerà u sviluppu di u prugettu, refactor u codice, aghjunghje ottimisazioni è simplificà l'aghjunzione di innovazioni fundamentali, l'integrazione di quale in KWin in a so forma attuale hè difficiule. KWinFT è Wrapland ponu esse aduprati per rimpiazzà perfettamente KWin è KWayland, ma ùn sò micca limitati da u KWin lock-in di parechji prudutti induve mantene a cumpatibilità cumpleta hè una priorità chì impedisce à l'innuvazione di avanzà.

Cù KWinFT, i sviluppatori anu una manu libera per sperimentà novi funzioni mentre mantene a stabilità per l'usu di tecniche di sviluppu più muderni. Per esempiu, per verificà u codice KWinFT, un sistema di integrazione cuntinuu hè utilizatu, cumpresa a verificazione cù linters differenti, generazione automatica di assemblee è teste avanzate. In quantu à u sviluppu di e funziunalità, l'enfasi principale di KWinFT serà di furnisce un supportu di protokollu di alta qualità è cumpletu
Wayland, cumprese a rielaborazione di e caratteristiche architettoniche KWin chì complicanu l'integrazione cù Wayland.

Trà l'innuvazioni sperimentali digià aghjuntu à KWinFT sò:

  • U prucessu di cumpusizioni hè statu riformulatu, chì hà migliuratu significativamente u rendering di cuntenutu chì corre X11 è Wayland. Inoltre, un timer hè statu aghjuntu per minimizzà i ritardi trà a creazione di una maghjina è a so visualizazione nantu à u screnu.
  • Implementatu una estensione à u protocolu Wayland "visor", chì permette à u cliente di realizà a scala di u latu di u servitore è a tagliata di i bordi di a superficia. Cumminatu cù a prossima versione maiò di XWayland, l'estensione furnisce l'abilità di emulà i cambiamenti di risoluzione di u screnu per i ghjochi più vechji.
  • Supportu cumpletu per a rotazione è u mirroring output per e sessioni basate in Wayland.

Wrapland furnisce una interfaccia di prugrammazione in stile Qt chì furnisce l'accessu à e funzioni libwayland in una forma faciule d'utilizà in i prughjetti C++. Wrapland era urigginariamente prughjettatu per esse sviluppatu cum'è una furchetta di KWayland, ma per via di u statu insatisfactoriu di u codice KWayland, hè avà cunsideratu cum'è un prughjettu di rivisione cumpletamente KWayland. A diferenza più impurtante trà Wrapland è KWayland hè chì ùn hè più ligata à Qt è pò esse usatu separatamente senza installà Qt. In u futuru, Wrapland pò esse usatu cum'è una biblioteca universale cù una API C++, eliminendu a necessità per i sviluppatori di utilizà l'API C di libwayland.

I pacchetti pronti sò creati per l'utilizatori di Manjaro Linux. Per utilizà KWinFT, basta à stallà kwinft da u repository, è per rinvià à KWin standard, installate u pacchettu kwin. L'usu di Wrapland ùn hè micca limitatu à KDE, per esempiu, una implementazione di u cliente hè stata preparata per l'usu in wlroots protokollu di cuntrollu di output, chì permette in i servitori cumposti basati in wlroots (Sway, Wayfire) utilizate KScreen per persunalizà l'output.

Intantu, cuntinuà l'aghjurnamenti di u prugettu seranu publicati KWin-bassa latenza, chì formanu una edizione di u manager compostu KWin cù patches per aumentà a rispunsibilità di l'interfaccia è risolve alcuni prublemi assuciati cù a rapidità di risposta à l'azzioni di l'utilizatori, cum'è stuttering input. In più di DRM VBlank, KWin-lowlatency supporta l'usu di glXWaitVideoSync, glFinish o NVIDIA VSync per furnisce una prutezzione contru a lacrime senza avè un impattu negativu in a reattività (a prutezzione di lacrime originale di KWin hè implementata cù un timer è pò purtà à grandi latenze (finu à 50 ms). è, in u risultatu, un ritardu in a risposta quandu input). E novi versioni di KWin-lowlatency ponu esse aduprate invece di u servitore cumpostu di stock in KDE Plasma 5.18.

Source: opennet.ru

Add a comment