diff options
Diffstat (limited to 'src/compositor/wayland_wrapper/qwlextendedoutput_p.h')
-rw-r--r-- | src/compositor/wayland_wrapper/qwlextendedoutput_p.h | 45 |
1 files changed, 18 insertions, 27 deletions
diff --git a/src/compositor/wayland_wrapper/qwlextendedoutput_p.h b/src/compositor/wayland_wrapper/qwlextendedoutput_p.h index 46c56beb8..3bc418e90 100644 --- a/src/compositor/wayland_wrapper/qwlextendedoutput_p.h +++ b/src/compositor/wayland_wrapper/qwlextendedoutput_p.h @@ -42,12 +42,13 @@ #define WLEXTENDEDOUTPUT_H #include "wayland-server.h" -#include "wayland-output-extension-server-protocol.h" #include <QtCompositor/qwaylandexport.h> #include <QtCore/qnamespace.h> +#include <qwayland-server-output-extension.h> + QT_BEGIN_NAMESPACE namespace QtWayland { @@ -55,46 +56,36 @@ namespace QtWayland { class Compositor; class Output; -class OutputExtensionGlobal +class ExtendedOutput : public QtWaylandServer::wl_extended_output::Resource { public: - OutputExtensionGlobal(Compositor *compositor); + ExtendedOutput() : output(0) {} -private: - Compositor *m_compositor; - - static void bind_func(struct wl_client *client, void *data, - uint32_t version, uint32_t id); - static void get_extended_output(struct wl_client *client, - struct wl_resource *output_extension_resource, - uint32_t id, - struct wl_resource *output_resource); - static const struct wl_output_extension_interface output_extension_interface; + void sendOutputOrientation(Qt::ScreenOrientation orientation); + Output *output; + Qt::ScreenOrientations orientationUpdateMask; }; -class ExtendedOutput +class OutputExtensionGlobal : public QtWaylandServer::wl_output_extension, public QtWaylandServer::wl_extended_output { public: - ExtendedOutput(struct wl_client *client, uint32_t id, Output *output, Compositor *compositor); - - Qt::ScreenOrientations orientationUpdateMask() { return m_orientationUpdateMask; } + OutputExtensionGlobal(Compositor *compositor); - void sendOutputOrientation(Qt::ScreenOrientation orientation); +private: + Compositor *m_compositor; - static void destroy_resource(wl_resource *resource); + wl_extended_output::Resource *extended_output_allocate() Q_DECL_OVERRIDE { return new ExtendedOutput; } - static void set_orientation_update_mask(struct wl_client *client, - struct wl_resource *resource, - int32_t orientation_update_mask); + void extended_output_set_orientation_update_mask(wl_extended_output::Resource *resource, + int32_t orientation_update_mask) Q_DECL_OVERRIDE; -private: - struct wl_resource *m_extended_output_resource; - Output *m_output; - Compositor *m_compositor; - Qt::ScreenOrientations m_orientationUpdateMask; + void output_extension_get_extended_output(wl_output_extension::Resource *resource, + uint32_t id, + struct wl_resource *output_resource) Q_DECL_OVERRIDE; }; + } QT_END_NAMESPACE |