Харитаи роҳ барои беҳтар кардани дастгирии Wayland дар Firefox

Мартин Странский, як нигоҳдории бастаи Firefox барои Fedora ва RHEL, ки Firefox-ро ба Wayland интиқол медиҳад, гузоришеро дар бораи баррасии охирин таҳаввулоти Firefox, ки дар муҳитҳои протоколии Wayland кор мекунад, нашр кард.

Дар версияҳои ояндаи Firefox, ҳалли мушкилоте, ки дар сохтани Wayland мушоҳида мешавад, бо буфер ва коркарди поп-апҳо ба нақша гирифта шудааст. Ин хусусиятҳо аз сабаби фарқиятҳо дар муносибат ба татбиқи онҳо дар X11 ва Wayland фавран амалӣ карда намешаванд. Дар ҳолати аввал, мушкилиҳо аз сабаби асинхронӣ кор кардани буфери Wayland ба миён омаданд, ки барои дастрасии абстрактӣ ба буфери Wayland як қабати алоҳида эҷод карданро талаб мекард. Қабати муайяншуда ба Firefox 93 илова карда мешавад ва ба таври нобаёнӣ дар Firefox 94 фаъол карда мешавад.

Дар робита ба муколамаҳои поп-ап, мушкилии асосӣ дар он буд, ки Wayland иерархияи қатъии тирезаҳои поп-апро талаб мекунад, яъне. равзанаи волидайн метавонад равзанаи кўдакро бо поп-ап эҷод кунад, аммо поп-апи навбатӣ, ки аз он равзана оғоз мешавад, бояд ба равзанаи аслии кӯдак пайваст шуда, занҷир ташкил кунад. Дар Firefox, ҳар як тиреза метавонад якчанд поп-апҳоро пайдо кунад, ки иерархияро ташкил намекарданд. Мушкилот дар он буд, ки ҳангоми истифодаи Wayland, пӯшидани яке аз тирезаҳо аз нав сохтани тамоми силсилаи тирезаҳо бо дигар поп-апҳоро талаб мекунад, сарфи назар аз он, ки мавҷудияти якчанд тирезаҳои кушода кам нестанд, зеро менюҳо ва тирезаҳо дар шакли маслиҳатҳои поп-апҳо, муколамаҳои изофӣ, дархостҳои иҷозат ва ғайра. Вазъият инчунин бо камбудиҳо дар Wayland ва GTK мураккаб буд, ки аз сабаби он тағйироти хурд метавонанд ба регрессияҳои гуногун оварда расонанд. Бо вуҷуди ин, рамзи коркарди поп-апҳо барои Wayland ислоҳ карда шудааст ва ба нақша гирифта шудааст, ки ба Firefox 94 дохил карда шавад.

Дигар такмилдиҳии марбут ба Wayland илова кардани 93 тағироти миқёсро ба Firefox дар экранҳои гуногуни DPI дар бар мегирад, ки ҳангоми ҳаракат додани тиреза ба канори экран дар конфигуратсияҳои бисёрҷонибаи монитор милт заданро аз байн мебарад. Firefox 95 нақша дорад, ки мушкилотеро, ки ҳангоми истифодаи интерфейси кашолакунӣ, масалан, ҳангоми нусхабардории файлҳо аз манбаъҳои беруна ба файлҳои маҳаллӣ ва ҳангоми интиқоли ҷадвалҳо ба вуҷуд меоянд, ҳал кунад.

Бо баровардани Firefox 96, порти Firefox барои Wayland ба нақша гирифта шудааст, ки ҳадди аққал ҳангоми кор дар муҳити GNOME-и Fedora кор кардан бо X11 ба кор дароварда шавад. Пас аз ин, таваҷҷӯҳи таҳиягарон ба такмил додани кор дар муҳити Wayland раванди GPU, ки дорои рамзи мутақобила бо адаптерҳои графикӣ мебошад ва раванди асосии браузерро аз садама дар ҳолати нокомии драйвер муҳофизат мекунад, равона карда мешавад. Раванди GPU инчунин ба нақша гирифта шудааст, ки рамзи рамзкушоии видео бо истифода аз VAAPI, ки ҳоло дар равандҳои коркарди мундариҷа иҷро мешавад, дохил карда шавад.

Илова бар ин, мо метавонем дохил кардани режими қатъии изолятсияи сайтро, ки дар доираи лоиҳаи Fission таҳия шудааст, барои фоизи ками корбарони шохаҳои устувори Firefox қайд кунем. Баръакси тақсимоти худсаронаи коркарди ҷадвалҳо дар ҳавзи равандҳои мавҷуда (бо нобаёнӣ 8), ки то ҳол истифода мешавад, реҷаи хати изолятсия коркарди ҳар як сайтро дар раванди алоҳидаи худ ҷойгир мекунад, ки на аз рӯи ҷадвалҳо, балки аз рӯи домени (Ҷамъиятӣ) ҷудо карда мешавад. Суффикс), ки ба мундариҷаи изолятсияи иловагии скриптҳои беруна ва блокҳои iframe имкон медиҳад. Даргиронидани ҳолати Fission тавассути тағирёбандаи "fission.autostart=true" дар about:config ё дар саҳифаи about:preferences#experimental идора карда мешавад.

Реҷаи изолятсияи қатъӣ аз ҳамлаҳои канории каналҳо, ба монанди осебпазириҳои Spectre, муҳофизат мекунад ва инчунин тақсимоти хотираро коҳиш медиҳад, хотираро ба системаи оператсионӣ самараноктар бармегардонад, таъсири ҷамъоварии партовҳо ва ҳисобҳои пуршиддатро дар саҳифаҳои дигар равандҳо кам мекунад ва самаранокии тақсимоти сарбориро дар ядроҳои гуногуни CPU афзоиш медиҳад ва устувориро зиёд мекунад (суқути раванди коркарди iframe ба сайти асосӣ ва дигар ҷадвалҳо таъсир намерасонад).

Дар байни мушкилоти маълум, ки ҳангоми истифодаи режими қатъии изолятсия ба миён меоянд, афзоиши назарраси истеъмоли хотира ва тавсифи файл ҳангоми кушодани шумораи зиёди ҷадвалҳо, инчунин халалдор шудани кори баъзе замимаҳо, нопадид шудани мундариҷаи iframe ҳангоми чоп ва даъват кардани функсияи сабти скриншот, кам кардани самаранокии кэшкунии ҳуҷҷатҳо аз iframe, гум шудани мундариҷаи шаклҳои пуршуда, вале пешниҳоднашуда ҳангоми барқарор шудани сессия пас аз садама.

Дигар тағирот дар Firefox анҷом додани интиқол ба системаи маҳаллисозии Fluent, такмил додани режими контрасти баланд, илова кардани қобилияти сабт кардани профилҳои иҷрои раванд бо як клик ба about:processes ва хориҷ кардани танзимот барои баргардонидани кӯҳна иборатанд. услуби саҳифаи ҷадвали нав, ки пеш аз Firefox 89 истифода мешуд.

Манбаъ: opennet.ru

Илова Эзоҳ