ΠΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π²ΡΠΏΡΡΠΊ ΠΏΠ°ΠΊΠ΅ΡΠ° wayland-protocols 1.35, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ Π½Π°Π±ΠΎΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠ² ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Wayland ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠΉ.
Kabeh protokol kanthi urutan ngliwati telung fase - pangembangan, tes lan stabilisasi. Sawise ngrampungake tahap pangembangan (kategori "ora stabil"), protokol diselehake ing cabang "pementasan" lan resmi kalebu ing set protokol wayland, lan sawise tes rampung, dipindhah menyang kategori stabil. Protokol saka kategori "pementasan" wis bisa digunakake ing server komposit lan klien sing mbutuhake fungsi sing gegandhengan. Boten kados kategori "ora stabil", "pementasan" nglarang nggawe owah-owahan sing nglanggar kompatibilitas, nanging yen masalah lan shortcomings dikenali sak testing, panggantos karo versi anyar pinunjul saka protokol utawa extension Wayland liyane ora tilar.
Ing versi anyar:
- Π ΡΠ°Π·ΡΡΠ΄ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅Π²Π΅Π΄ΡΠ½ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» tablet-v2, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ Π²Π²ΠΎΠ΄Π° Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠ»Π°Π½ΡΠ΅ΡΠΎΠ².
- Π ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΡ Β«stagingΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» alpha-modifier, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°ΠΌ ΠΌΠ΅Π½ΡΡΡ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΠΈ ΠΈ Π²ΡΠ½ΠΎΡΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΠΈ Π½Π° ΡΡΠΎΡΠΎΠ½Ρ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅Π°Π΄ΡΠ΅ΡΠΎΠ²Π°ΡΡ ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ KMS.
- Π ΠΏΡΠΎΡΠΎΠΊΠΎΠ» xdg-shell Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡ Π½Π΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π΄Π΅ΠΊΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π½Π΅ Π³Π΅ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΈΡ Π³ΡΠ°Π½ΠΈΡ ΠΎΠΊΠ½Π°, Π² ΡΠ»ΡΡΠ°Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠΎΠ·Π°ΠΈΡΠ½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΎΠΊΠΎΠ½.
Saiki, wayland-protocols kalebu protokol stabil ing ngisor iki, sing nyedhiyakake kompatibilitas mundur:
- "viewporter" - ngidini klien kanggo nindakake scaling lan lumahing pojok trimming tumindak ing sisih server.
- "wektu presentasi" - nyedhiyakake tampilan video.
- "xdg-shell" minangka antarmuka kanggo nggawe lan sesambungan karo permukaan minangka windows, sing ngidini sampeyan mindhah layar, nyilikake, nggedhekake, ngowahi ukuran, lsp.
- Β«linux-dmabufΒ» β ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°ΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ DMA-BUF (ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ wl_buffer Π½Π° Π±Π°Π·Π΅ DMA-BUF).
- Β«tabletΒ» β ΠΎΡΠ³Π°ΠΈΠ·Π°ΡΠΈΡ Π²Π²ΠΎΠ΄Π° Ρ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠ»Π°Π½ΡΠ΅ΡΠΎΠ².
Protokol sing diuji ing cabang "pementasan":
- drm-lease - nyedhiyakake sumber daya sing dibutuhake kanggo ngasilake gambar stereo kanthi buffer beda kanggo mata kiwa lan tengen nalika metu menyang headset kasunyatan virtual.
- "ext-session-lock" - nemtokake cara ngunci sesi, contone, nalika screen saver mlaku utawa dialog otentikasi ditampilake.
- "single-piksel-buffer" - ngijini sampeyan kanggo nggawe siji-piksel buffer sing kalebu papat nilai RGBA 32-dicokot.
- "xdg-activation" - ngidini sampeyan nransfer fokus ing antarane permukaan tingkat pertama sing beda (contone, nggunakake xdg-activation, siji aplikasi bisa ngalih fokus menyang liyane).
- jinis konten - Ngidini klien ngirim informasi babagan konten sing ditampilake menyang server komposit, sing bisa digunakake kanggo ngoptimalake prilaku sing ngerti konten, kayata nyetel properti DRM tartamtu kayata "jinis konten". Dhukungan kanggo jinis konten ing ngisor iki diumumake: ora ana (ora ana informasi babagan jinis data), foto (output foto digital, mbutuhake pangolahan minimal), video (video utawa animasi, sinkronisasi sing luwih tepat dibutuhake supaya ora gagap) lan game (diluncurake). game, output saka wektu tundha minimal).
- ext-idle-notify - Ngidini server komposit ngirim kabar menyang klien babagan ora aktif pangguna, sing bisa digunakake kanggo ngaktifake mode hemat daya tambahan sawise wektu ora aktif.
- tearing-kontrol - ngijini sampeyan kanggo mateni sinkronisasi vertikal (VSync) karo pulsa damping vertikal ing aplikasi layar wutuh, digunakake kanggo nglindhungi saka tearing ing output. Ing aplikasi multimedia, artefak amarga nyuwek minangka efek sing ora dikarepake, nanging ing program game, artefak bisa ditoleransi yen ditangani nyebabake penundaan tambahan.
- ext-foreign-toplevel-list - Nompo informasi bab lumahing diselehake ing tingkat ndhuwur, sing ngijini sampeyan kanggo ngatur windows dock ing ndhuwur isi liyane, contone, kanggo masang panel dhewe lan ngalih jendhela.
- keamanan-konteks - ngijini sampeyan kanggo ngenali klien nggunakake wedhi isolasi. Klien bisa ndhaptar sambungan anyar menyang server komposit basis Wayland lan masang konteks keamanan, sawise manajer gabungan bakal mbatesi kemampuan sing kasedhiya kanggo sambungan sing wis ditemtokake adhedhasar konteks keamanan sing ditemtokake.
- wangun kursor minangka cara alternatif kanggo ngatur tampilan kursor, adhedhasar liwati seri gambar kursor tinimbang snapping menyang lumahing (wl_surface).
- Β«ext-transient-seatΒ» β ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΡΠ΅Π°Π½ΡΠΎΠ² (seat), ΡΠ°ΡΡΡΠΈΡΠ°Π½Π½ΡΡ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ Π²Π²ΠΎΠ΄Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΌΡ ΡΠ°Π±ΠΎΡΠ΅ΠΌΡ ΡΡΠΎΠ»Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ΅Π°Π½Ρ Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΠΎΠΉ ΠΈ ΠΌΡΡΡΡ.
- Β«xdg-toplevel-dragΒ» β ΡΠ°ΡΡΠΈΡΡΠ΅Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Β«drag & dropΒ» Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ»Π΅Π½ΠΈΡ ΠΎΠΊΠΎΠ½ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ, ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΊΠΈΠ²Π°Π½ΠΈΡ ΠΌΡΡΡΡ ΠΏΠ°Π½Π΅Π»Π΅ΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ»ΠΈ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ Π±ΡΠ°ΡΠ·Π΅ΡΠ°. ΠΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΎΡΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΡΡΠΈ ΠΎΠΊΠ½Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΊΠΈΠ²Π°Π½ΠΈΠΈ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π½ΠΎΠ²ΡΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ ΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΏΠΎΠ²Π΅ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΎΠΊΠ½Π° ΠΏΠ΅ΡΠ΅Π΄ ΠΏΠΎΠ²ΡΠΎΡΠ½ΡΠΌ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ»Π΅Π½ΠΈΠ΅ΠΌ.
- Β«xdg-dialogΒ» β ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°Π·Π½Π°ΡΠ°ΡΡ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΡΠΌ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΏΡΠΈΠ·Π½Π°ΠΊΠΈ, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΡΡ ΠΎΠΊΠΎΠ½, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΌΠΎΠ΄Π°Π»ΡΠ½ΡΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±Π»ΠΎΠΊΠΈΡΡΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°ΡΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°.
- Β«linux-drm-syncobjΒ» β ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠ²Π½ΠΎΠΉ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈΠΈ Π±ΡΡΠ΅ΡΠΎΠ² ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ DRM (Direct Rendering Manager). ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΈ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ΅ Π² Π±ΡΡΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΡΠ»ΡΡΡΠΈΡΡ ΡΠ°Π±ΠΎΡΡ Ρ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°ΠΌΠΈ Π½Π° Π±Π°Π·Π΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ API Vulkan ΠΈ OpenGL (ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π±Π°Π·ΠΈΡΡΠ΅ΡΡΡ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°Ρ Π² Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°Ρ ). ΠΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π΄Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ Π² Π±ΡΡΠ΅Ρ Π·Π°Π²Π΅ΡΡΠ΅Π½Π° Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡ Π΄Π°Π½Π½ΡΠΉ Π±ΡΡΠ΅Ρ.
Protokol sing dikembangake ing cabang "ora stabil":
- "layar wutuh" - kontrol karya ing mode layar wutuh.
- "metode input" - cara ngolah input.
- "idle-inhibit" - ngalangi peluncuran screensaver (screen saver).
- "input-timestamps" - cap wektu kanggo acara input.
- "keyboard-shortcuts-inhibit" - ngontrol lampiran trabasan keyboard lan hotkeys.
- "linux-explicit-synchronization" minangka mekanisme khusus Linux kanggo nyinkronake buffer permukaan.
- "pointer-gestures" - kontrol saka layar tutul.
- "kendala pointer" - watesan pointer (blocking).
- "Pilihan utami" - kanthi analogi karo X11, njamin operasi clipboard utama (pilihan utama), informasi sing biasane dilebokake karo tombol mouse tengah.
- "acara penunjuk relatif" - acara penunjuk relatif.
- "input teks" - organisasi input teks.
- "xdg-foreign" minangka antarmuka kanggo sesambungan karo permukaan klien "tangga".
- "xdg-dekorasi" - dekorasi jendhela Rendering ing sisih server.
- "xdg-output" - informasi tambahan babagan output video (digunakake kanggo skala pecahan).
- "xwayland-keyboard-grab" - njupuk input ing aplikasi XWayland.
Source: opennet.ru