diff options
Diffstat (limited to 'src/client/qwaylandscreen_p.h')
-rw-r--r-- | src/client/qwaylandscreen_p.h | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/src/client/qwaylandscreen_p.h b/src/client/qwaylandscreen_p.h index 836dd0392..ce3df3099 100644 --- a/src/client/qwaylandscreen_p.h +++ b/src/client/qwaylandscreen_p.h @@ -16,6 +16,7 @@ // #include <qpa/qplatformscreen.h> +#include <QtGui/qscreen_platform.h> #include <QtWaylandClient/qtwaylandclientglobal.h> #include <QtWaylandClient/private/qwayland-wayland.h> @@ -32,9 +33,13 @@ class QWaylandCursor; class Q_WAYLANDCLIENT_EXPORT QWaylandXdgOutputManagerV1 : public QtWayland::zxdg_output_manager_v1 { public: QWaylandXdgOutputManagerV1(QWaylandDisplay *display, uint id, uint version); + ~QWaylandXdgOutputManagerV1(); }; -class Q_WAYLANDCLIENT_EXPORT QWaylandScreen : public QPlatformScreen, QtWayland::wl_output, QtWayland::zxdg_output_v1 +class Q_WAYLANDCLIENT_EXPORT QWaylandScreen : public QPlatformScreen, + QtWayland::wl_output, + QtWayland::zxdg_output_v1, + public QNativeInterface::QWaylandScreen { public: QWaylandScreen(QWaylandDisplay *waylandDisplay, int version, uint32_t id); @@ -58,6 +63,8 @@ public: QDpi logicalDpi() const override; QList<QPlatformScreen *> virtualSiblings() const override; + QWindow *topLevelAt(const QPoint &point) const override; + Qt::ScreenOrientation orientation() const override; int scale() const; qreal devicePixelRatio() const override; @@ -69,12 +76,20 @@ public: QPlatformCursor *cursor() const override; #endif + SubpixelAntialiasingType subpixelAntialiasingTypeHint() const override; + uint32_t outputId() const { return m_outputId; } - ::wl_output *output() { return QtWayland::wl_output::object(); } + ::wl_output *output() const override + { + return const_cast<::wl_output *>(QtWayland::wl_output::object()); + } static QWaylandScreen *waylandScreenFromWindow(QWindow *window); static QWaylandScreen *fromWlOutput(::wl_output *output); + Qt::ScreenOrientation toScreenOrientation(int wlTransform, + Qt::ScreenOrientation fallback) const; + protected: enum Event : uint { XdgOutputDoneEvent = 0x1, @@ -110,6 +125,7 @@ protected: int mScale = 1; int mDepth = 32; int mRefreshRate = 60000; + int mSubpixel = -1; int mTransform = -1; QImage::Format mFormat = QImage::Format_ARGB32_Premultiplied; QSize mPhysicalSize; |