diff options
author | Christian Linhart <chris@demorecorder.com> | 2017-03-18 09:52:52 +0100 |
---|---|---|
committer | Christian Linhart <chris@demorecorder.com> | 2017-05-13 11:12:05 +0200 |
commit | 7b8eb1b3a5d38e897cf2cd0f29ba4b90fd76e996 (patch) | |
tree | b1289bcac43b84e345278bb971b7dd8f494b3a47 | |
parent | 8b70e52443963fa7a8d017496bd67f9455eeddbc (diff) |
make xcb/demo compile again.
The reasoning behind this change is to prepare xcb/demo as
a place to be used for test-suites.
The changes are loosely based on patches posted by William Swanson
on Nov 17, 2012.
Signed-off-by: Christian Linhart <chris@demorecorder.com>
-rw-r--r-- | Makefile.am | 6 | ||||
-rw-r--r-- | tests/flames.c | 16 | ||||
-rw-r--r-- | tests/julia.c | 16 |
3 files changed, 26 insertions, 12 deletions
diff --git a/Makefile.am b/Makefile.am index 7521af0..0f0f715 100644 --- a/Makefile.am +++ b/Makefile.am @@ -22,7 +22,7 @@ xcb_test_LDADD = $(XCBAUX_LIBS) -lpthread xcb_test_SOURCES = xcb-test.c reply_formats.c reply_formats.h dpms_CFLAGS = $(XCBDPMS_CFLAGS) -dpms_LDADD = $(XCBDPMS_LIBS) +dpms_LDADD = $(XCBDPMS_LIBS) $(XCB_LIBS) dpms_SOURCES = dpms.c rendertest_CFLAGS = $(XCBAUX_CFLAGS) $(XCBRENDER_CFLAGS) @@ -34,9 +34,9 @@ xcbrandr_LDADD = $(XCBAUX_LIBS) $(XCBRANDR_LIBS) xcbrandr_SOURCES = xcbrandr.c xcbxf86dri_CFLAGS = $(XCBXF86DRI_CFLAGS) -xcbxf86dri_LDADD = $(XCBXF86DRI_LIBS) +xcbxf86dri_LDADD = $(XCBXF86DRI_LIBS) $(XCB_LIBS) xcbxf86dri_SOURCES = xcbxf86dri.c xcbxvinfo_CFLAGS = $(XCBXV_CFLAGS) -xcbxvinfo_LDADD = $(XCBXV_LIBS) +xcbxvinfo_LDADD = $(XCBXV_LIBS) $(XCB_LIBS) xcbxvinfo_SOURCES = xcbxvinfo.c diff --git a/tests/flames.c b/tests/flames.c index 89e93cf..391c7ed 100644 --- a/tests/flames.c +++ b/tests/flames.c @@ -32,8 +32,9 @@ #include <xcb/xcb_aux.h> #include <xcb/xcb_image.h> #include <xcb/xcb_atom.h> +#include <xcb/xcb_event.h> -/* Needed for xcb_set_wm_protocols() */ +/* Needed for xcb_icccm_set_wm_protocols() */ #include <xcb/xcb_icccm.h> #define XCB_ALL_PLANES ~0 @@ -76,7 +77,6 @@ typedef struct }flame; -static xcb_atom_t get_atom (xcb_connection_t *connection, const char *atomName); static void title_set (flame *f, const char *title); static int ilog2 (unsigned int n); static void flame_set_palette (flame *f); @@ -86,6 +86,12 @@ static void flame_modify_flame_base (flame *f); static void flame_process_flame (flame *f); static void flame_draw_flame (flame *f); +static xcb_atom_t get_atom(xcb_connection_t* c, const char *name) +{ + xcb_intern_atom_cookie_t cookie = xcb_intern_atom(c, 0, strlen(name), name); + return xcb_intern_atom_reply(c, cookie, NULL)->atom; +} + flame * flame_init () { @@ -215,13 +221,13 @@ main () flame_set_flame_zero (f); flame_set_random_flame_base (f); - xcb_atom_t deleteWindowAtom = xcb_atom_get(f->xcb.c, "WM_DELETE_WINDOW"); - xcb_atom_t wmprotocolsAtom = xcb_atom_get(f->xcb.c, "WM_PROTOCOLS"); + xcb_atom_t deleteWindowAtom = get_atom(f->xcb.c, "WM_DELETE_WINDOW"); + xcb_atom_t wmprotocolsAtom = get_atom(f->xcb.c, "WM_PROTOCOLS"); /* Listen to X client messages in order to be able to pickup the "delete window" message that is generated for example when someone clicks the top-right X button within the window manager decoration (or when user hits ALT-F4). */ - xcb_set_wm_protocols (f->xcb.c, wmprotocolsAtom, f->xcb.draw, 1, &deleteWindowAtom); + xcb_icccm_set_wm_protocols (f->xcb.c, f->xcb.draw, wmprotocolsAtom, 1, &deleteWindowAtom); bool finished = false; while (!finished) diff --git a/tests/julia.c b/tests/julia.c index 75468ce..eefd829 100644 --- a/tests/julia.c +++ b/tests/julia.c @@ -9,9 +9,11 @@ #include <xcb/xcb_aux.h> #include <xcb/xcb_image.h> #include <xcb/xcb_atom.h> +#include <xcb/xcb_event.h> + #define XCB_ALL_PLANES ~0 -/* Needed for xcb_set_wm_protocols() */ +/* Needed for xcb_icccm_set_wm_protocols() */ #include <xcb/xcb_icccm.h> #include "julia.h" @@ -120,6 +122,12 @@ draw_julia (Data *datap) 0, 0, 0); } +static xcb_atom_t get_atom(xcb_connection_t* c, const char *name) +{ + xcb_intern_atom_cookie_t cookie = xcb_intern_atom(c, 0, strlen(name), name); + return xcb_intern_atom_reply(c, cookie, NULL)->atom; +} + int main (int argc, char *argv[]) { @@ -186,13 +194,13 @@ main (int argc, char *argv[]) palette_julia (&data); - xcb_atom_t deleteWindowAtom = xcb_atom_get(data.conn, "WM_DELETE_WINDOW"); - xcb_atom_t wmprotocolsAtom = xcb_atom_get(data.conn, "WM_PROTOCOLS"); + xcb_atom_t deleteWindowAtom = get_atom(data.conn, "WM_DELETE_WINDOW"); + xcb_atom_t wmprotocolsAtom = get_atom(data.conn, "WM_PROTOCOLS"); /* Listen to X client messages in order to be able to pickup the "delete window" message that is generated for example when someone clicks the top-right X button within the window manager decoration (or when user hits ALT-F4). */ - xcb_set_wm_protocols (data.conn, wmprotocolsAtom, data.draw, 1, &deleteWindowAtom); + xcb_icccm_set_wm_protocols (data.conn, data.draw, wmprotocolsAtom, 1, &deleteWindowAtom); xcb_flush (data.conn); |