summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel
diff options
context:
space:
mode:
authorDavid Redondo <qt@david-redondo.de>2022-10-12 08:55:29 +0200
committerDavid Redondo <qt@david-redondo.de>2022-10-27 12:03:00 +0200
commit17ab4045ca4e0992678dd5c1cdbf19ba591cbe48 (patch)
tree343546f9a76d180ac9663094f1305e304b93c9de /src/gui/kernel
parente39ca06dbc3051c8e82c458ccd7314a2adbff27e (diff)
Add QNativeInterface::Private::QWaylandScreen
Change-Id: Ib18c95fa64ab9176195f591e8ffd45177be510b9 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/gui/kernel')
-rw-r--r--src/gui/kernel/qplatformscreen_p.h12
-rw-r--r--src/gui/kernel/qscreen.cpp4
2 files changed, 16 insertions, 0 deletions
diff --git a/src/gui/kernel/qplatformscreen_p.h b/src/gui/kernel/qplatformscreen_p.h
index c47cee2746..f7c9d94154 100644
--- a/src/gui/kernel/qplatformscreen_p.h
+++ b/src/gui/kernel/qplatformscreen_p.h
@@ -24,6 +24,10 @@
#include <qwindowdefs_win.h>
#endif
+#if defined(Q_OS_UNIX)
+struct wl_output;
+#endif
+
QT_BEGIN_NAMESPACE
class QScreen;
@@ -80,6 +84,14 @@ struct Q_GUI_EXPORT QWindowsScreen
};
#endif
+#if defined(Q_OS_UNIX) || defined(Q_CLANG_QDOC)
+struct Q_GUI_EXPORT QWaylandScreen
+{
+ QT_DECLARE_NATIVE_INTERFACE(QWaylandScreen, 1, QScreen)
+ virtual wl_output *output() const = 0;
+};
+#endif
+
} // QNativeInterface::Private
QT_END_NAMESPACE
diff --git a/src/gui/kernel/qscreen.cpp b/src/gui/kernel/qscreen.cpp
index ecdf2bb54f..efaba3e426 100644
--- a/src/gui/kernel/qscreen.cpp
+++ b/src/gui/kernel/qscreen.cpp
@@ -759,6 +759,10 @@ void *QScreen::resolveInterface(const char *name, int revision) const
QT_NATIVE_INTERFACE_RETURN_IF(QWindowsScreen, platformScreen);
#endif
+#if defined(Q_OS_UNIX)
+ QT_NATIVE_INTERFACE_RETURN_IF(QWaylandScreen, platformScreen);
+#endif
+
return nullptr;
}