diff options
author | Jørgen Lind <jorgen.lind@theqtcompany.com> | 2015-07-30 15:19:42 +0200 |
---|---|---|
committer | Jørgen Lind <jorgen.lind@theqtcompany.com> | 2015-08-28 13:09:42 +0200 |
commit | fb84a2bfd5ac4d4574df63d0f29d7904e043f123 (patch) | |
tree | 6e9f3f5d652da07d82a3bc1be70228f525740f25 /src/compositor/compositor_api/qwaylandkeyboard.cpp | |
parent | 0dcca22ab39096b60446225f51689df06a6f98e9 (diff) |
Remove the static instance of a compositor.
All classes that needs to access the compositor instance needs to keep
a reference to it
Change-Id: Ia0d4b04b460200ad3c7907b94c032afe90c18771
Diffstat (limited to 'src/compositor/compositor_api/qwaylandkeyboard.cpp')
-rw-r--r-- | src/compositor/compositor_api/qwaylandkeyboard.cpp | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/compositor/compositor_api/qwaylandkeyboard.cpp b/src/compositor/compositor_api/qwaylandkeyboard.cpp index e02e53fa3..09c0bfc9c 100644 --- a/src/compositor/compositor_api/qwaylandkeyboard.cpp +++ b/src/compositor/compositor_api/qwaylandkeyboard.cpp @@ -53,6 +53,18 @@ QWaylandKeyboard::QWaylandKeyboard(QWaylandInputDevice *seat, QObject *parent) connect(&d->m_focusDestroyListener, &QWaylandDestroyListener::fired, this, &QWaylandKeyboard::focusDestroyed); } +QWaylandInputDevice *QWaylandKeyboard::inputDevice() const +{ + Q_D(const QWaylandKeyboard); + return d->m_seat; +} + +QWaylandCompositor *QWaylandKeyboard::compositor() const +{ + Q_D(const QWaylandKeyboard); + return d->m_seat->compositor(); +} + void QWaylandKeyboard::focusDestroyed(void *data) { Q_UNUSED(data); @@ -68,7 +80,7 @@ QWaylandClient *QWaylandKeyboard::focusClient() const Q_D(const QWaylandKeyboard); if (!d->focusResource()) return Q_NULLPTR; - return QWaylandClient::fromWlClient(d->focusResource()->client()); + return QWaylandClient::fromWlClient(compositor(), d->focusResource()->client()); } void QWaylandKeyboard::sendKeyModifiers(QWaylandClient *client, uint serial) |