ДоступСн Wayland 1.24

ПослС 13 мСсяцСв Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прСдставлСн ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π»ΠΈΠ· ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°, ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° мСТпроцСссного взаимодСйствия ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Wayland 1.24. Π’Π΅Ρ‚ΠΊΠ° 1.24 ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ совмСстима Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ API ΠΈ ABI с выпусками 1.x ΠΈ содСрТит Π² основном исправлСния ошибок ΠΈ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ обновлСния ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°. Наработки ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ MIT. Π­Ρ‚Π°Π»ΠΎΠ½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ сСрвСр Weston, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ ΠΈ Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ для использования Wayland Π² дСсктоп-окруТСниях ΠΈ встраиваСмых Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ…, развиваСтся Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ измСнСния Π² ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅:

  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ интСрфСйс wl_fixes, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌΠΈ интСрфСйсами Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ устранСны собствСнными возмоТностями этих интСрфСйсов. НапримСр, запрос Β«wl_fixes::destroy_registryΒ» позволяСт Π»ΠΈΠΊΠ²ΠΈΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ wl_registry, послС Ρ‡Π΅Π³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π½Π΅ смоТСт Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Π° ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ сСрвСр ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Ρ‡Π΅Ρ€Π΅Π· Π½Π΅Π³ΠΎ событий.
  • Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ интСрфСйсС wl_keyboard::key Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ псСвдо-состояниС Β«repeatedΒ», ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰ΠΈΠ΅ Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ клавиши Π² Π½Π°ΠΆΠ°Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅. Клавиша ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½Π° Π² состояниС Β«repeatedΒ» Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² состояниС Β«pressedΒ», Π½ΠΎ Π΄ΠΎ наступлСния состояния Β«releasedΒ». БвязанныС с Π½ΠΎΠ²Ρ‹ΠΌ состояниСм события ΠΌΠΎΠ³ΡƒΡ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ нСсколько Ρ€Π°Π·, ΠΏΠΎΠΊΠ° клавиша Π½Π°ΠΆΠ°Ρ‚Π°. ИзмСнСниС позволяСт ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΌ сСрвСрам ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Π΅ наТатия ΠΏΡ€ΠΈ ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π½ΠΈΠΈ клавиш ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ состояния, Π° Π½Π΅ просто ΠΊΠ°ΠΊ ΠΏΠΎΡ‚ΠΎΠΊ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… событий наТатия (Β«pressedΒ»), Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΌ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ столом.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ wl_display_dispatch_queue_timeout() ΠΈ wl_display_dispatch_timeout() для диспСтчСризации событий Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Π° (Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ wl_display_dispatch ΠΈ wl_display_dispatch_queue Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‚ 0 Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ отсутствии событий, Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ *_timeiout Π΅Ρ‰Ρ‘ ΠΈ ΠΏΡ€ΠΈ наступлСнии Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Π°).
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ wl_shm_buffer_ref() ΠΈ wl_shm_buffer_unref() для доступа ΠΊ раздСляСмой памяти, связанной c Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ wl_shm_buffer, послС Π΅Π³ΠΎ Π»ΠΈΠΊΠ²ΠΈΠ΄Π°Ρ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠ³Π΄Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ). Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΡ‚Π²ΡΠ·Π°Ρ‚ΡŒ Π±ΡƒΡ„Π΅Ρ€ wl_shm_buffer ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΆΠΈΠ·Π½ΠΈ основного рСсурса wl_buffer, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠΌΡƒ сСрвСру трСбуСтся ΠΎΡ‚Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ Π½ΠΎΠ²ΠΎΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ wl_proxy_get_interface() ΠΈ wl_resource_get_interface(), Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΠ΅ wl_interface для ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ рСсурса, Ρ‡Ρ‚ΠΎ вострСбовано Π² обвязках для языков с динамичСской Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° функция wl_resource_post_error_vargs(), Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰Π°Ρ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ wl_resource_post_error() с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ список Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² для форматирования строки (va_list).

