summaryrefslogtreecommitdiffstats
path: root/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h')
-rw-r--r--src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h
index 9a1dda014..5528eca7d 100644
--- a/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h
+++ b/src/hardwareintegration/client/wayland-egl/qwaylandglcontext.h
@@ -45,7 +45,6 @@
#include <QtWaylandClient/private/qwaylanddisplay_p.h>
#include <qpa/qplatformopenglcontext.h>
-#include <QtGui/QOpenGLFunctions>
#include "qwaylandeglinclude.h"
@@ -55,11 +54,12 @@ class QWaylandWindow;
class QWaylandGLWindowSurface;
class QOpenGLShaderProgram;
class QOpenGLTextureCache;
+class DecorationsBlitter;
-class QWaylandGLContext : public QPlatformOpenGLContext, protected QOpenGLFunctions
+class QWaylandGLContext : public QPlatformOpenGLContext
{
public:
- QWaylandGLContext(EGLDisplay eglDisplay, const QSurfaceFormat &format, QPlatformOpenGLContext *share);
+ QWaylandGLContext(EGLDisplay eglDisplay, QWaylandDisplay *display, const QSurfaceFormat &format, QPlatformOpenGLContext *share);
~QWaylandGLContext();
void swapBuffers(QPlatformSurface *surface);
@@ -80,14 +80,18 @@ public:
EGLContext eglContext() const { return m_context; }
private:
- EGLDisplay m_eglDisplay;
+ void updateGLFormat();
+ EGLDisplay m_eglDisplay;
+ QWaylandDisplay *m_display;
EGLContext m_context;
EGLContext m_shareEGLContext;
EGLConfig m_config;
QSurfaceFormat m_format;
- QOpenGLShaderProgram *m_blitProgram;
+ DecorationsBlitter *m_blitter;
bool mUseNativeDefaultFbo;
+
+ friend class DecorationsBlitter;
};
QT_END_NAMESPACE