Zpět na domů

Wayland 1.25: aktualizace protokolu a protokoly

Wayland 1.25 se zaměřuje na stabilitu, dokumentaci a rozšíření pro zadávání textu a barev. Přidány `wl_surface.get_release`, `dispatch_pending_single()` a protokoly xx-input-method, xx-text-input. Zlepšena podpora HDR a IME.

Vydán Wayland 1.25 s IME a správou barev
Advertisement 728x90

# Wayland 1.25: klíčové aktualizace protokolu a rozšíření

  • března 2026 vyšla verze 1.25 protokolu Wayland — grafického serveru, který zajišťuje meziprocesní komunikaci a knihovny pro compository. Aktualizace je zpětně kompatibilní s předchozími verzemi 1.x na úrovni API a ABI. Hlavní důraz je na opravě chyb, zlepšení dokumentace a přidání cílených funkcí protokolu. Licence MIT zůstává pro všechny komponenty.

Referenční compositor Weston se nadále vyvíjí samostatně a poskytuje příklady integrace Wayland do desktopů a embedded systémů.

Změny v základním protokolu

Vývojáři přepracovali dokumentaci: formát DocBook byl nahrazen mdBook na bázi Markdown. Úplně popsány dialekt Wayland XML, model aktualizace obsahu a správa barev.

Přidány nové prvky:

Google AdInline article slot
  • Atribut frozen pro rozhraní s více rodiči — zjednodušuje zpracování stavů ve složitých hierarchiích.
  • Žádost wl_surface.get_release — generuje upozornění na uvolnění bufferu připojeného přes wl_surface.attach. Na rozdíl od wl_buffer.release je událost vázána na konkrétní cyklus vykreslování, což zvyšuje předvídatelnost při renderingu.
  • Funkce wl_display_dispatch_pending_single() — extrahuje a zpracuje přesně jedno událost z fronty, na rozdíl od wl_display_dispatch_pending(), která vyprázdní celou frontu.

Debug výstup WAYLAND_DEBUG nyní podporuje barevné zvýraznění pro lepší čitelnost logů.

Nové a vylepšené protokoly Wayland-Protocols

Od vydání byla přidána rozšíření, která doplňují základní protokol. Dodávají se samostatně a zaměřují se na vstup textu a správu barev.

Protokoly pro vstup textu

  • xx-input-method: Umožňuje aplikacím tvořit text pro compository. Používá se ve virtuálních klávesnicích a IME (Input Method Editor). Klienti generují události vstupu, server je agreguje.
  • xx-text-input: Server posílá text aplikacím. Standardizuje:

- Přenos zadávaného textu.

Google AdInline article slot

- Zpracování fokusu vstupu.

- Zohlednění jazyka, výběru a typu pole (password, multiline apod.).

Správa barev

Protokoly color-management-v1 a color-representation-v1 byly vylepšeny:

Google AdInline article slot
  • Podpora HDR.
  • Definice barevného prostoru pro povrchy Wayland.
  • Integrace s buffery pro přesný přenos barevných profilů.

Tato rozšíření usnadňují implementaci v compositorech jako Weston nebo Mutter.

Praktické využití pro vývojáře

Aktualizace jsou zaměřeny na středně pokročilé a senior vývojáře pracující s vlastními compository. Nový atribut frozen je užitečný ve scénářích s dynamickými rodiči, např. v manažerech overlayů.

Funkce wl_display_dispatch_pending_single() řeší problémy v event-driven architekturách, kde úplné zpracování fronty může blokovat UI.

Pro vývoj IME protokoly xx-input-method a xx-text-input standardizují interakci a minimalizují vendor-specific hacky.

Příklad integrace wl_surface.get_release v klientovi (pseudokód):

wl_surface_add_listener(surface, &surface_listener, data);

static void surface_release(void *data, struct wl_surface *surface, uint32_t serial) {
    // Bufer uvolněn po commit
    buffer_pool_release(buffer);
}

To zajišťuje včasné uvolnění zdrojů bez race conditions.

Co je důležité

  • Dokumentace v mdBook a úplné pokrytí XML/barev urychlují onboarding nových vývojářů.
  • wl_surface.get_release váže události k frame, což zvyšuje přesnost renderingu.
  • wl_display_dispatch_pending_single() poskytuje granulární kontrolu nad událostmi.
  • Nové protokoly vstupu standardizují IME pro kompatibilitu napříč compository.
  • Vylepšení color-management posilují podporu HDR v ekosystému Wayland.

— Editorial Team

Advertisement 728x90

Číst dál