НаиболСС Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Π΅ события, связанныС с Wayland ΠΈ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π΄ΡˆΠΈΠ΅ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ выпуска:

  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Wayland Π² ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½Ρ‹Ρ… Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π°Ρ… NVIDIA.
  • KDE ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Wayland. Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° kwin_x11 ΠΈ kwin_wayland.
  • Ubuntu ΠΈ Kubuntu оставят Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ сСанса Wayland Π² GNOME ΠΈ KDE.
  • Π’ GDM ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ оставлСна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Wayland.
  • GTK ΠΏΠ΅Ρ€Π΅Π²Ρ‘Π» бэкСнд для X11 Π² разряд ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΡ….
  • Π’ Fedora 43 Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ· рСпозитория ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² GNOME для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠΎΠ²Π΅Ρ€Ρ… X-сСрвСра. ВсС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ GNOME c X11 Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π½Π° сСанс Π½Π° Π±Π°Π·Π΅ Wayland.
  • Π’ срСдС Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола Budgie Π±ΡƒΠ΄Π΅Ρ‚ оставлСна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Wayland.
  • Π’ Xfce 4.20 Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° частичная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Wayland.
  • MATE 1.28 с ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Wayland.
  • Wayback β€” ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ сСрвСр Wayland для запуска Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… столов Π½Π° Π±Π°Π·Π΅ X11
  • Компания Valve запустила ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Frog для ускорСния продвиТСния Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² Wayland.
  • Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° построСния графичСских интСрфСйсов Cosmoe, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π°Ρ Wayland ΠΈ API Π² стилС BeOS.
  • Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Π° Wayland Π² Wine.
  • ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Raspberry Pi OS Π½Π° использованиС Wayland.
  • Выпуск графичСского Ρ‚ΡƒΠ»ΠΊΠΈΡ‚Π° FLTK 1.4.0 с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Wayland.
  • Π’ Π½Π°Π±ΠΎΡ€ Wayland-Protocols Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ„Π°Π·Π° продвиТСния ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² β€” Β«experimentalΒ», нацСлСнная Π½Π° сниТСниС Π±Π°Ρ€ΡŒΠ΅Ρ€Π° ΠΏΡ€ΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², ускорСниС довСдСния ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ² Π΄ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ стимулированиС Ρ€Π°Π½Π½Π΅ΠΉ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….
  • AMD Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅Ρ‚ собствСнный ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ сСрвСр ACS, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ Wayland.
  • БСмь Π°Π»ΡŒΡ„Π°-выпусков срСды Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола COSMIC.
  • ОбновлСниС ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹Ρ… сСрвСров: Weston 14.0, Niri 25.05, Wayland Maker 0.5, miracle-wm 0.5, Hyprland 0.49, labwc 0.8.3, Cage 0.2, Wayfire 0.9, Sway 1.11.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π·Π° послСдний Π³ΠΎΠ΄ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠ², Π΄ΠΎΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ… Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Wayland ΠΈ поставляСмых Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ Π½Π°Π±ΠΎΡ€Π΅ Wayland-Protocols:

  • color-management β€” возмоТности для управлСния Ρ†Π²Π΅Ρ‚ΠΎΠΌ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ³ΠΎ динамичСского Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° яркости (HDR, High Dynamic Range).
  • color-representation-v1 β€” Π·Π°Π΄Π°Π½ΠΈΠ΅ Ρ†Π²Π΅Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ прСдставлСния Wayland-повСрхности.
  • xdg-toplevel-tag β€” позволяСт Wayland-ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»ΡΡ‚ΡŒ Ρ‚Π΅Π³ΠΈ ΠΊ повСрхностями Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΠΊΠΎΠ½ послС пСрСзапуска прилоТСния.
  • ext-background-effect β€” ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ эффСктов ΠΊ ΠΏΠΎΠ»ΡƒΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΌ частям Wayland-повСрхности, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Ρ€Π°Π·ΠΌΡ‹Ρ‚ΠΈΠ΅ Ρ„ΠΎΠ½Π°.
  • pointer-warp β€” позволяСт ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ.
  • xx-session-management β€” восстановлСниС состояния ΠΎΠΊΠΎΠ½ для ΠΏΡ€Π΅Ρ€Π²Π°Π½Π½Ρ‹Ρ… сСансов (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, послС Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°).
  • xx-input-method β€” Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° для использования ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π²Π²ΠΎΠ΄Π° тСкста. ext-data-control β€” позволяСт ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠ² Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π°.
  • ext-workspace β€” Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡŽ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… столов ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ события с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ состоянии Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… столов, Π° Ρ‚Π°ΠΊΠΆΠ΅ возмоТности для Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ ΠΈ Π΄Π΅Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… столов.
  • xdg-system-bell β€” позволяСт Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ систСмный сигнал, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² эмуляторС Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ².
  • xdg-toplevel-icon β€” для привязки ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΊ ΠΎΠΊΠ½Ρƒ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня.
  • ext-image-capture-source ΠΈ ext-image-copy-capture β€” Π·Π°Ρ…Π²Π°Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Π½Π° экран ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°.
  • fifo β€” Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ FIFO-ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ (ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΡ€ΠΈΡˆΡ‘Π» β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΡƒΡˆΡ‘Π») ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ обновлСния содСрТимого ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠΉ повСрхности.
  • commit-timing β€” позволяСт ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΊ содСрТимому повСрхности (ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ сСрвСр Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΏΠΎ возмоТности Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ врСмя, Π½ΠΎ Π½Π΅ Ρ€Π°Π½ΡŒΡˆΠ΅).

