diff options
author | Johan Klokkhammer Helsing <johan.helsing@qt.io> | 2019-10-28 12:05:09 +0100 |
---|---|---|
committer | Johan Klokkhammer Helsing <johan.helsing@qt.io> | 2019-11-12 13:34:05 +0100 |
commit | d58008c4310f99d0faebcfb2fd9aa9296b813ecf (patch) | |
tree | 7aee8434512b2142c4a604e688488a051464189b /src/client/qwaylanddisplay_p.h | |
parent | acddf1834ffa1b256a38919d9626f1e12460b484 (diff) |
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 <paul.tvete@qt.io>
Diffstat (limited to 'src/client/qwaylanddisplay_p.h')
-rw-r--r-- | src/client/qwaylanddisplay_p.h | 4 |
1 files changed, 4 insertions, 0 deletions
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<QWaylandScreen *> 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<QWaylandShm> mShm; QList<QWaylandScreen *> mWaitingScreens; QList<QWaylandScreen *> mScreens; + QPlatformPlaceholderScreen *mPlaceholderScreen = nullptr; QList<QWaylandInputDevice *> mInputDevices; QList<Listener> mRegistryListeners; QWaylandIntegration *mWaylandIntegration = nullptr; |