Podjetje Canonical je predstavilo izdajo Mir 2.26.0 — nove različice komponista in niza knjižnic za gradnjo lupin in grafičnih okolij na osnovi Wayland.
Wayland in novi protokoli
- Dodana MVP-implementacija protokola ext-input-triggers (V1).
- Uresničen osnutek protokola ext-input-triggers za obdelavo vhodnih sprožitev v Waylandu. Ta funkcionalnost velja za privilegirano in ni vključena privzeto.
- Posodobljen je datoteka specifikacije ext-input-trigger-action-v1.xml: dodane so bile natančnosti o veljavnosti in dostopnosti žetonov.
- Dodana delna implementacija ext_image_copy_capture_v1 za seje kurzorjev.
- Implementirano prenosa slik kurzorja preko ext_image_copy_capture_v1.
Rust in razvoj arhitekture
- Začeta implementacija Wayland frontend na Rustu.
- Delo na platformi za vhod, temelji na Rustu, je bilo nadaljevano. To še ni glavni način obdelave vhodov, je pa praktičen korak k postopni integraciji Rust v projekt.
Podsystem za vhod: evdev-rs
- Uvedena podpora za dogodke dotika (touch events).
- Koda modula naprave je bila očiščena.
- Obdelava dogodkov vhodnih naprav je bila popravljen; stanje gumbov je bilo preneseno v shrambo na ravni posameznih naprav.
- Logika za obdelavo dogodkov je bila predelana za večjo jasnost in sledljivost kode.
Kursors, okna, API in notranja infrastruktura
- Za CursorObservers dodana je bila možnost sledenja spremembam slike kurzorja.
- Komponenta CursorObserverMultiplexer zdaj pošilja začetno stanje novim registriranim opazovalcem.
- Izveden je bil refaktoring MinimalWindowManager.
- Dodana je možnost da se določijo alpha-kanali okna in jih pridobi preko WindowInfo.
- V predloge libmiral dodani so bili requires clauses, kar izboljšuje strogost omejitev na ravni predloge C++.
- Izveden je bil prenos logging APIs in privzetih vrednosti v mircore.
- Klic strerror() je bil zamenjan z vzporedno varnim strerror_r().
Popravki napak
- Odpravljena je bila napaka, pri kateri je BasicXCBConnection::destroy_window klical xcb_map_window namesto xcb_destroy_window.
- Odpravljena je bila težava, zaradi katere odzivi XCB niso bili vedno sproščeni.
- Odpravljena je bila napaka: polnozaslonsko predvajanje videoposnetkov v Google Chromu morda ni delovalo, če okno pred tem ni bilo v načinu s celim zaslonom.
- Za X11 je bila dodana pravilna nastavitev _NET_CLIENT_LIST_STACKING.
- Odpravljena je bila nevarna implementacija fatal signal handling, ki je bila v izdaji navedena kot „wildly unsafe“.
- Odpravljena je bila napaka, pri kateri je preverjanje DRM_CLIENT_CAP_ATOMIC bilo izvedeno preko napačnega ioctl-klica.
- Izvedena čišćenje i poboljšanje logike mgk::find_crtc_with_primary_plane.
- Ispravljeno ponašanje zasjenjenja (occlusion): ako površina ima neprozirno područje, ali njezin alpha nije jednaka 1.0, više se ne smije koristiti kao potpuno preklapajući.
Ostalo
- Zamijećen je porast broja novih učesnika projekta: izdanje Mir 2.26.0 sadrži doprinos nekoliko novajlija, što programeri tumače kao znak rasta zajednice oko Mira.
Izvor: linux.org.ru