Напомним, Ρ‡Ρ‚ΠΎ Wayland прСдставляСт собой ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» взаимодСйствия ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠ³ΠΎ сСрвСра ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с Π½ΠΈΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ отрисовку своих ΠΎΠΊΠΎΠ½ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ Π±ΡƒΡ„Π΅Ρ€Π΅, пСрСдавая ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± обновлСниях ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½ΠΎΠΌΡƒ сСрвСру, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ содСрТимоС Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для формирования ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π° с ΡƒΡ‡Ρ‘Ρ‚ΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… нюансов, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΎΠΊΠΎΠ½ ΠΈ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ. Π˜Π½Ρ‹ΠΌΠΈ словами, ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚Π½Ρ‹ΠΉ сСрвСр Π½Π΅ прСдоставляСт API для отрисовки ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов, Π° ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΡƒΠΆΠ΅ сформированными ΠΎΠΊΠ½Π°ΠΌΠΈ, Ρ‡Ρ‚ΠΎ позволяСт ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ использовании высокоуровнСвых Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ GTK ΠΈ Qt, Π±Π΅Ρ€ΡƒΡ‰ΠΈΡ… Π½Π° сСбя Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΏΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ΅ содСрТимого ΠΎΠΊΠΎΠ½.

Wayland Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ X11, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ послСднСго ΠΈΠ·ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Π²ΠΎΠ΄ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, Π½Π΅ позволяСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ содСрТимому ΠΎΠΊΠΎΠ½ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ допускаСт ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ связанных с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ событий Π²Π²ΠΎΠ΄Π°. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° прямой Ρ€Π°Π±ΠΎΡ‚Ρ‹ c Wayland Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° примСняСмых Π² Linux графичСских Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ GTK, Qt, SDL, FLTK, wxWidgets, Clutter ΠΈ EFL (Enlightenment Foundation Library).

ВзаимодСйствиС с Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ обСспСчСниСм Π² Wayland/Weston, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π²ΠΈΠ΄Π΅ΠΎΡ€Π΅ΠΆΠΈΠΌΠΎΠ² (drm modesetting) ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ (GEM для i915 ΠΈ TTM для radeon ΠΈ nouveau) графичСских ΠΊΠ°Ρ€Ρ‚, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ядра, Ρ‡Ρ‚ΠΎ позволяСт ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±Π΅Π· ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ ΡΡƒΠΏΠ΅Ρ€ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Для обСспСчСния выполнСния ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… X11-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΈ Π½Π° Π±Π°Π·Π΅ Wayland ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ DDX-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ XWayland (Device-Dependent X), ΠΏΠΎΡ…ΠΎΠΆΠΈΠΉ ΠΏΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π° Xwin ΠΈ Xquartz для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ Win32 ΠΈ macOS.

 ДоступСн Wayland 1.24  ДоступСн Wayland 1.24


Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