Plani i përmirësimit të mbështetjes Wayland në Firefox

Martin Stransky, mbajtësi i paketave të Firefox në Fedora dhe RHEL, i angazhuar në portimin e Firefox për Wayland, publikoi një raport mbi arritjet e fundit në punën e Firefox në mjediset e bazuara në protokollin Wayland.

Në lëshimet e ardhshme të Firefox pritet të zgjidhen problemet e vërejtura në ndërtimet për Wayland, siç janë ato me bllokimin e shkëmbimeve dhe trajtimin e dritarëve të daljes (popup). Këto funksionalitete nuk u arritën të implementoheshin menjëherë për shkak të ndryshimeve në qasjen për implementimin e tyre në X11 dhe Wayland. Në rastin e parë, vështirësitë lindën nga funksionimi i bllokimit të shkëmbimit Wayland në mënyrë asinkrone, gjë që kërkoi krijimin e një shtrese të veçantë për të abstaraktuar qasjen në bllokimin e shkëmbimit Wayland. Kjo shtresë do të shtohet në Firefox 93 dhe do të aktivizohet si default në Firefox 94.

Sa i përket dialogëve të daljes, vështirësia kryesore ishte se Wayland kërkon respektimin e një hierarkie të rreptë të dritareve të daljes, që do të thotë se një dritare prind mund të krijojë një dritare fëmijë me një popup, por popup-i i ardhshëm, i iniciuar nga kjo dritare, duhet të lidhet me dritaren fëmijë origjinale, duke formuar një zinxhir. Në Firefox, çdo dritare mund të krijojë disa popup-e, pa formuar një hierarki. Problemi është se, duke përdorur Wayland, mbyllja e një prej popup-eve kërkon rindërtimin e gjithë zinxhirit të dritareve me popup-e të tjera, duke pasur parasysh se prania e disa popup-eve të hapura nuk është një përjashtim, pasi menus, sugjerime, dialogë shtesash dhe kërkesa për leje implementohen si popup-e. Situata u komplikuar gjithashtu nga papërfundimet në Wayland dhe GTK, të cilat bënë që ndonjë modifikim i vogël të mund të shkaktonte regresione të ndryshme. Megjithatë, kodi për trajtimin e dritareve të daljes për Wayland është rregulluar dhe pritet të përfshihet në Firefox 94.

Nga përmirësimet e tjera që kanë të bëjnë me Wayland, përmendet përfshirja në Firefox 93 e ndryshimeve që lidhen me shkallëzimin në ekrane me DPI të ndryshëm, të cilat lejuan eliminimin e dridhjeve kur lëvizni dritaren në skajin e ekranit në konfigurime me shumë monitorë. Në Firefox 95 pritet të merren me problemet që lindin kur përdoret ndërfaqja drag&drop, si për shembull kur kopjoni skedarë nga burime të jashtme në sistemet e skedarëve lokale dhe kur lëvizni skedat.

Në lëshimin e Firefox 96, porti i Firefox për Wayland pritet të arrijë një barazi të plotë në funksionalitet me ndërtimin për X11, të paktën kur punoni në mjedisin GNOME të Fedora. Pasi të përfundojë kjo, vëmendja e zhvilluesve do të përqendrohet në përmirësimin e funksionimit në ambientet Wayland të procesit GPU, në të cilin është transferuar kodi për ndërveprimin me adaptuesit grafikë dhe që mbron procesin kryesor të shfletuesit nga dështimet në rast të problemeve me drejtuesit. Po ashtu, në procesin GPU pritet të transferohet kodi për dekodimin e videove përmes VAAPI, i cili aktualisht ekzekutohet në proceset e përpunimit të përmbajtjes.

Për më tepër, mund të vërehet përfshirja për një përqindje të vogël të përdoruesve të degëve stabile të një mode të strikt të izolimit të faqeve, e cila është zhvilluar në kuadër të projektit Fission. Ndryshe nga distribuimi i rastësishëm të përpunimit të skedave nga grumbulli në dispozicion të proceseve (në mënyrë default 8), moda e izolimit të faqeve nxjerr përpunimin e çdo faqeje në procesin e saj të veçantë, duke e ndarë jo sipas skedave, por sipas domainëve (Public Suffix), duke lejuar izolimin e përmbajtjes së skritpëve të jashtëm dhe blloqeve iframe. Menaxhimi i aktivizimit të modës Fission bëhet përmes variablit "fission.autostart=true" në about:config ose në faqen about:preferences#experimental.

Moda e strikt të izolimit lejon mbrojtjen nga sulmet përmes kanaleve të tjera, për shembull, ato të lidhura me dobësi të klasës Spectre, dhe gjithashtu redukton fragmentimin e memories, përmirëson kthimin më efikas të memories për sistemin operativ, minimizon ndikimin e grumbullimit të mbetjeve dhe llogaritjeve intensive në faqet në procese të tjera, rrit efikasitetin e shpërndarjes së ngarkesës në bërthama të ndryshme të CPU dhe rrit stabilitetin (dështimi i procesit që përpunon iframe nuk do të shkaktojë dështimin e faqes kryesore dhe skedave të tjera).

Mes problemeve të njohura që lindin kur përdoret moda e strikt të izolimit, vërehet rritje e dukshme e konsumit të memories dhe descriptorëve të skedarëve kur hapen numra të mëdha skedash, si dhe shqetësime në funksionimin e disa shtesave, humbja e përmbajtjes së iframe gjatë printimit dhe aktivizimit të funksionit të regjistrimit të ekranit, ulja e efikasitetit të memorizimit të dokumenteve me iframe, humbja e përmbajtjes së formave të mbushura, por jo të dërguara, gjatë rikthimit të sesionit pas një dështimi.

Ndryshime të tjera në Firefox përfshijnë përfundimin e migrimit në sistemin e lokalizimit Fluent, përmirësimin e modit me kontrast të lartë, shtimin e mundësisë në about:processes për të regjistruar profilet e performancës së procesit me një klik dhe heqjen e cilësimit për të rikthyer stilin e vjetër të dizajnit të faqes që hapet në një skedë të re, i cili u përdor deri në Firefox 89.

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster