Wayland est un produit logiciel open source qui a été conçu dès le départ pour remplacer le système X Window, qui est actuellement utilisé dans 99,9% de tous les systèmes Linux. systèmes d'exploitation basés sur les bases de données.
Le projet comprend le serveur d'affichage principal, appelé Wayland, ainsi qu'un compositeur, appelé Weston. Bien que Wayland lui-même ne soit pas réellement un serveur X11, il a été conçu comme un protocole de compositeur afin de parler à des clients comme Weston, qui peut fonctionner en tant que client X.
Wayland peut fonctionner en tant que serveur d'affichage autonome en plus de KMS (Kernel Mode-Setting) et des périphériques d'entrée evdev, en tant que client Wayland, ou en tant qu'application traditionnelle destinée au système X Window. En outre, Weston peut fonctionner sous KMS ou en tant que client X11 et convient aux appareils mobiles ou embarqués.
D'autres clients possibles pour ce serveur d'affichage révolutionnaire de nouvelle génération peuvent être un autre serveur d'affichage, des serveurs X11 (plein écran ou sans racine) ou toute autre application standard. Une implémentation de la bibliothèque C de Wayland est également disponible.
Alors que Wayland fournit tous les composants nécessaires au bon fonctionnement du serveur d'affichage, le composeur Weston est livré avec divers clients de démonstration, qui peuvent être utilisés par les développeurs comme exemples pour la construction de clients complexes de minerai.
Les environnements de bureau GNOME et KDE Plasma bien connus et largement utilisés seront probablement les premiers à être portés sur le serveur d'affichage Wayland de nouvelle génération. Cependant, il faudra probablement quelques années à tous les développeurs d'applications Linux pour migrer (lire: port) leurs applications vers Wayland.
Les développeurs Linux et les développeurs d'applications peuvent trouver une documentation détaillée sur la façon de porter leurs applications et systèmes d'exploitation sur Wayland sur la page d'accueil du projet (voir ci-dessus). Les utilisateurs finaux peuvent tester Wayland aujourd'hui en utilisant le système d'exploitation basé sur Linux RebeccaBlackOS.
Quoi de neuf dans cette version:
- La documentation de base du protocole a reçu de nombreuses améliorations pour en améliorer la clarté et la cohérence. Parallèlement à cela, de nombreuses zones vides de la documentation du protocole ont été étoffées.
- Une nouvelle API de journalisation wl_display_add_protocol fournit une nouvelle façon interactive de déboguer les requêtes; avec cela sont de nouvelles API pour examiner les clients et leurs ressources. Cela est analogue à l'utilisation de WAYLAND_DEBUG = 1, mais plus puissante car elle permet l'analyse de l'heure d'exécution des données du journal, par exemple via une vue d'interface utilisateur.
- Des améliorations ont été apportées à la façon dont le scanner XML de protocole gère l'identification de la version dans les en-têtes de protocole. Cela permet une meilleure détection et une gestion de secours lorsque les compositeurs et les clients prennent en charge différentes versions de leurs protocoles.
- En plus de ces changements visibles par l'utilisateur, il y a eu une variété d'autres refactorisations et améliorations de code dans Wayland 1.12.
- Le code interne de Weston a été restructuré en une nouvelle bibliothèque logicielle, libweston. Ceci est destiné à être utilisé par d'autres efforts de compositeur qui veulent utiliser plus facilement les fonctionnalités internes de Weston. Le propre compositeur de Weston est maintenant un utilisateur de cette bibliothèque.
- De plus, une nouvelle librairie nommée libweston-desktop fournit un niveau de fonctionnalité supplémentaire intéressant les compositeurs implémentant un style d'interface graphique de type métaphore de bureau. Cette API de bibliothèque est conçue autour de la fonctionnalité xdg_shell, permettant de gérer les fenêtres contextuelles, l'état des fenêtres et l'interfaçage avec Xwayland.
- Libweston et libweston-desktop doivent être traités comme des bibliothèques instables (c'est-à-dire que leurs API sont sujettes à modification). Un schéma de gestion des versions a été adopté pour leur provisionnement ABI afin de permettre la détection des ruptures lors de la compilation. En d'autres termes, cela permet aux utilisateurs de détecter les incompatibilités au moment de l'installation dans leur système de conditionnement plutôt que lorsqu'ils essaient d'utiliser le logiciel. Le système est conçu pour aider non seulement avec les composants Weston publiés, mais aussi pour signaler les incohérences lors de l'utilisation des instantanés de développement des bibliothèques, afin d'aider les développeurs à éviter les problèmes dus aux incohérences.
- La prise en charge de la nouvelle version 6 du protocole xdg_shell a été implémentée dans le composeur Weston et tous les clients y sont portés. Voir les notes de version de wayland-protocols 1.7 pour plus de détails sur les changements inclus.
- Une API de verrouillage et de confinement de pointeur est implémentée pour Weston à l'aide du protocole wp_pointer_constraints, afin de permettre aux clients de définir des régions de fenêtre pour confiner le pointeur. Ces régions peuvent être irrégulières; un client est inclus pour démontrer le confinement dans une région en forme de H, par exemple. Un protocole de pointeur relatif (utilisant wl_relative_pointer) a également été introduit, ce qui permet aux clients de continuer à recevoir des deltas de mouvement de pointeur même lorsque la position absolue du pointeur est coupée par exemple sur le bord du moniteur.
- Le backend Raspberry Pi (rpi-backend) et le moteur de rendu ont été supprimés. Ce code dépendait d'une pile de pilotes propriétaire et ne pouvait pas être géré par Weston.
- Plusieurs autres fonctionnalités, améliorations de build, corrections de bogues, refactorings de code, raffinements aux processus de destruction, etc. sont incluses.
Quoi de neuf dans la version:
- La documentation du protocole de base a reçu de nombreuses améliorations pour en améliorer la clarté et la cohérence. Parallèlement à cela, de nombreuses zones vides de la documentation du protocole ont été étoffées.
- Une nouvelle API de journalisation wl_display_add_protocol fournit une nouvelle façon interactive de déboguer les requêtes; avec cela sont de nouvelles API pour examiner les clients et leurs ressources. Cela est analogue à l'utilisation de WAYLAND_DEBUG = 1, mais plus puissante car elle permet l'analyse de l'heure d'exécution des données du journal, par exemple via une vue d'interface utilisateur.
- Des améliorations ont été apportées à la façon dont le scanner XML de protocole gère l'identification de la version dans les en-têtes de protocole. Cela permet une meilleure détection et une gestion de secours lorsque les compositeurs et les clients prennent en charge différentes versions de leurs protocoles.
- En plus de ces changements visibles par l'utilisateur, il y a eu une variété d'autres refactorisations et améliorations de code dans Wayland 1.12.
- Le code interne de Weston a été restructuré en une nouvelle bibliothèque logicielle, libweston. Ceci est destiné à être utilisé par d'autres efforts de compositeur qui veulent utiliser plus facilement les fonctionnalités internes de Weston. Le propre compositeur de Weston est maintenant un utilisateur de cette bibliothèque.
- De plus, une nouvelle librairie nommée libweston-desktop fournit un niveau de fonctionnalité supplémentaire intéressant les compositeurs implémentant un style d'interface graphique de type métaphore de bureau. Cette API de bibliothèque est conçue autour de la fonctionnalité xdg_shell, permettant de gérer les fenêtres contextuelles, l'état des fenêtres et l'interfaçage avec Xwayland.
- Libweston et libweston-desktop doivent être traités comme des bibliothèques instables (c'est-à-dire que leurs API sont sujettes à modification). Un schéma de gestion des versions a été adopté pour leur provisionnement ABI afin de permettre la détection des ruptures lors de la compilation. En d'autres termes, cela permet aux utilisateurs de détecter les incompatibilités au moment de l'installation dans leur système de conditionnement plutôt que lorsqu'ils essaient d'utiliser le logiciel. Le système est conçu pour aider non seulement avec les composants Weston publiés, mais aussi pour signaler les incohérences lors de l'utilisation des instantanés de développement des bibliothèques, afin d'aider les développeurs à éviter les problèmes dus aux incohérences.
- La prise en charge de la nouvelle version 6 du protocole xdg_shell a été implémentée dans le composeur Weston et tous les clients y sont portés. Voir les notes de version de wayland-protocols 1.7 pour plus de détails sur les changements inclus.
- Une API de verrouillage et de confinement de pointeur est implémentée pour Weston à l'aide du protocole wp_pointer_constraints, afin de permettre aux clients de définir des régions de fenêtre pour confiner le pointeur. Ces régions peuvent être irrégulières; un client est inclus pour démontrer le confinement dans une région en forme de H, par exemple. Un protocole de pointeur relatif (utilisant wl_relative_pointer) a également été introduit, ce qui permet aux clients de continuer à recevoir des deltas de mouvement de pointeur même lorsque la position absolue du pointeur est coupée par exemple sur le bord du moniteur.
- Le backend Raspberry Pi (rpi-backend) et le moteur de rendu ont été supprimés. Ce code dépendait d'une pile de pilotes propriétaire et ne pouvait pas être géré par Weston.
- Plusieurs autres fonctionnalités, améliorations de build, corrections de bogues, refactorings de code, raffinements aux processus de destruction, etc. sont incluses.
Nouveautés dans la version 1.9.0:
- Bryce Harrington (20):
- configure.ac: version de bump à 1.8.90
- COPYING: mise à jour de la licence MIT Expat plutôt que de la licence MIT X
- Contributing: Spécifie l'utilisation de MIT Expat pour les nouveaux fichiers de code
- : Mise à jour de la version standard de la licence MIT X11 à la licence MIT Expat
- socket-test: Fixe le style sur un commentaire multiligne
- test-runner: Ajouter un passe-temps de copyright pour .h, identique au .c
- src: Mise à jour de la version standard de la licence MIT X11 à la licence MIT Expat
- wayland-server: Fixe le style sur un commentaire multiligne
- : Mettre à jour la liste de diffusion standard de la licence MIT X11 à la licence MIT Expat
- cursor: Mise à jour de la version standard de la licence MIT X11 à la licence MIT Expat
- cursor-data.h: Change le code sous licence SuSE de X11 à Expat
- xcursor: Modifier le code sous licence de Keithp de X11 à Expat license
- publican: Mise à jour de la licence des documents du MIT "X11" vers le MIT "Expat" style
- cursor: Mettre à jour la licence imprimée du MIT "X11" au MIT "Expat"
- tests: n'incrémente pas les variables dans un assert ()
- gitignore: Ignore certains fichiers dist générés
- configure.ac: bump vers la version 1.8.91 pour la version alpha
- configure.ac: bump vers la version 1.8.92 pour la version bêta li>
- configure.ac: bump vers la version 1.8.93 pour la version RC1
- configure.ac: bump vers la version 1.9.0 pour la version officielle
- Derek Foreman (9):
- docs: supprime et ignore doc / doxygen_sqlite3.db
- build: déplacez AM_CFLAGS et AM_CPPFLAGS en haut de Makefile.am
- build: Arrête de mettre FFI_CFLAGS dans AM_CFLAGS
- build: Autoriser la désactivation de la construction des bibliothèques de wayland
- build: Génère un sous-ensemble de libwayland_util lorsque vous ne créez pas de bibliothèque
- build: ne dépend pas de libffi à moins que nous ne construisions des bibliothèques
- build: utilisez AM_CFLAGS au lieu de GCC_CFLAGS partout
- cosmétique: changements d'espaces gratuits dans event-loop.c
- build: Construire libwayland-private
- Dima Ryazanov (1):
- client: nécessite que WAYLAND_DISPLAY soit défini
- Elvis Lee (1):
- wayland-client: Fixe queue_release de ne pas appeler proxy_destroy
- Marek Chalupa (5):
- fixed-benchmark: supprime les arguments inutilisés dans main
- scanner: refactoriser la création d'objets
- scanner: se débarrasser des fuites
- : utilisez zxalloc
- scanner: vérifiez la santé de la version
- Pekka Paalanen (1):
- Rétablir "client: nécessite que WAYLAND_DISPLAY soit défini"
- Peter Hutterer (2):
- doc: déplace les paramètres de doxygen spécifiques au projet vers la fin du fichier doxygen
- doc: supprime les balises doxygen par défaut
- Ross Burton (1):
- build: compile toujours wayland-scanner
Tests
Protocole
scanner
Nouveautés dans la version 1.8.1:
- Bryce Harrington (2):
- publish-doc: Ajouter un script pour publier des documents sur le site Web
- configure.ac: bump vers la version 1.8.0 pour la version officielle
- Giulio Camuffo (1):
- : n'émet pas les déclarations externes pour les types externes
- Bill Spitzak (1):
- config: utilise une syntaxe regexp plus simple pour obtenir la version de point
- Bryce Harrington (11):
- configure.ac: version bump à la version 1.7.90
- client: Correction d'une faute de frappe
- Correction d'orthographe (cosmétique)
- tests: fautes de frappe dans un commentaire
- configure.ac: bump vers la version 1.7.91 pour la version alpha
- configure.ac: bump vers la version 1.7.92 pour la version RC1
- gitignore: ignore les tests d'en-tête récemment ajoutés
- gitignore: Bulk ignore tous les fichiers * -test
- configure.ac: bump vers la version 1.7.93 pour la version RC2
- publish-doc: Ajouter un script pour publier des documents sur le site Web
- configure.ac: bump vers la version 1.8.0 pour la version officielle
- Derek Foreman (1):
- cursor: ajoute wl_cursor_frame_and_duration
- Emmanuel Gil Peyrot (1):
- cursor: libère le tableau à partir duquel les images sont liées
- Giulio Camuffo (5):
- présente les nouveaux en-têtes wayland-client-core.h et wayland-server-core.h
- wayland-egl: ajoute un en-tête de base
- scanner: ajoute une nouvelle option --include-core-only
- tests: ajouter un test d'en-tête
- : n'émet pas les déclarations externes pour les types externes
- Durcissement (1):
- wayland.xml: correction d'une faute de frappe
- Jonas Adahl (2):
- protocole: Modifier le libellé de la planification du placement de sous-surface
- scanner: Échec des énumérations vides
- Jussi Pakkanen (1):
- Ajout de la prise en charge de la lecture et de l'écriture directes des fichiers dans le scanner de parcours.
- Marek Chalupa (2):
- : donne un message d'erreur plus précis
- protocole: ajoutez une meilleure description de wl_pointer.release
- Michael Vetter (1):
- supprime les espaces de fin
- Pekka Paalanen (1):
- scanner: simplifie la logique getopt
scanner
scanner
Serveur
Nouveautés dans la version 1.7.0 / 1.8.0 RC2:
- Wayland:
- gitignore: ignore les tests d'en-tête récemment ajoutés
- gitignore: Bulk ignore tous les fichiers * -test
- configure.ac: bump vers la version 1.7.93 pour la version RC2
- tests: ajouter un test d'en-tête
- Weston:
- release: Liste des chemins lib à définir pour libinput local
- libérer: untabify
- configure: Avertissez que cairo-gl et cairo-glesv2 sont risqués
- compositor-drm: mineur sp. résoudre
- : avertir lorsque l'écriture échoue
- tests: Ajouter une gestion des erreurs pour les appels système
- : ajout de routines d'assistance client pour les noms de fichier de sortie et de référence
- tests: Ajouter une fonction d'assistance xmalloc
- : ajout de contrôles de surface
- tests: Support --config pour permettre aux tests de remplacer les valeurs par défaut de configuration
- : ajout d'une fonctionnalité de capture d'écran de test
- : Ajout de la fonctionnalité d'enregistrement de capture d'écran à weston-test
- tests: Gérer l'événement de capture d'écran terminé dans weston-test
- : ajout d'un test interne pour la capacité de capture d'écran du test Weston
- tests: Ajouter write_surface_as_png () helper
- tests: Ajouter create_screenshot_surface ()
- tests: Ajouter load_surface_from_png ()
- tests: Ajouter check_surfaces_geometry ()
- tests: Ajouter capture_screenshot_of_output ()
- tests: Corrige le style de code sur les routines path / filename
- tests: vérifiez que la foulée du fichier PNG correspond à notre hypothèse interne
- tests: espace de nettoyage
- gitignore: ignore les fichiers de test d'en-tête générés
- tests: supprimez la sortie de débogage redondante
- release: Ajouter des vars pour le nom et le numéro de version
- configure.ac: bump vers la version 1.7.93 pour la version RC2
- compositor-drm: Nettoyer les espaces de fin
- RDP compositor: applique le certificat et la clé
- gl-renderer: prend une liste de formats acceptables dans les fonctions de création
- compositor-drm: passer ARGB fallback pour créer des fonctions pour les formats XRGB
- gl-renderer: Rend la journalisation des erreurs un peu plus agréable
- tests: Configurer la variable d'environnement de l'image de référence
- tests / internal-screenshot: Corrige le test de sorte qu'il n'attend pas de surfaces de shell
- expose: Ne plante pas si aucun pointeur n'est présent
- desktop-shell: détruit les surfaces dans un gestionnaire inactif après le fondu
- internal-screenshot-test: Faire un test de distcheck
- compositor-wayland: Gérer les événements de fermeture de fenêtre plus gracieusement
- compositor-wayland: nettoyage du code
- xdg-shell: clarifie la signification de l'identifiant de l'application et donne un exemple
- xdg-shell: conditions d'erreur de document lorsque les getters contextuels et surfaciques
- xdg-shell: Documenter les responsabilités concernant les événements ping
- xdg-shell: documente les requêtes set_maximized et unsetmaximized
- compositor-drm: désactiver les curseurs matériels
- desktop-shell: ne pas noircir avec le démarrage "none"
éditeur
Tests
Tests
Protocole
Tests
Tests
Nouveautés dans la version 1.7.0:
- Le protocole Wayland peut être considéré comme terminé, mais cela ne signifie pas qu'il n'y a pas de travail à faire. Cette version s'est concentrée sur des améliorations majeures apportées à la documentation de Wayland, des améliorations mineures à la suite de tests, et quelques corrections de bugs dispersées dans le code lui-même.
- La documentation du développeur de Wayland comprend trois parties différentes. La première est une prose écrite manuellement, qui comprend des diagrammes et une description de haut niveau de tout. La seconde est la documentation du protocole, qui est générée mécaniquement à partir des définitions de protocole et fonctionne plutôt comme un manuel de référence. La troisième est la documentation du code, qui est également générée mécaniquement mais à partir du code source de la bibliothèque elle-même.
- Nous avons déplacé la prose écrite générée par publican vers xmlto. xmlto fournit la même fonctionnalité et est plus largement disponible. L'avantage de Publican était ses feuilles de style plus belles, mais nous les avons portées pour fonctionner sur xmlto, et les avons polies pendant que nous y étions. Les diagrammes architecturaux dans la documentation du développeur sont maintenant générés mécaniquement avec graphviz - cela améliore à la fois son aspect et facilite sa maintenance.
- Pour la documentation de protocole, le concept de rôle wl_surface récemment ajouté est défini et donné plusieurs exemples. wl_display_destroy et wl_display_add_socket sont maintenant documentés, et certains aspects du threading ont été clarifiés. Il a également été réorganisé, avec des fonctions obsolètes supprimées et toutes les erreurs de validation corrigées.
- La documentation de code générée automatiquement est plus jolie maintenant grâce au travail de polissage effectué sur les fichiers xslt et aux améliorations de balisage apportées aux commentaires de code.
- Le contenu de la documentation du protocole est renforcé: nous avons supprimé les fonctions obsolètes, les fonctionnalités privées cachées comme wl_map et les fonctions recatégorisées avec plus de précision avec les objets qu'elles modifient.
- Un certain nombre de fuites potentielles de mémoire et d'événements dans les tests et les clients ont été nettoyés et la vérification des fuites est désormais appliquée par l'infrastructure de la suite de tests. La vérification des fuites est également ajoutée aux exemples de clients.
- La suite de tests a maintenant un moyen de définir des délais d'expiration pour la fin du test. Les délais peuvent être désactivés en définissant la variable d'environnement WAYLAND_TEST_NO_TIMEOUTS. Par souci de cohérence, NO_ASSERT_LEAK_CHECK s'appelle désormais WAYLAND_TEST_NO_LEAK_CHECK. Les délais d'expiration et les vérifications de fuite sont désactivés lorsqu'un correcteur est connecté.
- Il y a un nouveau test de compilation C ++; Bien que Wayland et Weston soient en C, nous voulons nous assurer que Wayland peut être lié à des compositeurs écrits en C ++ sans encourir des échecs de compilation de base.
- En dehors des tests et des docs, il y a eu quelques changements dans la base de code elle-même. Notamment, la file d'attente d'écoute du client est augmentée à 128, pour permettre à de nombreux clients d'être connectés simultanément sans connexion erreurs refusées. Certaines corrections multi-plateformes, comme un bug de FreeBSD avec l'utilisation de sendmsg (), ont été corrigées. Les correctifs restants améliorent la vérification et la gestion des erreurs à divers endroits.
Nouveautés dans la version 1.7.0 RC2:
- Wayland:
- configure.ac: repli sur un ancien code de détection si pkg-config ne trouve pas d'expat
- doc: Remplissez la description de haut niveau de Surfaces
- tests: Correction de FAIL dans sanity-test (* timeout *) lorsque Yama LSM est activé
- test-runner: attendez le pid concret
- Weston:
- release: Tweak docs pour mieux correspondre au flux de travail réel
- screenshooter: supprime la distribution inutile
- desktop-shell: supprime les conversions de types inutiles
- compositor-x11: déplace la fenêtre x11 à proximité d'un gestionnaire inactif
- xwm: supprime l'écouteur de création de surface dans weston_wm_destroy
- Correction de "Back", "Forward" et d'autres boutons spéciaux de la souris dans le compilateur X11.
- xwm: prise en charge de la maximisation des fenêtres xwayland
- libinput: uniquement le premier et le dernier appui sur un bouton
- libinput: uniquement le premier et le dernier appui sur une touche
- desktop-shell: échoue si get_xdg_surface est appelé sur une xdg_surface
- ivi-shell: SEGV se produit lorsque le multi-touch arrive en transition
Quoi de neuf dans la version 1.6.1:
- doc: correction d'une faute de frappe
- Supprimer le point-virgule inutile
- README: Changement cosmétique minuscule
- doc: grammaire fixe et une faute de frappe
- scanner, client: Ajout d'autres vérifications d'erreur lorsque la fonction strtol est utilisée
- scanner: améliorer le rapport d'erreurs d'analyse XML
- scanner: supprime le retour chariot
- client: read_events devrait renvoyer -1 après une erreur
- tests: réparer la fuite de mémoire
- connection: Corrige sendmsg () sur FreeBSD
- event-loop.c: Utilise la bonne fonction d'abstraction du système d'exploitation pour dupfd ()
- wayland-server: Abandon si une lecture d'un client donne 0 longueur
- connection: abort si une fonction d'écouteur est NULL
- doc: Ajout de la documentation de l'API pour les fonctions wl_display_destroy et wl_display_add_socket
Quoi de neuf dans la version 1.7.0 Alpha 1:
- doc: marque des exemples de code
- doc: Utilisez principalement apply-templates sur value-of
- doc: Traduire les balises doxygen en espaces
- connection: Laisser fd ouvert dans wl_connection_destroy
- doc: make reconstruit la sortie doxygen lors des changements de code
- doc: Préserver les espaces
- doc: conserve les liens produits par Doxygen
- doc: Ne pas imprimer le tiret si une brève description de doxygen est manquante
- doc: supprime une liste imbriquée inutile de la sortie doxygen
- doc: Ajout de balises de code autour de l'exemple de code dans les commentaires doxygen
- v4 doc: référence fixe à une fonction inexistante
- doc: correction d'une faute de frappe
- doc: ref supprimé lorsqu'il fait référence au sujet auquel le texte est attaché
- doc: retrait de l'indentation supplémentaire de l'exemple de code wl_list
- doc: suppression de la dépendance redondante
- doc: Suppression des descriptions dupliquées des objets Wayland
- doc: corrige la ligne de commande de doxygen & gt; man
- doc: scinde libwayland-client et -server en différentes pages
- doc: correction pour make parallèle
- doc: facilite l'ajout d'une nouvelle page doxygen
- fixup: facilite l'ajout d'une nouvelle page doxygen
- doc: Réduit les erreurs de validation de l'entrée docbook
- doc: supprime le mot "interface" des noms de liens
- doc: Chaque classe de la sortie doxygen est une section
- doc: Structures de document et unions en plus des classes
- doc: créer des listes détaillées à partir de doxygen
- Ne documentez pas un paramètre absent.
- configure.ac: version bump à la version 1.6.91 pour la version alpha
- Supprimez le point-virgule inutile.
- README: Changement cosmétique minuscule
- cosmetic: convertit certaines fonctions de int à bool
- doc: grammaire fixe et une faute de frappe
- scanner, client: Ajout d'autres vérifications d'erreur lorsque la fonction strtol est utilisée
- serveur: augmente la file d'attente d'écoute à 128
- doc: éléments de sortie xslt redondants supprimés.
- doc: Invoque doxygen via la variable make définie.
- doc: Ajouter une vérification de configuration pour doxygen 1.6.0 +.
- doc: nettoyage général du makefile.
- doc: nettoyage minime du makefile.
- scanner: améliorer le rapport d'erreurs d'analyse XML
- scanner: supprime le retour chariot
- tests: utilisez notre propre XDG_RUNTIME_DIR pour les tests
- tests: ajouter un délai d'attente
- tests: ajoutez les fonctions test_usleep et test_sleep
- tests: ajouter des tests de délai
- tests: utilisez test_set_timeout dans display-test
- queue-test: remet le délai d'expiration
- tests: n'imprime pas le caractère ' '
- client: read_events devrait renvoyer -1 après une erreur
- tests: renommer env vars pour les tests
- test-runner: ligne de séparateur d'impression après chaque test-case
- : utilisez la couleur lors de l'impression sur le terminal
- tests: détecter si le débogueur est attaché
- tests: split testcases test de file d'attente
- tests: réparer la fuite de mémoire
- client: mise à jour des commentaires obsolètes
- client: mise à jour de la documentation sur le thread
- gitignore: adpat aux changements de scanner et de chemin de protocole
- configure.ac: version bump vers la version 1.6.90
- protocole: définir le concept du rôle wl_surface
- : wl_pointer.set_cursor donne un rôle
- : wl_data_device.start_drag peut donner un rôle
- : wl_subcompositor.get_subsurface donne un rôle
- : wl_shell.get_shell_surface donne un rôle
- protocole: définir des codes d'erreur pour la réattribution de rôle
- doc: remplacez publican par xmlto
- connection: Corrige sendmsg () sur FreeBSD
- event-loop.c: Utilise la bonne fonction d'abstraction du système d'exploitation pour dupfd ()
- wayland-server: Abandon si une lecture d'un client donne 0 longueur
- queue-test: Ajouter une autre assertion
- connection: abort si une fonction d'écouteur est NULL
- scanner.c: Utilise WL_PRINTF au lieu de __attribute __ ((format (printf)))
- doc: Ajout de la documentation de l'API pour les fonctions wl_display_destroy et wl_display_add_socket.
- Protocole: Ajout d'un destructeur à l'interface wl_data_device
doc
Tests
Protocole
Protocole
Protocole
Protocole
Nouveautés dans la version 1.6.0:
- Wayland:
- Ajouter une énumération d'erreurs à wl_surface.
- Ajoutez des informations de répétition du clavier au protocole wl_keyboard.
- Erreur lors de la gestion des ajouts dans libwayland-client: lorsqu'une erreur de protocole se produit, le programme peut interroger des informations plus détaillées sur l'erreur. Ceci est surtout utile pour les tests afin d'assurer les erreurs correctes.
- Nouveau wl_display_add_socket_auto () dans libwayland-server: recherche automatique d'un nom de socket libre.
- De nombreux tests ont été ajoutés à la suite 'make check', y compris un framework pour tester plus facilement les interactions serveur-client.
- Threading et blocage des corrections de bugs liées.
- Ajoutez wl_display_roundtrip_queue (): blocage de l'aller-retour dans une file d'attente personnalisée.
- Arrêtez d'exposer wl_display global. Il s'avère que la liaison au global aurait déclenché des bogues, et il n'y avait pas d'utilisation appropriée pour cela.
- Weston:
- Modifications du protocole Xdg-shell. Oui, nous l'avons cassé à nouveau depuis 1.5.0.
- Ajoutez un mécanisme de masquage weston_layer.
- DRM-backend: récupère la taille du curseur depuis le noyau
- prise en charge du taux de répétition du clavier, envoyé par le compositeur aux clients, configurable.
- Utilisez wl_display_add_socket_auto (): inutile de spécifier le socket lors de l'exécution de Weston sous Weston, cela fonctionne maintenant.
- Utilisez libinput par défaut. Le backend d'entrée non-libinput est toujours là pour le moment, mais il sera supprimé pour 1.7.
- Quelques bits de configuration de shell de bureau.
- 'make distcheck' fonctionne réellement en OOTB sans réglages personnalisés (en désactivant le test de xwayland pour distcheck pour le moment).
- Quittez Weston, si weston-desktop-shell meurt trop tôt. Devrait aider avec une classe de problèmes "juste écran noir".
- Option de forcer numlock au démarrage sur les backends DRM et fbdev.
- Beaucoup de corrections de bugs, bien sûr.
Nouveautés dans la version 1.6.0 RC2:
- touchpad: réinitialise l'historique des mouvements lorsque nfingers change sur des pads semi-mt
- litest-alps-semi-mt: Corrige les avertissements du compilateur
- build: le symbole ck_assert_ptr_ne requiert check-0.9.10
- : n'utilisez qu'un seul périphérique de test pour certains tests udev et path
- test: Supprimer le périphérique de test du contexte lors de la suppression
- test: n'échoue pas lorsque les événements sont activés plusieurs fois
- evdev: laisse les instances de dispatch définir leurs propres capacités
- evdev: Utiliser l'assistant pour séparer les boutons des touches
- evdev: Ignorer les événements de libération de touche / bouton si la touche n'a jamais été pressée
- evdev: Gardez une trace du nombre de boutons / de touches par appareil
- evdev: Relâchez les touches / boutons lors de la suppression du périphérique
- pavé tactile: ne sortez du tap FSM pour les pressions sur les boutons du pavé tactile
- configure.ac: libinput 0.6
- test: mise à jour automatique pour BTN_TOOL_ * lors de l'utilisation des fonctions litest_touch_
- Documente que le delta des événements de pointeur est accéléré
- evdev: ne retourne pas une largeur / hauteur si nous avons truqué la résolution
- : ajout d'un appareil de test Semi-mt Alps
- pavé tactile: augmente la zone du bouton logiciel à 15%
- Utilisez -no-install au lieu de -static pour un lien local noinst
- Désactiver les bibliothèques statiques
- evdev: branchez la fuite de mémoire sur l'échec de libevdev_new_from_fd
- Ne fermez pas le fd si libinput_add_fd () échoue
- pavé tactile: marquer un retournement intentionnel de cas de commutation en tant que tel
- Conditions d'échange pour ARRAY_FOR_EACH ()
- touchpad: silence Avertissements de couverture concernant l'utilisation non initialisée
- Correction d'une référence doxygen
- test: ajouter des aides pour attendre des événements spécifiques
- : ajout d'un périphérique générique à une seule touche
- udev: utilisez evdev_device_calibrate () au lieu d'écrire manuellement la matrice
- evdev: consolide evdev_device_calibrate
- evdev: applique également l'étalonnage aux valeurs multitouch
- util: ajoutez quelques fonctions d'aide matricielle 3x3
- evdev: passe à une matrice de transformation normalisée
- udev: supprime WL_CALIBRATION, remplace par LIBINPUT_CALIBRATION_MATRIX
- : ajoutez des tests pour l'étalonnage tactile
- Modifier l'étalonnage dans une option de configuration
- evdev: charge LIBINPUT_CALIBRATION_MATRIX comme matrice par défaut
- test: répare la boucle infinie dans litest_wait_for_event_of_type ()
- : utilisez la variable evironment pour vérifier la verbosité
- Document correctement LIBINPUT_CALIBRATION_MATRIX
- Documentez les options de configuration statique udev que nous supportons
Test
test
Test
Test
Test
Commentaires non trouvées