diff options
-rw-r--r-- | src/plugins/platforms/eglfs/qeglfsintegration.cpp | 14 | ||||
-rw-r--r-- | src/plugins/platforms/eglfs/qeglfsintegration.h | 1 |
2 files changed, 15 insertions, 0 deletions
diff --git a/src/plugins/platforms/eglfs/qeglfsintegration.cpp b/src/plugins/platforms/eglfs/qeglfsintegration.cpp index 33427c45fa..08f68a20f4 100644 --- a/src/plugins/platforms/eglfs/qeglfsintegration.cpp +++ b/src/plugins/platforms/eglfs/qeglfsintegration.cpp @@ -202,6 +202,20 @@ void *QEglFSIntegration::nativeResourceForIntegration(const QByteArray &resource return 0; } +void *QEglFSIntegration::nativeResourceForWindow(const QByteArray &resource, QWindow *window) +{ + QByteArray lowerCaseResource = resource.toLower(); + + if (lowerCaseResource == "egldisplay") { + if (window) + return static_cast<QEglFSScreen *>(window->handle()->screen())->display(); + else + return static_cast<QEglFSScreen *>(mScreen)->display(); + } + + return 0; +} + void *QEglFSIntegration::nativeResourceForContext(const QByteArray &resource, QOpenGLContext *context) { QByteArray lowerCaseResource = resource.toLower(); diff --git a/src/plugins/platforms/eglfs/qeglfsintegration.h b/src/plugins/platforms/eglfs/qeglfsintegration.h index c01b6db456..dd85788bd8 100644 --- a/src/plugins/platforms/eglfs/qeglfsintegration.h +++ b/src/plugins/platforms/eglfs/qeglfsintegration.h @@ -72,6 +72,7 @@ public: // QPlatformNativeInterface void *nativeResourceForIntegration(const QByteArray &resource); + void *nativeResourceForWindow(const QByteArray &resource, QWindow *window) Q_DECL_OVERRIDE; void *nativeResourceForContext(const QByteArray &resource, QOpenGLContext *context); NativeResourceForContextFunction nativeResourceFunctionForContext(const QByteArray &resource) Q_DECL_OVERRIDE; |