Kompania Canonical lansoi versionin Mir 2.26.0 - një version të ri të kompozitorit dhe një grupi bibliotekash për ndërtimin e shell-eve dhe mjediseve grafike mbi Wayland.
Wayland dhe protokollet e reja
- Implementimi i MVP të protokollit ext-input-triggers (V1).
- Drafti i protokollit është realizuar ext-input-triggers për trajtimin e triggereve të input-it në Wayland. Kjo funksionalitet konsiderohet privilegjuar dhe nuk aktivizohet për default.
- Skedari i specifikimit është përmirësuar ext-input-trigger-action-v1.xml: janë shtuar sqarime mbi vlefshmërinë dhe disponueshmërinë e tokeneve.
- Shtuar implementimi pjesor i ext_image_copy_capture_v1 për seancat e kursori.
- ĂshtĂ« realizuar transmetimi i imazhit tĂ« kursorit pĂ«rmes ext_image_copy_capture_v1.
Rust dhe zhvillimi i arkitekturës
- Ka filluar implementimi i Wayland frontend në Rust.
- Rikrerë nga puna mbi platformën e input-it të bazuar në Rust. Ky ende nuk është rruga kryesore e trajtimit të input-it, por një hap praktik drejt integrimit të ngadalshëm të Rust në projekt.
Sistemi i input-it: evdev-rs
- ĂshtĂ« realizuar mbĂ«shtetje pĂ«r ngjarjet e prekjes (touch events).
- Kodi i modulit device është pastruar.
- Përpunimi i ngjarjeve të pajisjeve treguese është rregulluar: gjendja e butonave është transferuar në ruajtje në nivelin e pajisjeve të veçanta.
- Logjika e përpunimit të ngjarjeve është rishikuar për të përmirësuar qartësinë dhe mbështetje të kodit.
Kursori, dritaret, API dhe infrastruktura e brendshme
- Për CursorObservers është shtuar mundësia për të ndjekur ndryshimet në imazhin e kursorit.
- Komponenti CursorObserverMultiplexer tani dërgon gjendjen fillestare te observerët e rinj të regjistruar.
- është zhvilluar refaktorizimi MinimalWindowManager.
- ĂshtĂ« shtuar mundĂ«sia pĂ«rcakton kanalin alpha tĂ« dritares dhe e merr atĂ« pĂ«rmes WindowInfo.
- Janë shtuar në shabllonet libmiral clauses requires, duke përmirësuar rigorozitetin e kufizimeve në nivelin e kodit në C++.
- ĂshtĂ« realizuar transferimi API-tĂ« e logging dhe vlerat e parazgjedhura nĂ« mircore.
- Thirrja e strerror() është zëvendësuar me strerror_r() të sigurt përThread.
Korrigjime gabimesh
- ĂshtĂ« korrigjuar njĂ« gabim, kur BasicXCBConnection::destroy_window thirri xcb_map_window nĂ« vend tĂ« xcb_destroy_window.
- ĂshtĂ« eliminuar njĂ« problem, pĂ«r tĂ« cilin pĂ«rgjigjet XCB nuk u çliruan gjithmonĂ«.
- ĂshtĂ« korrigjuar njĂ« gabim: luajtja me ekran tĂ« plotĂ« e videove nĂ« Google Chrome mund tĂ« mos funksiononte, nĂ«se dritarja nuk ishte e vendosur paraprakisht nĂ« modalitetin me ekran tĂ« plotĂ«.
- Për X11 është shtuar vendosja e saktë _NET_CLIENT_LIST_STACKING.
- ĂshtĂ« korrigjuar implementimi jo i sigurt trajtim i sinjaleve fatale, qĂ« nĂ« lĂ«shimin quhej drejtpĂ«rdrejt "wildly unsafe".
- ĂshtĂ« korrigjuar njĂ« gabim, ku kontrolli DRM_CLIENT_CAP_ATOMIC u realizua pĂ«rmes njĂ« thirrjeje tĂ« gabuar ioctl.
- Përfundoi pastrimi dhe përmirësimi i logjikës mgk::find_crtc_with_primary_plane.
- Korrigjimi i sjelljes së mbulimit (occlusion): nëse sipërfaqja ka një zonë të papërshkueshme, por alpha e saj nuk është e barabartë me 1.0, ajo nuk duhet të përdoret më si mbulim i plotë.
TĂ« tjera
- Vërehet rritja e numrit të pjesëmarrësve të rinj në projekt: lëshimi i Mir 2.26.0 përmban kontributin e disa fillestarëve, gjë që zhvilluesit e interpretojnë si një shenjë të rritjes së komunitetit përreth Mir.
Burimi: linux.org.ru
