summaryrefslogtreecommitdiff
path: root/src/xrandr.c
diff options
context:
space:
mode:
authorJérémie Courrèges-Anglas <jca@wxcvbn.org>2017-09-18 06:56:12 +0200
committerJérémie Courrèges-Anglas <jca@wxcvbn.org>2017-09-18 06:56:12 +0200
commitcbd91e801bf71eb0e7b2d5a2264c36007a3e12cc (patch)
tree482d38dbd98a11bcd9f8ad02557f3f16a0b0e7c2 /src/xrandr.c
parent0a90c2ac60cbb511ec24a52d723291d82a0124ba (diff)
downloadratpoison-cbd91e801bf71eb0e7b2d5a2264c36007a3e12cc.zip
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.
Diffstat (limited to 'src/xrandr.c')
-rw-r--r--src/xrandr.c46
1 files changed, 46 insertions, 0 deletions
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 <X11/extensions/Xrandr.h>
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 */