summaryrefslogtreecommitdiffstats
path: root/src/compositor/hardware_integration/xcomposite_share/xcompositehandler.h
diff options
context:
space:
mode:
authorJørgen Lind <jorgen.lind@nokia.com>2011-12-05 17:09:02 +0100
committerLaszlo Agocs <laszlo.p.agocs@nokia.com>2011-12-07 09:58:35 +0100
commit4c89518228012ddc3602eab405e4b5fb8108fcdf (patch)
tree615d4fdc38999e408d52998c39760064d223b652 /src/compositor/hardware_integration/xcomposite_share/xcompositehandler.h
parent542eca71e074b5110df2aaf822449bf7d6ec2b91 (diff)
Make wayland actually a module
Also fix so that QtCompositor can be built as shared object. + fix so that the default QT_WAYLAND_GL_CONFIG is wayland_egl Change-Id: I02b72e99286584426bd37ab2d00bbc84af11efdc Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
Diffstat (limited to 'src/compositor/hardware_integration/xcomposite_share/xcompositehandler.h')
-rw-r--r--src/compositor/hardware_integration/xcomposite_share/xcompositehandler.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/compositor/hardware_integration/xcomposite_share/xcompositehandler.h b/src/compositor/hardware_integration/xcomposite_share/xcompositehandler.h
new file mode 100644
index 000000000..28f5cd3db
--- /dev/null
+++ b/src/compositor/hardware_integration/xcomposite_share/xcompositehandler.h
@@ -0,0 +1,32 @@
+#ifndef XCOMPOSITEHANDLER_H
+#define XCOMPOSITEHANDLER_H
+
+#include "wayland_wrapper/wlcompositor.h"
+
+#include "xlibinclude.h"
+
+class XCompositeHandler : public Wayland::Object<struct wl_object>
+{
+public:
+ XCompositeHandler(Wayland::Compositor *compositor, Display *display, QWindow *window);
+ void createBuffer(struct wl_client *client, uint32_t id, Window window, const QSize &size);
+
+ static void xcomposite_bind_func(struct wl_client *client, void *data, uint32_t version, uint32_t id);
+ static struct wl_xcomposite_interface xcomposite_interface;
+
+private:
+ Wayland::Compositor *mCompositor;
+ QWindow *mwindow;
+ QWindow *mFakeRootWidget;
+ Display *mDisplay;
+
+ static void create_buffer(struct wl_client *client,
+ struct wl_resource *xcomposite,
+ uint32_t id,
+ uint32_t x_window,
+ int32_t width,
+ int32_t height);
+
+};
+
+#endif // XCOMPOSITEHANDLER_H