Rilis Wayland-Protokol 1.35

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ выпуск ΠΏΠ°ΠΊΠ΅Ρ‚Π° wayland-protocols 1.35, содСрТащСго Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡŽΡ‚ возмоТности Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Wayland ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ возмоТности, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для построСния ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹Ρ… сСрвСров ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ.

Semua protokol secara berurutan melewati tiga fase - pengembangan, pengujian, dan stabilisasi. Setelah menyelesaikan tahap pengembangan (kategori β€œtidak stabil”), protokol ditempatkan di cabang β€œstaging” dan secara resmi dimasukkan dalam kumpulan protokol wayland, dan setelah pengujian selesai, protokol tersebut dipindahkan ke kategori stabil. Protokol dari kategori β€œstaging” sudah dapat digunakan di server komposit dan klien yang memerlukan fungsionalitas terkait. Berbeda dengan kategori β€œtidak stabil”, β€œstaging” melarang perubahan yang melanggar kompatibilitas, tetapi jika masalah dan kekurangan teridentifikasi selama pengujian, penggantian dengan versi protokol baru yang signifikan atau ekstensi Wayland lainnya tidak dikecualikan.

ΠΎΠ²ΠΎΠΉ Срсии:

  • Π’ разряд ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» tablet-v2, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ срСдства для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Π²ΠΎΠ΄Π° с графичСских ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚ΠΎΠ².
  • Π’ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ Β«stagingΒ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» alpha-modifier, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ ΠΌΠ΅Π½ΡΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ прозрачности повСрхности ΠΈ Π²Ρ‹Π½ΠΎΡΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ прозрачности Π½Π° сторону ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠ³ΠΎ сСрвСра, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π°Π΄Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ эти ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ KMS.
  • Π’ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» xdg-shell Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° рСкомСндация Π½Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π΅ΠΊΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π½Π΅ гСомСтричСских Π³Ρ€Π°Π½ΠΈΡ† ΠΎΠΊΠ½Π°, Π² случаС использования ΠΌΠΎΠ·Π°ΠΈΡ‡Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ ΠΎΠΊΠΎΠ½.

Saat ini, protokol wayland mencakup protokol stabil berikut, yang menyediakan kompatibilitas ke belakang:

  • "viewporter" - memungkinkan klien melakukan tindakan penskalaan dan pemangkasan tepi permukaan di sisi server.
  • "waktu presentasi" - menyediakan tampilan video.
  • "xdg-shell" adalah antarmuka untuk membuat dan berinteraksi dengan permukaan sebagai jendela, yang memungkinkan Anda memindahkannya di sekitar layar, memperkecil, memperluas, mengubah ukuran, dll.
  • Β«linux-dmabufΒ» β€” обСспСчиваСт совмСстноС использованиС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ DMA-BUF (позволяСт ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ wl_buffer Π½Π° Π±Π°Π·Π΅ DMA-BUF).
  • Β«tabletΒ» β€” оргаизация Π²Π²ΠΎΠ΄Π° с графичСских ΠΏΠ»Π°Π½ΡˆΠ΅Ρ‚ΠΎΠ².

