diff options
author | Pier Luigi Fiorini <pierluigi.fiorini@gmail.com> | 2016-06-06 07:32:21 +0200 |
---|---|---|
committer | Pier Luigi Fiorini <pierluigi.fiorini@gmail.com> | 2016-06-09 19:54:41 +0000 |
commit | 0fb83224a2a9e6041d42e298130dea38f2bad363 (patch) | |
tree | 300ea2578ad935198e70e412ca1e5bfff97ec0af | |
parent | ba26e9b329641c8dc9b9396bcc0ba152f2bb9ea0 (diff) |
Emit signals when outputs are added or removed
Change-Id: Ib9267dca4a1adf3283241b5b6d4062ea0292977c
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
-rw-r--r-- | src/compositor/compositor_api/qwaylandcompositor.h | 4 | ||||
-rw-r--r-- | src/compositor/compositor_api/qwaylandcompositor_p.h | 6 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/compositor/compositor_api/qwaylandcompositor.h b/src/compositor/compositor_api/qwaylandcompositor.h index f97484d86..dd3c20e2f 100644 --- a/src/compositor/compositor_api/qwaylandcompositor.h +++ b/src/compositor/compositor_api/qwaylandcompositor.h @@ -135,6 +135,10 @@ Q_SIGNALS: void defaultInputDeviceChanged(QWaylandInputDevice *newDevice, QWaylandInputDevice *oldDevice); void useHardwareIntegrationExtensionChanged(); + + void outputAdded(QWaylandOutput *output); + void outputRemoved(QWaylandOutput *output); + protected: virtual void retainedSelectionReceived(QMimeData *mimeData); virtual QWaylandInputDevice *createInputDevice(); diff --git a/src/compositor/compositor_api/qwaylandcompositor_p.h b/src/compositor/compositor_api/qwaylandcompositor_p.h index 8966acb38..7e1d72675 100644 --- a/src/compositor/compositor_api/qwaylandcompositor_p.h +++ b/src/compositor/compositor_api/qwaylandcompositor_p.h @@ -185,16 +185,20 @@ void QWaylandCompositorPrivate::removeClient(QWaylandClient *client) void QWaylandCompositorPrivate::addOutput(QWaylandOutput *output) { Q_ASSERT(output); + Q_Q(QWaylandCompositor); if (outputs.contains(output)) return; outputs.append(output); + emit q->outputAdded(output); } void QWaylandCompositorPrivate::removeOutput(QWaylandOutput *output) { Q_ASSERT(output); Q_ASSERT(outputs.count(output) == 1); - outputs.removeOne(output); + Q_Q(QWaylandCompositor); + if (outputs.removeOne(output)) + emit q->outputRemoved(output); } QT_END_NAMESPACE |