summaryrefslogtreecommitdiffstats
path: root/src/compositor/compositor_api/qwaylandcompositor.h
diff options
context:
space:
mode:
authorJørgen Lind <jorgen.lind@theqtcompany.com>2015-09-04 14:35:19 +0200
committerJørgen Lind <jorgen.lind@theqtcompany.com>2015-09-04 16:12:47 +0200
commit6358b0ede93c6633802126bf8bf0a44860e66917 (patch)
tree17c8a90565b3aa4f0d3c0cb36a642c0da53bf229 /src/compositor/compositor_api/qwaylandcompositor.h
parentb666aa58d7a168fe4ddb694caba099343421aa65 (diff)
Make it possible to connect to a createSurface signal
Remove the QWaylandSurface factory function from QWaylandCompositor. Add a default constructor to QWaylandSurface and a initialize function. Add som housekeeping code in debug builds that ensures the user calls initialize. Add a fallback factory function on the compositor if the user is fine with getting the default implementation of QWaylandSurface or QWaylandQuickSurface Change-Id: Ib9289c323b6723f0d1119a484cf9e0c26c95b549
Diffstat (limited to 'src/compositor/compositor_api/qwaylandcompositor.h')
-rw-r--r--src/compositor/compositor_api/qwaylandcompositor.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/compositor/compositor_api/qwaylandcompositor.h b/src/compositor/compositor_api/qwaylandcompositor.h
index d9098ee37..d859ab341 100644
--- a/src/compositor/compositor_api/qwaylandcompositor.h
+++ b/src/compositor/compositor_api/qwaylandcompositor.h
@@ -132,6 +132,7 @@ public Q_SLOTS:
void processWaylandEvents();
Q_SIGNALS:
+ void createSurface(QWaylandClient *client, uint id, int version);
void surfaceCreated(QWaylandSurface *surface);
void surfaceAboutToBeDestroyed(QWaylandSurface *surface);
@@ -142,13 +143,15 @@ Q_SIGNALS:
void useHardwareIntegrationExtensionChanged();
protected:
virtual void retainedSelectionReceived(QMimeData *mimeData);
- virtual QWaylandSurface *createSurface(QWaylandClient *client, quint32 id, int version);
virtual QWaylandInputDevice *createInputDevice();
virtual QWaylandPointer *createPointerDevice(QWaylandInputDevice *inputDevice);
virtual QWaylandKeyboard *createKeyboardDevice(QWaylandInputDevice *inputDevice);
virtual QWaylandTouch *createTouchDevice(QWaylandInputDevice *inputDevice);
QWaylandCompositor(QWaylandCompositorPrivate *dptr);
+
+private:
+ virtual QWaylandSurface *createDefaultSurfaceType();
};
QT_END_NAMESPACE