Protokol yang diuji di cabang β€œstaging”:

  • drm-lease - menyediakan sumber daya yang diperlukan untuk menghasilkan gambar stereo dengan buffer berbeda untuk mata kiri dan kanan saat mengeluarkannya ke headset realitas virtual.
  • "ext-session-lock" - mendefinisikan cara mengunci sesi, misalnya, saat screen saver sedang berjalan atau dialog otentikasi ditampilkan.
  • "single-pixel-buffer" - memungkinkan Anda membuat buffer piksel tunggal yang mencakup empat nilai RGBA 32-bit.
  • "aktivasi xdg" - memungkinkan Anda mentransfer fokus antara permukaan tingkat pertama yang berbeda (misalnya, menggunakan aktivasi xdg, satu aplikasi dapat mengalihkan fokus ke aplikasi lain).
  • tipe konten - Memungkinkan klien meneruskan informasi tentang konten yang sedang ditampilkan ke server komposit, yang dapat digunakan untuk mengoptimalkan perilaku sadar konten, seperti mengatur properti DRM tertentu seperti "tipe konten". Dukungan untuk tipe konten berikut dinyatakan: tidak ada (tidak ada informasi tentang tipe data), foto (output foto digital, memerlukan pemrosesan minimal), video (video atau animasi, diperlukan sinkronisasi yang lebih tepat untuk menghindari kegagapan) dan permainan (peluncuran permainan, keluaran dari penundaan minimum).
  • ext-idle-notify - Memungkinkan server komposit mengirim pemberitahuan ke klien tentang ketidakaktifan pengguna, yang dapat digunakan untuk mengaktifkan mode hemat daya tambahan setelah waktu tidak aktif tertentu.
  • kontrol robek - memungkinkan Anda menonaktifkan sinkronisasi vertikal (VSync) dengan pulsa redaman vertikal dalam aplikasi layar penuh, digunakan untuk melindungi output dari robekan. Dalam aplikasi multimedia, artefak akibat robekan adalah efek yang tidak diinginkan, namun dalam program permainan, artefak dapat ditoleransi jika penanganannya menyebabkan penundaan tambahan.
  • ext-foreign-toplevel-list - Mengambil informasi tentang permukaan yang ditempatkan di tingkat atas, yang memungkinkan Anda mengatur jendela untuk dipasang di atas konten lain, misalnya, untuk memasang panel dan sakelar jendela Anda sendiri.
  • konteks keamanan - memungkinkan Anda mengidentifikasi klien menggunakan isolasi kotak pasir. Klien dapat mendaftarkan koneksi baru ke server komposit berbasis Wayland dan melampirkan konteks keamanan ke dalamnya, setelah itu manajer komposit akan membatasi kemampuan yang tersedia untuk koneksi yang dibuat berdasarkan konteks keamanan yang ditentukan.
  • bentuk kursor adalah cara alternatif untuk menyesuaikan tampilan kursor, berdasarkan meneruskan serangkaian gambar kursor alih-alih menjepret ke permukaan (wl_surface).
  • Β«ext-transient-seatΒ» β€” ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для создания Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… нСзависимых сСансов (seat), рассчитанных Π½Π° использованиС вмСстС с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ устройствами Π²Π²ΠΎΠ΄Π°. НапримСр, ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ возмоТности ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΌΡƒ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌΡƒ столу ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» позволяСт ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ сСанс с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€ΠΎΠΉ ΠΈ ΠΌΡ‹ΡˆΡŒΡŽ.
  • Β«xdg-toplevel-dragΒ» β€” Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Β«drag & dropΒ» Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ прикрСплСния ΠΎΠΊΠΎΠ½ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ пСрСмСщСния, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использовано, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ пСрСтаскивания ΠΌΡ‹ΡˆΡŒΡŽ ΠΏΠ°Π½Π΅Π»Π΅ΠΉ инструмСнтов ΠΈΠ»ΠΈ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. Новый ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ отсоСдиняСмыС части ΠΎΠΊΠ½Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈ пСрСтаскивании ΠΈΠ· этого ΠΎΠΊΠ½Π° становятся Π½ΠΎΠ²Ρ‹ΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ²Π΅Ρ€Ρ… ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΎΠΊΠ½Π° ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½ΠΈΠ΅ΠΌ.
  • Β«xdg-dialogΒ» β€” позволяСт Π½Π°Π·Π½Π°Ρ‡Π°Ρ‚ΡŒ повСрхностям Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΈ, спСцифичныС для Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… ΠΎΠΊΠΎΠ½, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‚ взаимодСйствиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ интСрфСйса.
  • Β«linux-drm-syncobjΒ» β€” прСдоставляСт инструмСнты для явной синхронизациии Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² синхронизации DRM (Direct Rendering Manager). ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ Π² контСкстС синхронизации ΠΏΡ€ΠΈ отрисовкС Π² Π±ΡƒΡ„Π΅Ρ€ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°ΠΌΠΈ Π½Π° Π±Π°Π·Π΅ графичСских API Vulkan ΠΈ OpenGL (рСализация базируСтся Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Ρ… Π² Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ…). Новый ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π΄Π°Ρ‘Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ опСрация отрисовки Π² Π±ΡƒΡ„Π΅Ρ€ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π° Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹ΠΉ Π±ΡƒΡ„Π΅Ρ€.

Protokol yang sedang dikembangkan di cabang β€œtidak stabil”:

  • "fullscreen-shell" - kontrol pekerjaan dalam mode layar penuh.
  • "metode masukan" - memproses metode masukan.
  • "idle-inhibit" - memblokir peluncuran screensaver (screen saver).
  • "input-timestamps" - stempel waktu untuk peristiwa input.
  • "keyboard-shortcuts-inhibit" - mengontrol lampiran pintasan keyboard dan tombol pintas.
  • "linux-explicit-synchronization" adalah mekanisme khusus Linux untuk menyinkronkan buffer yang terikat permukaan.
  • "gerakan penunjuk" - kontrol dari layar sentuh.
  • "batasan penunjuk" - batasan penunjuk (pemblokiran).
  • "pemilihan utama" - dengan analogi dengan X11, ini memastikan pengoperasian clipboard utama (pemilihan utama), informasi yang biasanya dimasukkan dengan tombol tengah mouse.
  • "peristiwa penunjuk relatif" - peristiwa penunjuk relatif.
  • "input teks" - organisasi input teks.
  • "xdg-foreign" adalah antarmuka untuk berinteraksi dengan permukaan klien "tetangga".
  • "xdg-decoration" - menampilkan dekorasi jendela di sisi server.
  • "xdg-output" - informasi tambahan tentang output video (digunakan untuk penskalaan pecahan).
  • "xwayland-keyboard-grab" - menangkap masukan dalam aplikasi XWayland.
  • Sumber: opennet.ru

Tambah komentar