aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitri Sokolyuk <demon@dim13.org>2004-01-19 02:28:01 +0000
committerDimitri Sokolyuk <demon@dim13.org>2004-01-19 02:28:01 +0000
commitbe26c176c489e05a1a8cc870a9a0aef85b1b16be (patch)
treed57c2ee2d5d7fe392520b86d660c07c72e462749
parent26fbad98b51217c0747162717e3a075f03a306db (diff)
Original source from: http://sdb.suse.de/sdb/en/html/cg_x11numlock.html
-rw-r--r--setnumlock.c25
1 files changed, 10 insertions, 15 deletions
diff --git a/setnumlock.c b/setnumlock.c
index 5733f90..d0fb47e 100644
--- a/setnumlock.c
+++ b/setnumlock.c
@@ -1,19 +1,14 @@
/* $Id$ */
-/* Compile with gcc -L/usr/X11R6/lib -o setnumlock Numlock.c -lXtst */
-#include <stdio.h>
-#include <stdlib.h>
-#include <X11/X.h>
-#include <X11/Xlib.h>
-int main(void) {
- Display *display;
-
- if(!(display = XOpenDisplay(getenv("DISPLAY")))) {
- return fprintf(stderr, "unable to open display\n"), 11;
- }
+#include <X11/extensions/XTest.h>
+#include <X11/keysym.h>
- XTestFakeKeyEvent(display,77,1,0);
-
- XFlush(display);
- XCloseDisplay(display);
+int main(void) {
+ Display* disp = XOpenDisplay( NULL );
+ if( disp == NULL )
+ return 1;
+ XTestFakeKeyEvent( disp, XKeysymToKeycode( disp, XK_Num_Lock), True, CurrentTime );
+ XTestFakeKeyEvent( disp, XKeysymToKeycode( disp, XK_Num_Lock), False, CurrentTime );
+ XCloseDisplay( disp );
+ return 0;
}