Xinqi Bao's Git

4aeae0dc2fa0d0a1878ea8d0f7cfdcf479077cd7
[slstatus.git] / keyboard_indicators.c
1 #include <err.h>
2 #include <X11/Xlib.h>
3
4 #include "util.h"
5
6 const char *
7 keyboard_indicators(void)
8 {
9 Display *dpy = XOpenDisplay(NULL);
10 XKeyboardState state;
11
12 if (dpy == NULL) {
13 warnx("XOpenDisplay failed");
14 return NULL;
15 }
16 XGetKeyboardControl(dpy, &state);
17 XCloseDisplay(dpy);
18
19 switch (state.led_mask) {
20 case 1:
21 return "c";
22 case 2:
23 return "n";
24 case 3:
25 return "cn";
26 default:
27 return "";
28 }
29 }