„Wayland“ palaikymo „Firefox“ tobulinimo planas

Martinas Stransky, „Firefox“ paketų prižiūrėtojas, skirtas „Fedora“ ir „RHEL“, perkeliantis „Firefox“ į „Wayland“, paskelbė ataskaitą, kurioje apžvelgė naujausius „Firefox“, veikiančio „Wayland“ protokolu pagrįstose aplinkose, pokyčius.

Kituose „Firefox“ leidimuose planuojama išspręsti „Wayland“ versijose pastebėtas iškarpinės ir iššokančiųjų langų tvarkymo problemas. Šios funkcijos negalėjo būti nedelsiant įdiegtos dėl skirtingų požiūrių į jų diegimą X11 ir Wayland. Pirmuoju atveju sunkumų kilo dėl asinchroniškai veikiančios Wayland iškarpinės, dėl kurios reikėjo sukurti atskirą sluoksnį, kad būtų galima abstrakčiai pasiekti Wayland iškarpinę. Nurodytas sluoksnis bus pridėtas prie „Firefox 93“ ir įjungtas pagal numatytuosius nustatymus „Firefox 94“.

Kalbant apie iššokančius dialogus, pagrindinis sunkumas buvo tas, kad Wayland reikalauja griežtos iššokančiųjų langų hierarchijos, t.y. pirminis langas gali sukurti antrinį langą su iššokančiu langu, tačiau kitas iš to lango inicijuotas iššokantis langas turi susieti su pirminiu antriniu langu, sudarydamas grandinę. „Firefox“ kiekviename lange gali atsirasti keli iššokantys langai, kurie nesudarė hierarchijos. Problema buvo ta, kad naudojant „Wayland“ uždarant vieną iš iššokančiųjų langų reikia perdaryti visą langų grandinę su kitais iššokančiaisiais langais, nepaisant to, kad keli atviri iššokantys langai nėra neįprasti, nes meniu ir iššokantieji langai yra įgyvendinami kaip iššokančiųjų langų įrankių patarimai, priedų dialogo langai, leidimo užklausos ir kt. Situaciją komplikavo ir Wayland bei GTK trūkumai, dėl kurių nedideli pokyčiai galėjo lemti įvairias regresijas. Tačiau „Wayland“ iššokančiųjų langų tvarkymo kodas buvo derinamas ir planuojama įtraukti į „Firefox 94“.

Kiti su „Wayland“ susiję patobulinimai apima 93 „Firefox“ mastelio pakeitimus skirtinguose DPI ekranuose, kurie pašalina mirgėjimą perkeliant langą į ekrano kraštą kelių monitorių konfigūracijose. „Firefox 95“ planuoja spręsti problemas, kylančias naudojant „drag&drop“ sąsają, pavyzdžiui, kopijuojant failus iš išorinių šaltinių į vietinius failus ir perkeliant skirtukus.

Išleidus „Firefox 96“, „Wayland“ skirto „Firefox“ prievado funkcionalumas bus lygus su X11 versija, bent jau veikiant Fedora GNOME aplinkoje. Po to kūrėjų dėmesys bus nukreiptas į GPU proceso darbo Wayland aplinkose tobulinimą, kuriame yra kodas sąveikai su grafiniais adapteriais ir kuris apsaugo pagrindinį naršyklės procesą nuo strigimo tvarkyklės gedimų atveju. Į GPU procesą taip pat planuojama įtraukti kodą, skirtą vaizdo įrašų dekodavimui naudojant VAAPI, kuris šiuo metu vykdomas turinio apdorojimo procesuose.

Be to, galime atkreipti dėmesį į griežto svetainės izoliavimo režimo, sukurto kaip „Fission“ projekto dalis, įtraukimą, skirtą nedidelei stabilių „Firefox“ šakų vartotojų daliai. Skirtingai nuo šiuo metu naudojamo savavališko skirtukų apdorojimo paskirstymo per turimą procesų telkinį (pagal numatytuosius nustatymus 8), izoliavimo linijos režimas apdoroja kiekvieną svetainę į atskirą procesą, atskirtą ne skirtukais, o domenu (viešoji priesaga ), kuri leidžia papildomai atskirti išorinių scenarijų ir „iframe“ blokų turinį. Dalijimosi režimo įgalinimas valdomas naudojant kintamąjį „fission.autostart=true“, esantį about:config arba puslapyje about:preferences#experimental.

Griežtas izoliavimo režimas padeda apsisaugoti nuo šoninių kanalų atakų, pvz., susijusių su Spectre pažeidžiamumu, taip pat sumažina atminties susiskaidymą, efektyviau grąžina atmintį operacinei sistemai, sumažina šiukšlių rinkimo ir intensyvių skaičiavimų poveikį puslapiams kituose procesuose ir padidina apkrovos paskirstymo tarp skirtingų procesoriaus branduolių efektyvumą ir padidina stabilumą (iframe apdorojimo proceso gedimas neturės įtakos pagrindinei svetainei ir kitiems skirtukams).

Tarp žinomų problemų, kylančių naudojant griežtą atskyrimo režimą, pastebimas atminties ir failų deskriptorių suvartojimo padidėjimas atidarant daug skirtukų, taip pat kai kurių priedų veikimo sutrikimas, „iframe“ turinio išnykimas, kai spausdinti ir iškviesti ekrano kopijų įrašymo funkciją, sumažėjęs dokumentų talpinimo iš iframe efektyvumas, Užpildytų, bet nepateiktų formų turinio praradimas, kai sesija atkuriama po gedimo.

Kiti „Firefox“ pakeitimai apima perkėlimą į „Fluent“ lokalizavimo sistemą, didelio kontrasto režimo patobulinimus, galimybės įrašyti procesų našumo profilius vienu spustelėjimu į „ about:processes“ ir nustatymų pašalinimą, kad būtų grąžintas senasis. atidaryto naujo skirtuko puslapio stilių, kuris buvo naudojamas prieš „Firefox 89“.

Šaltinis: opennet.ru

Добавить комментарий