Auf dieser Seite

WaylandCompositor QML Type (Uncreatable)

Verwaltet den Wayland-Anzeigeserver. Mehr...

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

Hinweis: Dies ist ein nicht erstellbarer Typ. Er kann in QML nicht instanziiert werden.

Eigenschaften

Signale

Methoden

Ausführliche Beschreibung

Der WaylandCompositor verwaltet die Verbindungen zu den Clients sowie die verschiedenen „ outputs “ und „ seats “.

Normalerweise verfügt eine Compositor-Anwendung über eine einzige WaylandCompositor-Instanz, die mehrere Ausgänge als untergeordnete Elemente haben kann. Wenn ein Client den Compositor auffordert, eine Oberfläche zu erstellen, wird die Anfrage vom onSurfaceRequested-Handler bearbeitet.

Vom Compositor unterstützte Erweiterungen sollten instanziiert und der Eigenschaft `extensions` hinzugefügt oder einfach als direkte untergeordnete Elemente des WaylandCompositors hinzugefügt werden.

Dokumentation zu den Eigenschaften

additionalShmFormats : list<enum> [since 6.0]

Diese Eigenschaft enthält die Liste der zusätzlichen wl_shm-Formate, die vom Compositor als unterstützt angegeben werden.

Standardmäßig sind nur die erforderlichen Formate „ShmFormat_ARGB8888“ und „ShmFormat_XRGB8888“ aufgeführt, und diese Liste ist leer. Zusätzliche Formate erfordern möglicherweise eine interne Konvertierung und können daher die Leistung beeinträchtigen.

Diese Eigenschaft muss gesetzt werden, bevor die Compositor-Komponente fertiggestellt ist. Nachträgliche Änderungen haben keine Auswirkungen.

Diese Eigenschaft wurde in Qt 6.0 eingeführt.

created : bool [read-only]

Diese Eigenschaft ist wahr, wenn „ WaylandCompositor “ initialisiert wurde; andernfalls ist sie falsch.

defaultOutput : WaylandOutput

Diese Eigenschaft enthält den ersten Eintrag in der Liste der Ausgänge, die dem „ WaylandCompositor “ hinzugefügt wurden, oder „null“, falls keine Ausgänge hinzugefügt wurden.

Wird eine neue Standardausgabe festgelegt, wird diese an den Anfang der Ausgabeliste angefügt und damit zur neuen Standardausgabe, die bisherige Standardausgabe wird jedoch nicht aus der Liste entfernt.

defaultSeat : WaylandSeat [read-only]

Diese Eigenschaft enthält den Standardplatz für diese WaylandCompositor.

extensions : list

Eine Liste der Erweiterungen, die der Compositor seinen Clients bekanntgibt. Für jede Wayland-Erweiterung, die der Compositor unterstützen soll, muss er deren Komponente instanziieren und sie der Liste der Erweiterungen hinzufügen. Es ist jedoch in der Regel nicht erforderlich, auf diese Eigenschaft zu verweisen, da alle direkten untergeordneten Elemente ihr automatisch zugewiesen werden.

Beispielsweise würde der folgende Code es den Clients ermöglichen, über die Schnittstelle „ xdg_shell “ „ xdg_shell “-Oberflächen im Compositor anzufordern.

import QtWayland.Compositor
import QtWayland.Compositor.XdgShell

WaylandCompositor {
    XdgShell {
        // ...
    }
}

retainedSelection : bool [default: false]

Diese Eigenschaft legt fest, ob der Compositor eine Kopie der Daten aus der Zwischenablage beibehält. Wenn „ true “ gesetzt ist, liest der Compositor alle Daten aus der Zwischenablage des zuständigen Clients sofort ein und speichert sie im Cache. Dies geht mit einem Leistungsaufwand einher.

socketName : string

Diese Eigenschaft enthält den Socket-Namen, den „ WaylandCompositor “ für die Kommunikation mit Clients verwendet. Sie muss festgelegt werden, bevor die Komponente fertiggestellt ist.

Ist „socketName“ leer (Standardeinstellung), wird stattdessen der Inhalt des Arguments „start“ von „ --wayland-socket-name “ verwendet. Ist das Argument nicht gesetzt, versucht der Compositor, einen Socket-Namen zu ermitteln, der standardmäßig „ wayland-0 “ lautet.

useHardwareIntegrationExtension : bool [default: true]

Diese Eigenschaft legt fest, ob die Hardware-Integrationserweiterung für diese „ WaylandCompositor “ aktiviert werden soll.

Diese Eigenschaft muss festgelegt werden, bevor die Compositor-Komponente fertiggestellt ist.

Signal-Dokumentation

void surfaceCreated(WaylandSurface surface)

Dieses Signal wird ausgelöst, wenn eine neue Instanz von „ WaylandSurface “ surface erstellt wurde.

Hinweis: Der entsprechende Handler lautet „ onSurfaceCreated “.

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

Dieses Signal wird ausgelöst, wenn ein „ client “ eine Oberfläche mit der ID „ id “ erstellt hat. Die Schnittstelle „ version “ steht ebenfalls zur Verfügung.

Der mit diesem Signal verbundene Slot kann im Geltungsbereich des Slots eine Instanz von ` WaylandSurface ` erstellen und initialisieren. Andernfalls wird eine Standard-Oberfläche erstellt.

Hinweis: Der entsprechende Handler lautet „ onSurfaceRequested “.

Methodendokumentation

void addSocketDescriptor(fd)

Wartet auf Client-Verbindungen über einen Dateideskriptor, fd, der auf einen bereits gebundenen und im Listening-Modus befindlichen Server-Socket verweist.

Übernimmt nicht die Kontrolle über den Dateideskriptor; dieser muss bei Bedarf explizit geschlossen werden.

Hinweis: Diese Methode ist nur mit libwayland 1.10.0 oder neuer verfügbar. Bei einer Kompilierung mit einer älteren libwayland-Laufzeitbibliothek hat diese Methode keine Auswirkung.

void destroyClient(client)

Auf Seiten des Compositors wird das angegebene „ WaylandClient “ ( client ) zerstört, indem die Verbindung dazu getrennt wird.

void destroyClientForSurface(surface)

Auf Seiten des Compositors wird der Client, zu dem die Adresse WaylandSurface surface gehört, durch Trennen der Verbindung gelöscht.

© 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.