Waylandi toe parendamise plaan Firefoxis

Martin Stransky, Firefoxi pakettide hooldaja Fedoras ja RHEL-is, kes tegeleb Firefoxi portimisega Waylandile, avaldas aruande viimaste saavutuste kohta Firefoxi toimimises Waylandi protokolliga keskkondades.

Firefoxi lähituleviku versioonides plaanitakse lahendada Waylandi kogumikest esinenud lõikeprotsessi ja pop-up akende töötlemise probleeme. Need funktsioonid ei saanud alguses ellu viidud, kuna X11 ja Waylandi rakendamise lähenemisviisid erinevad. Esimesel juhul tekkis probleem Waylandi lõikeprotsessi asünkroonse töö tõttu, mis nõudis spetsiaalse vahekihina loomist Waylandi lõikeprotsessi juurde pääsemiseks. See vahekiht lisatakse Firefox 93-sse ja sisseehitudakse Firefox 94-s.

Mis osas popup-akendest, siis peamine väljakutse seisnes selles, et Wayland nõuab ranget hierarhiat popup-akenete vahel, st vanemaken võib luua tütarakenega popup-i, kuid selle akna kaudu algatatud järgmine popup peab olema seotud algse tütarakkega, luues ahela. Firefoxis sai iga aken genereerida mitu popup-i, mis ei moodustanud hierarhiat. Probleem seisnes selles, et Waylandi kasutamisel nõuab ühe popup-i sulgemine kogu akna ahela ümberehitamist koos teiste popup-idega, arvestades, et mitme avatud popup-i olemasolu ei ole haruldane, kuna popup-idena on realiseeritud menüüd, hüpikaknad, laiendite dialoogid, õiguste taotlused jne. Olukorda komplitseerisid ka Waylandi ja GTK puudujäägid, mis tegid isegi väikeste muudatuste tegemise erinevate regressioonide ilmnemise võimalikuks. Sellegipoolest oli Waylandi popup-akenete töötlemise kood lihvitud ja seda plaanitakse lisada Firefox 94 koosseisu.

Waylandiga seotud muudatustest mainitakse Firefox 93-s tegemisi, mis on seotud erineva DPI-ga ekraanide skaleerimisega, mis on aidanud kõrvaldada vilkumise, kui aken tõstetakse ekraani serva mitme monitori konfiguratsioonides. Firefox 95-s plaanitakse tegeleda probleemidega, mis tekivad drag & drop liidese kasutamisel, näiteks failide kopeerimisel välistest allikatest kohalikkudesse failisüsteemidesse ning vahekaartide liigutamisel.

Firefox 96 väljaandes plaanitakse Waylandi porti funktsionaalsuse viimist täielikku tasakaalu X11 versiooniga, vähemalt Fedora GNOME keskkonnas töötades. Pärast seda keskenduvad arendajad GPU-protsessi töö viimistlemisele Waylandi keskkondades, kuhu on viidud kood graafikakaartide suhtlemiseks ja mis kaitseb brauseri peamist protsessi juhuslike draiveri tõrgete korral. GPU-protsessi plaanitakse viia ka video dekodeerimise kood VAAPI abil, mis praegu töötab sisuhaldusprotsessides.

Lisaks võib märkida, et väikese protsendi Firefoxi kasutajate jaoks on sisse lülitatud rangete veebilehtede isoleerimise režiim, mis arenes projekti Fission raames. Erinevalt varasemast juhuslikust vahelehtede töötlemise jagamisest kättesaadavate protsesside hulgas (vaikimisi 8), eraldab isoleerimise režiim iga veebilehe töötlemise oma eraldi protsessis, jagades mitte vahelehtede, vaid domeenide (Public Suffix) alusel. See võimaldab täiendavalt isoleerida väliste skriptide ja iframe-plokkide sisu. Fission režiimi sissetoomise haldamine toimub muutuja "fission.autostart=true" kaudu lehelt about:config või lehelt about:preferences#experimental.

Rangeeritud isolaatori režiim aitab kaitsta ründe eest külgkanalite kaudu, näiteks Spectre klasse haavatavuste kaudu, vähendab mälufragmenteerimist, tagastab mälu operatsioonisüsteemile tõhusamalt, minimeerib jäätme kogumise ja intensiivsete arvutuste mõju teiste protsesside lehtedele, suurendab koormuse tõhusust erinevatele CPU südamikele ning parandab stabiilsust (iframe'i töötlemise protsessi suurkukkumine ei too kaasa peamise saidi ja teiste vahekaartide kokkuvarisemist).

Rangeeritud isolaatori režiimi kasutamisega seotud tuntud probleemide seas on oluliselt suurenenud mälu ja failidesse viivate kirjade tarbimine suure hulga vahekaartide avamise korral, samuti teatud laiendite töö häired, iframe sisu kadumine printimise ja ekraanilise pildi salvestamise funktsioonide kasutamisel, dokumentide vahemälu tõhususe vähenemine iframe'ide osas, ja täidetud, kuid mitte saadetud vormide sisu kadumine sessiooni taastamisel pärast kokkuvarisemist.

Teistest muudatustest Firefoxis toodi välja üleminek Fluent lokaliseerimissüsteemile, kõrge kontrastsuse režiimi (High Contrast Mode) täiustamine, võimalus salvestada protsessi jõudluse profiile ühe nupule vajutusega lehelt about:processes ning vana uue vahekaardi avamise stiili seade eemaldamine, mis kasutati enne Firefox 89.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster