
Injini yeWebhu yeServo kwiQt
KDAB (inkokeli ekuboneleleni ngeQt, C++ kunye ne-3D/OpenGL ubuchwephesha besoftware kwidesktop, efakelweyo kunye namaqonga aphathwayo) uye wazisa kutshanje ngebhlog yakhe, ukukhutshwa kwe "Servo WebView ye Qt". Esi sixhobo esitsha sebenzisa injini umkhangeli zincwadi I-Servo endaweni yemodyuli ye-Qt WebEngine esekwe kwiChromium, inika enye indlela yokubonisa umxholo wewebhu kwizicelo ze-QML.
I-Servo yiprojekthi yaqalwa yaphuhliswa yiMozilla kwaye ngoku phantsi kolawulo lweLinux Foundation, igqame ngokuba yi Injini yonikezelo lwewebhu ebhalwe kwiRust, igxile kukhuseleko lwenkumbulo kunye nokusetyenziswa ngokufanelekileyo kweenkqubo zanamhlanje ezininzi.
Phakathi kweempawu zayo eziphawuleka kakhulu kwayeInkxaso yonikezelo ngemisonto emininzi yamaphepha ewebhu, ukuhambelana kwemisebenzi kunye ne-DOM kunye ukusetyenziswa kweenkqubo ezikhuselekileyo ezibonelelwa nguRust. Ngokungafaniyo ne-injini yesikhangeli seFirefox, esebenzisa izikimu zokusetyenzwa komsonto omnye, iServo yenzelwe ngokukhethekileyo ukuthatha ithuba leenkqubo ezininzi zala maxesha ngokwahlulahlula iDOM kunye nokwenza imisebenzi engaphantsi ngokunxuseneyo, ngaloo ndlela ikhulisa ukusetyenziswa kwezixhobo ezininzi zeCPU. I-Mozilla idibanise iinxalenye ze-Servo kwiFirefox, ezifana ne-injini ye-CSS enemisonto emininzi kunye nenkqubo yokunikezelwa kweWebRender.
Malunga ne-Servo WebView Qt
Ukuhlanganiswa I-Servo WebView kwizicelo zeQt ijolise ekuphuculeni ukusebenza kunye nokubonelela ngobuchule obukhulu, Olu hlanganiso lukwanegalelo elikhulu kukhuseleko lwezicelo ze-Qt. Udibaniso lweServo kwiQt iphunyezwa ngoluhlu lwe-CXX-Qt, esebenza njengebhulorho phakathi kweRust kunye neC ++. Lo maleko uvumela ukwenziwa kwezinto zeRust ezidibanisa ngokungenamthungo kunye neenkqubo ze-C++ zisebenzisa i-Qt. Oku kuvula amathuba amatsha ophuhliso lwesicelo se-Qt ngokugxila kukhuseleko kunye nokusebenza komboniso wewebhu.
Kwi-KDAB sikwazile ukudibanisa i-injini ye-Servo yewebhu ngaphakathi kwe-Qt, sisebenzisa ilayibrari yethu ye-CXX-Qt njengebhuloho phakathi kwe-Rust kunye ne-C ++. Oku kuthetha ukuba ngoku singasebenzisa i-Servo njengenye indawo yeChromium kwiimboniselo zewebhu kwi-Qt usetyenziso.
Ukusuka kwimbono yeQML, eli candelo liyafana neChromium WebView, kuloo canGoBack ibonelela ngeepropati kunye neendlela. Isiqalelo se-QML sisebenza ngokufanayo kwaye umxholo unikezelwa ukuhambelana nobukhulu bawo canGoForwardloadingtitleurlgoBackgoForward
Kwintengiso, kukhankanyiwe ukuba sEnye yeenzuzo ezinkulu ze-Servo WebView kulindeleke ukuba ibe namandla okunciphisa indawo yokuhlaselwa kwizicelo ze-Qt. abasebenzisa iWebView API, enkosi kusetyenziso lolwimi lweRust olunciphisa inkangeleko yobuthathaka obunxulumene neempazamo zolawulo lwenkumbulo.
Ukongeza koku, kukwakhankanywa ukuba Ukudibanisa kunika inani leenzuzo, kuquka:
- Ukhuseleko olukhulu: Ukubhalwa kwi-Rust, i-Servo inciphisa indawo yokuhlaselwa kwaye inciphisa ubuthathaka obunxulumene nolawulo lwememori, igalelo kumava okukhangela iwebhu akhuselekileyo kubasebenzisi bezicelo ze-Qt.
- Ukusebenza ngcono: Ugxininiso lwe-Servo kungqamaniso kunye nokusetyenziswa ngokufanelekileyo kwezixhobo ze-CPU ezininzi ezingundoqo ziphucula ukusebenza kwewebhu kwizicelo ze-Qt, ukuhambisa amava agudileyo kwaye aphendule ngakumbi.
- Ukuba bhetyebhetye kunye nokuScalability: Ukuhlanganiswa kwe-Servo kwi-Qt nge-CXX-Qt inikezela ngeqonga eliguquguqukayo kunye ne-scalable yophuhliso lwesicelo sewebhu, ukuvula amathuba amatsha kumxholo- kunye nezicelo ezicebileyo.
Ngokumalunga nophuhliso lwexesha elizayo kunye nezicwangciso zokuphucula, Ukuhlanganiswa kukhankanyiwe kuphando olongezelelweyo kunye nokuphuculwa kwebhuloho phakathi kwe-Rust kunye ne-Qt, ukuphuculwa kwe-API yeenkqubo ezifakwe ngaphakathi, ukuphuculwa kwento ye-framebuffer enyanzelisa ukusetyenziswa kwe-OpenGL backend, phakathi kwezinye izinto.
Okokugqibela, kufanelekile ukuba ikhankanywe Ikhowudi ye-Servo WebView yeQt inelayisensi phantsi kwe-MPL-2.0 kwaye ukuba unomdla wokwazi ngakumbi ngayo, ungajonga iinkcukacha Kule khonkco ilandelayo.