void QWaylandDisplay::registry_global(uint32_t id, const QString &interface, uint32_t version)
{
Q_UNUSED(version);
struct ::wl_registry *registry = object();
if (interface == QStringLiteral("wl_output")) {
QWaylandScreen *screen = new QWaylandScreen(this, version, id);
mScreens.append(screen);
forceRoundTrip();
#ifndef Q_OS_SYLIXOS mWaylandIntegration->screenAdded(screen);
#endif
...
file: qt5\qtwayland\src\client\qwaylanddisplay.cpp
Maybe add screens here:
QWaylandDisplay::QWaylandDisplay(QWaylandIntegration *waylandIntegration)
: mWaylandIntegration(waylandIntegration)
{
...
struct ::wl_registry *registry = wl_display_get_registry(mDisplay);
init(registry);
mWindowManagerIntegration.reset(new QWaylandWindowManagerIntegration(this));
forceRoundTrip();
#ifdef Q_OS_SYLIXOS
foreach (QWaylandScreen *screen, mScreens) {
mWaylandIntegration->screenAdded(screen);
}
#endif
}