summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb/qxcbwindow.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbwindow.h')
-rw-r--r--src/plugins/platforms/xcb/qxcbwindow.h22
1 files changed, 8 insertions, 14 deletions
diff --git a/src/plugins/platforms/xcb/qxcbwindow.h b/src/plugins/platforms/xcb/qxcbwindow.h
index db194f0318..340070e882 100644
--- a/src/plugins/platforms/xcb/qxcbwindow.h
+++ b/src/plugins/platforms/xcb/qxcbwindow.h
@@ -48,11 +48,10 @@
QT_BEGIN_NAMESPACE
class QXcbScreen;
-class QXcbEGLSurface;
class QXcbSyncWindowRequest;
class QIcon;
-class QXcbWindow : public QXcbObject, public QXcbWindowEventListener, public QPlatformWindow
+class Q_XCB_EXPORT QXcbWindow : public QXcbObject, public QXcbWindowEventListener, public QPlatformWindow
{
public:
enum NetWmState {
@@ -138,10 +137,6 @@ public:
void updateNetWmUserTime(xcb_timestamp_t timestamp);
-#if defined(XCB_USE_EGL)
- QXcbEGLSurface *eglSurface() const;
-#endif
-
static void setWmWindowTypeStatic(QWindow *window, QXcbWindowFunctions::WmWindowTypes windowTypes);
QXcbWindowFunctions::WmWindowTypes wmWindowTypes() const;
@@ -154,10 +149,16 @@ public:
qreal devicePixelRatio() const Q_DECL_OVERRIDE;
+ virtual void create();
+ virtual void destroy();
public Q_SLOTS:
void updateSyncRequestCounter();
-private:
+protected:
+ virtual void resolveFormat() { m_format = window()->requestedFormat(); }
+ virtual void *createVisual() { return Q_NULLPTR; }
+ virtual bool supportsSyncProtocol() { return !window()->supportsOpenGL(); }
+
void changeNetWmState(bool set, xcb_atom_t one, xcb_atom_t two = 0);
NetWmStates netWmStates();
void setNetWmStates(NetWmStates);
@@ -176,9 +177,6 @@ private:
quint32 detail = 0, quint32 data1 = 0, quint32 data2 = 0);
void handleXEmbedMessage(const xcb_client_message_event_t *event);
- void create();
- void destroy();
-
void show();
void hide();
@@ -215,10 +213,6 @@ private:
mutable bool m_dirtyFrameMargins;
mutable QMargins m_frameMargins;
-#if defined(XCB_USE_EGL)
- mutable QXcbEGLSurface *m_eglSurface;
-#endif
-
QRegion m_exposeRegion;
xcb_visualid_t m_visualId;