Sortie des Protocoles Wayland 1.46

La version du paquet wayland-protocols 1.46 a été publiée, contenant un ensemble de protocoles et d'extensions qui complÚtent le protocole de base Wayland et fournissent des fonctionnalités essentielles pour la construction de serveurs composites et d'environnements utilisateur.

Dans la nouvelle version :

  • Un protocole expĂ©rimental xx-input-method a Ă©tĂ© ajoutĂ©, permettant aux applications de mettre en Ɠuvre des mĂ©thodes de saisie de texte pour les serveurs composites et de former le texte saisi, pouvant ĂȘtre utilisĂ©, par exemple, pour crĂ©er des claviers virtuels et des couches IME (Input Method Editor) pour traiter les entrĂ©es.
  • Un protocole expĂ©rimental xx-text-input a Ă©tĂ© ajoutĂ©, permettant aux serveurs composites de mettre en Ɠuvre des mĂ©thodes de saisie et d'envoyer du texte aux applications. Le protocole standardise l'interaction entre le serveur composite et les applications, et permet de gĂ©rer des fonctionnalitĂ©s telles que la transmission du texte saisi, le traitement des Ă©vĂ©nements de changement de focus de saisie et la prise en compte des spĂ©cificitĂ©s des champs de saisie (langue, sĂ©lection de texte, type de contenu).
  • Les protocoles color-management-v1 et color-representation-v1 ont Ă©tĂ© amĂ©liorĂ©s, offrant des capacitĂ©s de gestion des couleurs, de prise en charge de la HDR et de dĂ©finition de la reprĂ©sentation des couleurs de la surface Wayland.

Tous les protocoles passent successivement par les phases de dĂ©veloppement, de test et de stabilisation. Une fois la phase de dĂ©veloppement terminĂ©e (catĂ©gorie « unstable »), le protocole est placĂ© dans la branche « staging » et est officiellement intĂ©grĂ© Ă  l'ensemble des wayland-protocols ; aprĂšs la fin des tests, il est dĂ©placĂ© dans la catĂ©gorie stable. Les protocoles de la catĂ©gorie « staging » peuvent dĂ©jĂ  ĂȘtre utilisĂ©s dans les serveurs composites et les clients oĂč la fonctionnalitĂ© associĂ©e est requise. Contrairement Ă  la catĂ©gorie « unstable », les changements qui compromettent la compatibilitĂ© sont interdits dans « staging », mais en cas de problĂšmes et de lacunes identifiĂ©s lors des tests, le remplacement par une nouvelle version significative du protocole ou une autre extension Wayland n'est pas exclu.

Pour faciliter la fourniture des protocoles aux dĂ©veloppeurs et encourager leur mise en Ɠuvre prĂ©coce dans des projets existants, depuis la version prĂ©cĂ©dente, une phase « expĂ©rimentale » a Ă©tĂ© ajoutĂ©e, permettant des changements qui compromettent la compatibilitĂ© et l'ajout de protocoles « bruts » qui peuvent ĂȘtre progressivement amenĂ©s Ă  un niveau acceptable. Si la constitution d'une Ă©quipe de soutien et l'obtention d'un certain nombre de confirmations (ACK) de la part des participants Ă  la rĂ©vision sont nĂ©cessaires pour qu'un protocole atteigne la phase « staging », il suffit qu'il n'y ait pas d'objections (NACK) pendant une pĂ©riode de rĂ©vision de deux semaines pour qu'il soit inclus dans « experimental ».

Actuellement, le jeu de protocoles wayland-protocols comprend les protocoles stables suivants, qui assurent la compatibilité ascendante :

  • « viewporter » — permet au client d'effectuer des actions de mise Ă  l'Ă©chelle et de rognage des bords de la surface cĂŽtĂ© serveur.
  • « presentation-time » — assure l'affichage de la vidĂ©o.
  • «xdg-shell» – interface de crĂ©ation et d'interaction avec des surfaces en tant que fenĂȘtres, permettant de les dĂ©placer sur l'Ă©cran, de les minimiser, de les maximiser, de redimensionner, etc.
  • «linux-dmabuf» – fournit des capacitĂ©s pour crĂ©er des wl_buffer sur la base de DMA-BUF.
  • «tablet» – organisation de l'entrĂ©e Ă  partir de tablettes graphiques.

