From d58008c4310f99d0faebcfb2fd9aa9296b813ecf Mon Sep 17 00:00:00 2001 From: Johan Klokkhammer Helsing Date: Mon, 28 Oct 2019 12:05:09 +0100 Subject: Client: Support running with no screens [ChangeLog][QPA plugin] The QPA plugin now supports running with no screens attached. This is handled by adding a fake screen when the last screen is disconnected, similarly to what the other QPA plugins do. Fixes: QTBUG-79111 Change-Id: I4a0e023ae784217dd030f0c62f12487fdff4825c Reviewed-by: Paul Olav Tvete --- src/client/qwaylanddisplay_p.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/client/qwaylanddisplay_p.h') diff --git a/src/client/qwaylanddisplay_p.h b/src/client/qwaylanddisplay_p.h index 14bb77198..cd845b44e 100644 --- a/src/client/qwaylanddisplay_p.h +++ b/src/client/qwaylanddisplay_p.h @@ -76,6 +76,7 @@ QT_BEGIN_NAMESPACE class QAbstractEventDispatcher; class QSocketNotifier; class QPlatformScreen; +class QPlatformPlaceholderScreen; namespace QtWayland { class qt_surface_extension; @@ -124,6 +125,8 @@ public: #endif QList screens() const { return mScreens; } + QPlatformPlaceholderScreen *placeholderScreen() const { return mPlaceholderScreen; } + void ensureScreen(); QWaylandScreen *screenForOutput(struct wl_output *output) const; void handleScreenInitialized(QWaylandScreen *screen); @@ -228,6 +231,7 @@ private: QScopedPointer mShm; QList mWaitingScreens; QList mScreens; + QPlatformPlaceholderScreen *mPlaceholderScreen = nullptr; QList mInputDevices; QList mRegistryListeners; QWaylandIntegration *mWaylandIntegration = nullptr; -- cgit v1.2.3