/* SPDX-FileCopyrightText: 2016 Martin Gräßlin SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL */ #ifndef WAYLAND_SERVER_KEYBOARD_INTERFACE_P_H #define WAYLAND_SERVER_KEYBOARD_INTERFACE_P_H #include "keyboard_interface.h" #include "resource_p.h" #include class QTemporaryFile; namespace KWayland { namespace Server { class KeyboardInterface::Private : public Resource::Private { public: Private(SeatInterface *s, wl_resource *parentResource, KeyboardInterface *q); void sendKeymap(int fd, quint32 size); void sendModifiers(); void sendModifiers(quint32 depressed, quint32 latched, quint32 locked, quint32 group, quint32 serial); void focusChildSurface(const QPointer &childSurface, quint32 serial); void sendLeave(SurfaceInterface *surface, quint32 serial); void sendEnter(SurfaceInterface *surface, quint32 serial); SeatInterface *seat; SurfaceInterface *focusedSurface = nullptr; QPointer focusedChildSurface; QMetaObject::Connection destroyConnection; QScopedPointer keymap; private: static const struct wl_keyboard_interface s_interface; }; } } #endif