Protocoles testés dans la branche « staging » :

  • drm-lease — fournit les ressources nĂ©cessaires pour crĂ©er une image stĂ©rĂ©o avec des tampons diffĂ©rents pour l'Ɠil gauche et l'Ɠil droit lors de l'affichage sur des casques de rĂ©alitĂ© virtuelle.
  • «ext-session-lock» — dĂ©finit les moyens de verrouillage de session, par exemple, lors de l'utilisation d'un Ă©conomiseur d'Ă©cran ou lors de l'affichage d'une boĂźte de dialogue d'authentification.
  • «single-pixel-buffer» — permet de crĂ©er des tampons de un pixel comprenant quatre valeurs 32 bits RGBA.
  • «xdg-activation» — permet de transfĂ©rer le focus entre diffĂ©rentes surfaces de niveau supĂ©rieur (par exemple, avec xdg-activation, une application peut dĂ©placer le focus sur une autre).
  • content-type — permet aux clients de transmettre au serveur composite des donnĂ©es sur le contenu affichĂ©, qui peuvent ĂȘtre utilisĂ©es pour optimiser le comportement en fonction du contenu, par exemple, en dĂ©finissant des propriĂ©tĂ©s DRM spĂ©cifiques telles que le « content type ». Le support des types de contenu suivants a Ă©tĂ© annoncĂ© : none (pas d'informations sur le type de donnĂ©es), photo (affichage de photos numĂ©riques nĂ©cessitant un traitement minimal), video (vidĂ©os ou animations, nĂ©cessitant une synchronisation plus prĂ©cise pour Ă©viter les ralentissements) et game (lancement de jeux, nĂ©cessitant une sortie avec un minimum de latence).
  • tearing-control — permet de dĂ©sactiver la synchronisation verticale (VSync) dans les applications en plein Ă©cran avec une impulsion de suppression de frame, utilisĂ©e pour Ă©viter les dĂ©chirements lors de l'affichage. Dans les applications multimĂ©dias, l'apparition d'artefacts causĂ©s par le tearing est un effet indĂ©sirable, mais dans les programmes de jeux, la prĂ©sence d'artefacts peut ĂȘtre tolĂ©rĂ©e si la lutte contre ceux-ci entraĂźne des retards supplĂ©mentaires.
  • ext-foreign-toplevel-list — obtention d'informations sur les surfaces placĂ©es au niveau supĂ©rieur, permettant d'organiser le maintien des fenĂȘtres au-dessus d'un autre contenu, par exemple pour connecter des panneaux et des commutateurs propres.
  • ext-foreign-toplevel-list — obtention d'informations sur les surfaces placĂ©es au niveau supĂ©rieur, permettant d'organiser le maintien des fenĂȘtres au-dessus d'un autre contenu, par exemple pour connecter des panneaux et des commutateurs propres.
  • security-context — permet d'identifier les clients utilisant l'isolation sandbox. Le client peut enregistrer une nouvelle connexion au serveur composite basĂ© sur Wayland et y attacher un contexte de sĂ©curitĂ©, aprĂšs quoi, conformĂ©ment au contexte de sĂ©curitĂ© spĂ©cifiĂ©, le gestionnaire de composition restreindra les capacitĂ©s disponibles pour la connexion Ă©tablie.
  • cursor-shape — une mĂ©thode alternative de configuration de l'apparence du curseur, basĂ©e sur la transmission d'une sĂ©rie d'images de curseur au lieu d'une liaison Ă  la surface (wl_surface).
  • «ext-transient-seat» – conçu pour crĂ©er des sessions temporaires indĂ©pendantes (seat), destinĂ©es Ă  ĂȘtre utilisĂ©es avec des dispositifs d'entrĂ©e virtuels. Par exemple, lors de la mise en Ɠuvre de la possibilitĂ© de connexion Ă  un bureau distant le protocole permet de crĂ©er une session distincte pour chaque utilisateur avec un clavier et une souris virtuels.
  • «xdg-toplevel-drag» – Ă©tend le mĂ©canisme «glisser-dĂ©poser» avec la possibilitĂ© d'attacher des fenĂȘtres de niveau supĂ©rieur Ă  une opĂ©ration de dĂ©placement, ce qui peut ĂȘtre utilisĂ©, par exemple, pour organiser le glissement de panneaux d'outils ou d'onglets de navigateur. Le nouveau protocole permet de crĂ©er des parties dĂ©tachables de la fenĂȘtre, qui, lorsqu'elles sont glissĂ©es hors de cette fenĂȘtre, deviennent de nouvelles fenĂȘtres et peuvent ĂȘtre dĂ©placĂ©es au-dessus d'une fenĂȘtre existante avant d'ĂȘtre reconnectĂ©es.
  • «xdg-dialog» – permet d'attribuer des caractĂ©ristiques spĂ©cifiques aux fenĂȘtres de niveau supĂ©rieur, par exemple, il est possible de crĂ©er des dialogues modaux qui bloquent l'interaction de l'utilisateur avec le reste de l'interface.
  • «linux-drm-syncobj» — fournit des outils pour la synchronisation explicite des tampons Ă  l'aide d'objets de synchronisation DRM (Direct Rendering Manager). Dans le contexte de la synchronisation lors du rendu dans un tampon, le protocole proposĂ© vise Ă  amĂ©liorer l'interaction avec les pilotes basĂ©s sur les API graphiques Vulkan et OpenGL (la mise en Ɠuvre repose sur les gestionnaires au sein des pilotes). Ce nouveau protocole permet de s'assurer que l'opĂ©ration de rendu dans le tampon est terminĂ©e avant que le gestionnaire de composition n'affiche ce tampon.
  • alpha-modifier, permettant aux clients de modifier le niveau de transparence de la surface et de dĂ©placer les opĂ©rations de gestion de la transparence vers le serveur composite, qui peut ensuite rediriger ces opĂ©rations vers KMS.
  • xdg-toplevel-icon — liaison d'une icĂŽne Ă  une fenĂȘtre de niveau supĂ©rieur.
  • ext-image-capture-source et ext-image-copy-capture — organisation de la capture de contenu affichĂ© Ă  l'Ă©cran.
  • xdg-system-bell — permet de gĂ©nĂ©rer un signal systĂšme qui peut ĂȘtre utilisĂ©, par exemple, comme alerte dans les Ă©mulateurs de terminal. La forme de sortie du signal est laissĂ©e Ă  la discrĂ©tion du gestionnaire de composition, cela peut ĂȘtre non seulement un son, mais aussi une rĂ©ponse visuelle.
  • fifo — met en Ɠuvre un mĂ©canisme FIFO (premier arrivĂ©, premier parti) pour le traitement de la file d'attente de mise Ă  jour du contenu de la surface affichĂ©e. D'un point de vue pratique, le protocole permet d'utiliser l'attente de la fin du dĂ©calage vertical (vblank) au lieu d'appels de rappel Ă  chaque fois qu'il est prĂȘt Ă  afficher un nouveau cadre, ce qui rĂ©sout le problĂšme d'une charge GPU Ă©levĂ©e en utilisant VSync.
  • commit-timing — permet d'associer une limite de temps au contenu d'une surface (le serveur composite doit afficher la modification du contenu dans la mesure du possible aprĂšs le temps indiquĂ©, mais pas avant).
  • ext-data-control — permet aux clients privilĂ©giĂ©s de gĂ©rer le traitement des donnĂ©es, par exemple, pour la mise en Ɠuvre de gestionnaires de presse-papiers.
  • ext-workspace — met en Ɠuvre le concept des bureaux virtuels et propose des Ă©vĂ©nements contenant des informations sur l'Ă©tat des bureaux, ainsi que des possibilitĂ©s d'activation et de dĂ©sactivation des bureaux. Le protocole peut ĂȘtre utilisĂ© pour crĂ©er des panneaux et des indicateurs affichant la liste des bureaux virtuels disponibles et permettant de naviguer entre eux.
  • color-management — offre des fonctionnalitĂ©s pour la gestion des couleurs et la prise en charge de la plage dynamique Ă©tendue (HDR, High Dynamic Range). GrĂące Ă  l'extension ajoutĂ©e, les applications clientes peuvent obtenir des informations sur les propriĂ©tĂ©s de sortie liĂ©es Ă  la reproduction des couleurs et transmettre au serveur composite des donnĂ©es sur les caractĂ©ristiques de reproduction des couleurs de leur contenu. Dans le serveur composite, ces informations peuvent ĂȘtre utilisĂ©es pour gĂ©rer automatiquement les couleurs lors de l'affichage de contenu sur diffĂ©rents dispositifs de sortie, par exemple, pour transformer le contenu en un format appropriĂ© pour l'affichage sur des moniteurs HDR. Les espaces colorimĂ©triques sont dĂ©crits Ă  l'aide de profils ICC.
  • xdg-toplevel-tag — permet aux clients Wayland d'attacher des Ă©tiquettes aux surfaces de niveau supĂ©rieur, que le serveur composite peut utiliser pour identifier les fenĂȘtres aprĂšs le redĂ©marrage de l'application (par exemple, l'application peut dĂ©finir les Ă©tiquettes « main window » et « settings » pour la fenĂȘtre principale et la fenĂȘtre de paramĂštres). Cette identification est utile pour retrouver la position, la taille et les propriĂ©tĂ©s des fenĂȘtres aprĂšs un redĂ©marrage, ainsi que pour dĂ©terminer des rĂšgles spĂ©ciales pour certains types de fenĂȘtres.
  • color-representation — dĂ©finition de la reprĂ©sentation colorimĂ©trique d'une surface Wayland. Les clients Wayland peuvent transmettre des mĂ©tadonnĂ©es nĂ©cessaires pour dĂ©terminer l'opacitĂ©, le modĂšle de couleur, la sous-Ă©chantillonnage et la plage de quantification, appliquĂ©es lors de la conversion du tampon de donnĂ©es correspondant au modĂšle de couleur YCbCr en reprĂ©sentation RGB.
  • ext-background-effect — application d'effets aux parties semi-transparentes d'une surface Wayland, telles que le flou d'arriĂšre-plan.
  • pointer-warp — permet Ă  l'application de dĂ©placer instantanĂ©ment le pointeur Ă  une position spĂ©cifiĂ©e.

Protocoles développés dans la branche « experimental » :

  • xx-session-management — restauration de l'Ă©tat des fenĂȘtres pour des sessions interrompues (par exemple, aprĂšs un plantage du gestionnaire composite).

Protocoles en cours de développement dans la branche «unstable»:

  • «fullscreen-shell» — gestion du mode plein Ă©cran.
  • «input-method» — traitement des mĂ©thodes d'entrĂ©e.
  • «idle-inhibit» — dĂ©sactivation du lancement de l'Ă©conomiseur d'Ă©cran.
  • «input-timestamps» — horodatages pour les Ă©vĂ©nements d'entrĂ©e.
  • «keyboard-shortcuts-inhibit» — gestion de l'attachement des combinaisons de touches et des raccourcis clavier.
  • «linux-explicit-synchronization» — mĂ©canisme de synchronisation des tampons spĂ©cifique Ă  Linux liĂ© Ă  la surface.
  • «pointer-gestures» — contrĂŽle des gestes des Ă©crans tactiles.
  • «pointer constraints» — contraintes des pointeurs (blocage).
  • «primary-selection» — de maniĂšre similaire Ă  X11, fournit un fonctionnement du tampon de sĂ©lection primaire, dont l'insertion d'informations se fait gĂ©nĂ©ralement par le bouton central de la souris.
  • «relative pointer events» — Ă©vĂ©nements de pointeur relatifs.
  • «text-input» — gestion de l'entrĂ©e de texte.
  • «xdg-foreign» — interface d'interaction avec les surfaces du client «voisin».
  • «xdg-decoration» — rendu des dĂ©corations des fenĂȘtres cĂŽtĂ© serveur.
  • «xdg-output» — informations supplĂ©mentaires sur la sortie vidĂ©o (utilisĂ©e pour le zoom fractionnĂ©).
  • «xwayland-keyboard-grab» — capture de l'entrĂ©e dans les applications XWayland.

Source : opennet.ru

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster