eglfs: Implement nativeResourceFunctionForContext
Add support for a get_egl_context NativeResourceForContextFunction to the eglfs platform plugin. Change-Id: I155952797f340dd00ab9864852add4b44d841042 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
This commit is contained in:
parent
3a0071e286
commit
47d27c3a53
@ -74,6 +74,8 @@
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
static void *eglContextForContext(QOpenGLContext *context);
|
||||
|
||||
QEglFSIntegration::QEglFSIntegration()
|
||||
: mEventDispatcher(createUnixEventDispatcher()), mFontDb(new QGenericUnixFontDatabase())
|
||||
{
|
||||
@ -215,6 +217,26 @@ void *QEglFSIntegration::nativeResourceForContext(const QByteArray &resource, QO
|
||||
return 0;
|
||||
}
|
||||
|
||||
QPlatformNativeInterface::NativeResourceForContextFunction QEglFSIntegration::nativeResourceFunctionForContext(const QByteArray &resource)
|
||||
{
|
||||
QByteArray lowerCaseResource = resource.toLower();
|
||||
if (lowerCaseResource == "get_egl_context")
|
||||
return NativeResourceForContextFunction(eglContextForContext);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void *eglContextForContext(QOpenGLContext *context)
|
||||
{
|
||||
Q_ASSERT(context);
|
||||
|
||||
QEGLPlatformContext *handle = static_cast<QEGLPlatformContext *>(context->handle());
|
||||
if (!handle)
|
||||
return 0;
|
||||
|
||||
return handle->eglContext();
|
||||
}
|
||||
|
||||
EGLConfig QEglFSIntegration::chooseConfig(EGLDisplay display, const QSurfaceFormat &format)
|
||||
{
|
||||
class Chooser : public QEglConfigChooser {
|
||||
|
@ -74,6 +74,8 @@ public:
|
||||
void *nativeResourceForIntegration(const QByteArray &resource);
|
||||
void *nativeResourceForContext(const QByteArray &resource, QOpenGLContext *context);
|
||||
|
||||
NativeResourceForContextFunction nativeResourceFunctionForContext(const QByteArray &resource) Q_DECL_OVERRIDE;
|
||||
|
||||
QPlatformScreen *screen() const { return mScreen; }
|
||||
static EGLConfig chooseConfig(EGLDisplay display, const QSurfaceFormat &format);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user