ΠΠΎΡΠ»Π΅ ΡΠ΅ΡΡΡΡΡ ΠΌΠ΅ΡΡΡΠ΅Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅Π»ΠΈΠ· ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°, ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° ΠΌΠ΅ΠΆΠΏΡΠΎΡΠ΅ΡΡΠ½ΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Wayland 1.26. ΠΠ΅ΡΠΊΠ° 1.26 ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠ° Π½Π° ΡΡΠΎΠ²Π½Π΅ API ΠΈ ABI Ρ Π²ΡΠΏΡΡΠΊΠ°ΠΌΠΈ 1.x ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°. ΠΠ°ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΡΡΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΠ΅ΠΉ MIT. ΠΡΠ°Π»ΠΎΠ½Π½ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΡΠΉ server Weston, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ ΠΈ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Wayland Π² Π΄Π΅ΡΠΊΡΠΎΠΏ-ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΡ ΠΈ Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡΡ , ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ.
Owah-owahan utama ing protokol:
- Acara wl_pointer.warp wis ditambahake, sing ngidini sampeyan nampa kabar babagan posisi anyar pointer tanpa nangani acara wl_pointer.motion sing digawe dening aktivitas pangguna.
- Panjaluk wl_fixes.ack_global_remove wis ditambahake, sing dirancang kanggo ngirim konfirmasi menyang manajer komposit yen klien wis mandheg ngolah acara kasebut, kanggo nyegah kahanan balapan nalika mbusak acara global. Sawise nampa konfirmasi saka kabeh klien, manajer komposit bisa mbusak pawang sing ana gandhengane karo acara kasebut ing sisihane.
- Fungsi wl_display_remove_socket_fd() wis ditambahake kanggo mbusak soket sing wis ditambahake sadurunge liwat panggilan wl_display_add_socket_fd().
- Ing mode debug WAYLAND_DEBUG, wektu dicathet ing format "HH:MM:ss.xxxxxx", sing nggampangake parsing lan perbandingan log.
Ekstensi protokol sing ditambahake wiwit rilis Wayland sadurunge sing nglengkapi protokol inti Wayland lan diwenehake ing set Protokol Wayland sing kapisah:
- xx-fractional-scale β kanggo skala sistem koordinat logis, ing ngendi nilai ditemtokake minangka bilangan bulat, kanggo ningkatake akurasi posisi lan nambah resolusi koordinat logis nganti piksel individu. Fitur iki ngatasi masalah resolusi winates sistem koordinat logis, sing ora cukup kanggo posisi ing tingkat piksel individu, sing dibutuhake kanggo implementasi lengkap skala fraksional.
- xx-cutouts β kanggo njupuk informasi babagan potongan ing layar (contone, area ing sangisore kamera ngarep ing layar smartphone).
- xx-zones β kanggo nggawe lan nambahake jendela tingkat ndhuwur menyang "zona"βlingkungan kanthi ruang koordinat dhewe. Protokol iki ngidini pengaturan jendela sing logis, ing ngendi saben jendela diposisikan relatif marang saben jendela liyane.
- xx-keyboard-filter β kanggo klien supaya bisa nyegat kedadeyan keyboard sing dipilih, ngowahi kedadeyan input, utawa mblokir kedadeyan tartamtu supaya ora dikirim menyang permukaan Wayland sing difokusake.
- Π ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ Β«stagingΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» xdg-session-management, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΈ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΎΠΊΠΎΠ½ ΠΏΡΠ΅ΡΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅Π°Π½ΡΠ° Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Wayland, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΡΠ»Π΅ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΠΎΠ³ΠΎ server utawa aplikasi.
- Protokol "linux-dmabuf" wis dianyari kanggo ndhukung sistem multi-GPU. Ing sistem kasebut, klien bisa negosiasi komposit server GPU endi sing kudune digunakake.
- Protokol manajemen-warna-v1 wis dianyari kanggo ndhukung metadata gambar BT.2100 kanggo digunakake ing komposit. server pawang tartamtu sing ngidini tampilan konten HDR sing digawe kanthi bener Windows.
Prastawa penting sing ana gandhengane karo Wayland wiwit edisi pungkasan diterbitake:
- Kayu manis nduwèni dhukungan lengkap kanggo Wayland.
- Ing pustaka ANGLE sing digunakake ing Chrome lan Android, Dhukungan Wayland ditambahake.
- KDE, nalika nggunakake Wayland, ngetrapake dhukungan pemulihan sesi lan protokol Wayland xx-fractional-scale-v2 kanggo penskalaan fraksional.
- Port driver Synaptics X.Org wis digawe kanggo lingkungan berbasis Wayland.
- Pamriksaan kesiapan kanggo platform VFX lan animasi kanggo ngganti X11 karo Wayland wis diwiwiti.
- Pangujian server komposit Xfwl4 saka proyèk Xfce wis diwiwiti.
- Antarmuka panganggo Unity wis digawe maneh nggunakake Wayfire lan Libadwaita.
- Server komposit lan lingkungan desktop sing dianyari: COSMIC 1.3.0, Weston 16, Phosh 0.56, Nourish 1.0.0, miracle-wm 0.10, KDE Plasma 6.7, labwc 0.20, Sway 1.2, Wayland Maker 0.8, Hyprland 0.55, Niri 26.04, LXQt 2.4.0, Cage 0.3.
ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΠΌ, ΡΡΠΎ Wayland ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΡ Ρ Π½ΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ»ΠΈΠ΅Π½ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ ΡΠ²ΠΎΠΈΡ ΠΎΠΊΠΎΠ½ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ Π±ΡΡΠ΅ΡΠ΅, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΠ± ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡΡ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΠΎΠΌΡ pelayan, sing nggabungake isi buffer aplikasi individu kanggo ngasilake output pungkasan, kanthi nganggep kemungkinan nuansa kayata tumpang tindih jendela lan transparansi. Kanthi tembung liya, server komposit ora nyedhiyakake API kanggo rendering elemen individu, nanging mung beroperasi ing jendela sing wis dirender, ngilangi buffering ganda nalika nggunakake perpustakaan tingkat dhuwur kayata GTK lan Qt, sing nangani karya nyusun konten jendela.
Wayland ngatasi akeh masalah keamanan X11 ing X.Org Server, amarga, ora kaya sing terakhir, Wayland ngisolasi input lan output kanggo saben jendela, ora ngidini klien ngakses isi jendela klien liyane, lan ora ngidini intersepsi acara input sing ana gandhengane karo jendela liyane (XLibre XServer ngetrapake ekstensi X11 Xnamespace, sing nyedhiyakake isolasi klien liwat pamisahan ing tingkat namespace). Dhukungan kanggo kerja langsung karo Wayland dileksanakake kanggo sebagian besar platform sing digunakake ing Linux perpustakaan grafis kalebu GTK, Qt, SDL, FLTK, wxWidgets, Clutter, lan EFL (Enlightenment Foundation Library).
Interaksi karo perangkat keras ing Wayland/Weston, kayata inisialisasi, pangalihan mode video (setelan mode DRM), lan manajemen memori (GEM kanggo i915 lan TTM kanggo Radeon lan Nouveau) kanggo kertu grafis, bisa ditindakake langsung liwat modul tingkat kernel, ngilangi kebutuhan kanggo hak akses superuser. Kanggo njamin eksekusi aplikasi X11 standar ing lingkungan berbasis Wayland, komponen XWayland (Device-Dependent X) DDX digunakake, sing operasine padha karo Xwin lan Xquartz kanggo Win32 lan macOS.
Source: opennet.ru
