From cbd91e801bf71eb0e7b2d5a2264c36007a3e12cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=A9mie=20Courr=C3=A8ges-Anglas?= Date: Mon, 18 Sep 2017 06:56:12 +0200 Subject: Move #ifdef HAVE_XRANDR in xrandr.c - always build xrandr.c - provide stubs in xrandr.c; only init_xrandr() anc xrandr_fill_screen() are safe to call if XRandR support is not built in Code that wants to use XRandR outside xrandr.c should test rp_have_xrandr. --- src/xrandr.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) (limited to 'src/xrandr.c') diff --git a/src/xrandr.c b/src/xrandr.c index 365602d..c369dbc 100644 --- a/src/xrandr.c +++ b/src/xrandr.c @@ -21,6 +21,8 @@ #include "ratpoison.h" +#ifdef HAVE_XRANDR + #include static int xrandr_evbase; @@ -262,3 +264,47 @@ xrandr_notify (XEvent *ev) break; } } + +#else /* HAVE_XRANDR */ + +void +init_xrandr(void) +{ + /* Nothing */ +} + +int +xrandr_query_screen (int **outputs) +{ + (void)outputs; + fatal("xrandr_query_screen shouldn't be called. This is a BUG."); + return 0; +} + +int +xrandr_is_primary (rp_screen *screen) +{ + (void)screen; + fatal("xrandr_is_primary shouldn't be called. This is a BUG."); + return 0; +} + +void +xrandr_fill_screen (int rr_output, rp_screen *screen) +{ + (void)rr_output; + memset(&screen->xrandr, 0, sizeof(screen->xrandr)); + screen->xrandr.primary = (rr_output == 0); + screen->xrandr.output = rr_output; + screen->xrandr.name = sbuf_new (0); + sbuf_concat (screen->xrandr.name, "N/A"); +} + +void +xrandr_notify (XEvent *ev) +{ + (void)ev; + fatal("xrandr_notify shouldn't be called. This is a BUG."); +} + +#endif /* HAVE_XRANDR */ -- cgit v1.2.3