Uitgave Wayland-Protocols 1.33

Na een half jaar ontwikkeling is de release van het pakket wayland-protocols 1.33 gepubliceerd, dat een set protocollen en extensies bevat die de mogelijkheden van het basisprotocol Wayland aanvullen en de nodige functies bieden voor het bouwen van compositors en gebruikersomgevingen.

Alle protocollen doorlopen drie fasen: ontwikkeling, testen en stabilisatie. Na de voltooiing van de ontwikkelingsfase (categorie 'unstable') wordt het protocol in de 'staging'-branch geplaatst en officieel opgenomen in de set wayland-protocols. Na de voltooiing van de testfase wordt het verplaatst naar de stabiele categorie. Protocollen uit de categorie 'staging' kunnen al worden gebruikt in composietservers en clients waar bijbehorende functionaliteit vereist is. In tegenstelling tot de categorie 'unstable' is het in 'staging' verboden om wijzigingen aan te brengen die de compatibiliteit verstoren, maar als er problemen of tekortkomingen worden ontdekt tijdens het testen, kan een aanzienlijke nieuwe versie van het protocol of een andere Wayland-uitbreiding worden vervangen.

In de nieuwe versie is het protocol "linux-dmabuf" dat meerdere grafische kaarten kan delen via DMA-BUF technologie ( stelt ons in staat om een wl_buffer gebaseerd op DMA-BUF te creëren) verplaatst naar de categorie stabiel. Een nieuw protocol "ext-transient-seat" is toegevoegd, dat is geplaatst in de categorie "staging". Dit nieuwe protocol kan worden gebruikt om tijdelijke onafhankelijke sessies (seat) te creëren die zijn bedoeld voor gebruik met virtuele invoerapparaten, geïmplementeerd via de protocollen "virtual_keyboard_unstable_v1" en "wlr_virtual_pointer_unstable_v1". Bijvoorbeeld, bij de implementatie van de mogelijkheid om verbinding te maken met een externe desktop maakt het protocol het mogelijk om voor elke gebruiker een aparte sessie met een virtueel toetsenbord en muis te creëren.

Momenteel bevat wayland-protocols de volgende stabiele protocollen, die terugwaartse compatibiliteit waarborgen:

  • «viewporter» — stelt de client in staat om acties uit te voeren voor schaling en het bijsnijden van randen van oppervlakken aan de serverzijde.
  • 'presentation-time' - zorgt voor videoweergave.
  • «xdg-shell» — interface voor het creëeren en interageren met oppervlakken als ramen, waardoor ze kunnen worden verplaatst, geminimaliseerd, gemaximeerd, vergroot, enzovoort.

Protocollen die worden getest in de 'staging'-lijn:

  • drm-lease - biedt de benodigde middelen voor het vormen van een stereobeeld met verschillende buffers voor het linker en rechter oog bij weergave op virtual reality-headsets.
  • 'ext-session-lock' - defineert de middelen voor sessievergrendeling, bijvoorbeeld tijdens het werken met een screensaver of het weergeven van een authenticatiedialoog.
  • 'single-pixel-buffer' - maakt het mogelijk om een enkelpixelbuffers te creëren die vier 32-bits RGBA-waarden bevatten.
  • 'xdg-activation' - stelt het mogelijk om de focus tussen verschillende eerste-niveau oppervlakken over te dragen (bijvoorbeeld kan één toepassing met xdg-activation de focus op een andere overschakelen).
  • content-type — stelt cliënten in staat om informatie over de weergegeven inhoud door te geven, die gebruikt kan worden om het gedrag op basis van de inhoud te optimaliseren, bijvoorbeeld voor het instellen van specifieke DRM-eigenschappen, zoals 'content type'. Ondersteuning is verklaard voor de volgende inhoudstypen: none (geen informatie over het gegevenstype), photo (weergave van digitale foto's, vereist minimale verwerking), video (video of animatie, vereist nauwkeurigere synchronisatie om haperingen te voorkomen) en game (uitvoering van games, vereist weergave met minimale vertraging). server ext-idle-notify — stelt composietservers in staat om cliënten meldingen over gebruikersinactiviteit te sturen, wat kan worden gebruikt om extra energiebesparende modi te activeren na een bepaalde periode van inactiviteit.
  • tearing-control — maakt het mogelijk om verticale synchronisatie (VSync) met frame-drops uit te schakelen in volledig scherm applicaties, welke worden toegepast om het verschijnen van tearing bij de weergave te voorkomen. In multimedia-applicaties is het verschijnen van artefacten door tearing een ongewenst effect, maar in games kan men zich tevredenstellen met artefacten als het bestrijden ervan leidt tot extra vertraging.
  • ext-foreign-toplevel-list — verkrijging van informatie over oppervlakken die zich op het allerhoogste niveau (toplevel) bevinden, waarmee het mogelijk is om vensters boven andere inhoud vast te zetten, bijvoorbeeld voor het aansluiten van eigen panelen en vensterschakelaars.
  • security-context — stelt in staat cliënten te identificeren die sandbox-isolatie gebruiken. Een cliënt kan een nieuwe verbinding met een composietserver op basis van Wayland registreren en deze verbinden met een beveiligingscontext, waarna de composietmanager de mogelijkheden beheert die beschikbaar zijn voor de ingestelde verbinding op basis van de opgegeven beveiligingscontext.
  • cursor-shape — een alternatieve manier om het uiterlijk van de cursor aan te passen, gebaseerd op het verzenden van een reeks cursorafbeeldingen in plaats van gebonden te zijn aan een oppervlak (wl_surface).
  • cursor-shape — een alternatieve manier om het uiterlijk van de cursor aan te passen, gebaseerd op een serie cursorafbeeldingen in plaats van gebonden te zijn aan een oppervlak (wl_surface).

Protocollen die ontwikkeld worden in de 'unstable' tak:

  • "fullscreen-shell" — beheer van de werking in de volledig scherm modus.
  • "invoermethode" — verwerking van invoermethoden.
  • "idle-inhibit" — blokkering van de screensaver (scherminvoeging) activatie.
  • "input-timestamps" — tijdstempels voor invoer-gebeurtenissen.
  • "keyboard-shortcuts-inhibit" — beheer van het koppelen van sneltoetsen en sneltoetsen.
  • "linux-explicit-synchronization" — Linux-specifiek mechanisme voor buffer-synchronisatie in verband met het oppervlak.
  • "pointer-gestures" — beheer van aanraakschermbedieningen.
  • "pointer constraints" — beperkingen van aanwijsinstellingen (blokkering).
  • "primary-selection" — werkt, net als bij X11, met de primaire klembord (primary selection), waarvan de invoer meestal wordt uitgevoerd met de middelste muisknop.
  • "relative pointer events" — relatieve aanwijsgebeurtenissen.
  • «tablet» — ondersteuning voor invoer van tablets.
  • "tekst-invoer" — organisatie van tekstinvoer.
  • "xdg-foreign" — interface voor interactie met de oppervlakken van een 'buur'-client.
  • «xdg-decoration» — het renderen van vensterdecoraties aan de serverzijde.
  • «xdg-output» — aanvullende informatie over de videouitgang (gebruikt voor fractale schaalverhouding).
  • «xwayland-keyboard-grab» — het vastleggen van invoer in XWayland-applicaties.
  • Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster