Sur cette page

WaylandCompositor QML Type

Gère le serveur d'affichage Wayland. Plus d'informations...

Import Statement: import QtWayland.Compositor
In C++: QWaylandCompositor

Propriétés

Signaux

Méthodes

Description détaillée

Le WaylandCompositor gère les connexions avec les clients, ainsi que les différentes outputs et seats.

Normalement, une application de compositeur aura une seule instance de WaylandCompositor, qui peut avoir plusieurs sorties comme enfants. Lorsqu'un client demande au compositeur de créer une surface, la demande est traitée par le gestionnaire onSurfaceRequested.

Les extensions prises en charge par le compositeur doivent être instanciées et ajoutées à la propriété extensions.

Documentation sur les propriétés

additionalShmFormats : list<enum> [since 6.0]

Cette propriété contient la liste des formats wl_shm supplémentaires annoncés comme étant pris en charge par le compositeur.

Par défaut, seuls les formats obligatoires ShmFormat_ARGB8888 et ShmFormat_XRGB8888 sont listés et cette liste sera vide. Les formats supplémentaires peuvent nécessiter une conversion interne et peuvent donc affecter les performances.

Cette propriété doit être définie avant que le composant compositeur ne soit terminé. Les modifications ultérieures n'auront aucun effet.

Cette propriété a été introduite dans Qt 6.0.

created : bool [read-only]

Cette propriété est vraie si WaylandCompositor a été initialisé, sinon elle est fausse.

defaultOutput : WaylandOutput

Cette propriété contient le premier de la liste des sorties ajoutées à WaylandCompositor, ou null si aucune sortie n'a été ajoutée.

La définition d'une nouvelle sortie par défaut l'ajoute à la liste des sorties, ce qui en fait la nouvelle sortie par défaut, mais la sortie par défaut précédente n'est pas supprimée de la liste.

defaultSeat : WaylandSeat [read-only]

Cette propriété contient le siège par défaut de ce site WaylandCompositor.

extensions : list

Une liste d'extensions que le compositeur annonce à ses clients. Pour toute extension Wayland que le compositeur devrait prendre en charge, instanciez son composant et ajoutez-le à la liste des extensions.

Par exemple, le code suivant permettrait aux clients de demander des surfaces wl_shell dans le compositeur en utilisant l'interface wl_shell.

import QtWayland.Compositor

WaylandCompositor {
    WlShell {
        // ...
    }
}

retainedSelection : bool

Cette propriété indique si la sélection retenue est activée.

socketName : string

Cette propriété contient le nom du socket utilisé par WaylandCompositor pour communiquer avec les clients. Elle doit être définie avant que le composant ne soit terminé.

Si socketName est vide (par défaut), le contenu de l'argument de départ --wayland-socket-name est utilisé à la place. Si l'argument n'est pas défini, le compositeur tente de trouver un nom de socket, qui est wayland-0 par défaut.

useHardwareIntegrationExtension : bool

Cette propriété indique si l'extension d'intégration matérielle doit être activée pour ce site WaylandCompositor.

Cette propriété doit être définie avant que le composant compositeur ne soit terminé.

Documentation sur les signaux

void surfaceCreated(WaylandSurface surface)

Ce signal est émis lorsqu'une nouvelle instance WaylandSurface surface a été créée.

Remarque : le gestionnaire correspondant est onSurfaceCreated.

void surfaceRequested(WaylandClient client, int id, int version)

Ce signal est émis lorsqu'un client a créé une surface avec l'identifiant id. L'interface version est également disponible.

Le slot connecté à ce signal peut créer et initialiser une instance WaylandSurface dans la portée du slot. Sinon, une surface par défaut est créée.

Remarque : le gestionnaire correspondant est onSurfaceRequested.

Documentation de la méthode

void addSocketDescriptor(fd)

Écoute les connexions des clients sur un descripteur de fichier, fd, en se référant à une socket de serveur déjà liée et à l'écoute.

Ne prend pas la propriété du descripteur de fichier ; il doit être fermé explicitement si nécessaire.

Note : Cette méthode n'est disponible qu'avec libwayland 1.10.0 ou plus récent. Si elle est construite avec une version antérieure de libwayland, cette méthode est un noop.

void destroyClient(client)

Détruit le site WaylandClient client .

void destroyClientForSurface(surface)

Détruit le client pour le site WaylandSurface surface .

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.