Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <gdk/gdk.h>
- #include <gdk/gdkx.h>
- #include <gtk/gtk.h>
- GdkFilterReturn filter(GdkXEvent *xevent, GdkEvent *event, gpointer data) {
- XKeyEvent *ev = (XKeyEvent *) xevent;
- if (ev->type == KeyPress) {
- printf("Ctrl hit.n");
- } else if (ev->type == KeyRelease) {
- printf("Ctrl release.n");
- }
- return GDK_FILTER_CONTINUE;
- }
- int main(int argc, char *argv[]) {
- gtk_init(&argc, &argv);
- GdkScreen *scr = gdk_screen_get_default();
- GdkWindow *groot = gdk_screen_get_root_window(scr);
- gdk_window_add_filter(groot, filter, NULL);
- Display *d = gdk_x11_get_default_xdisplay();`enter code here`
- Window root = GDK_WINDOW_XID(groot);
- int keycode = XKeysymToKeycode(d, XK_Control_L);
- XGrabKey(d, keycode, AnyModifier, root, 1, GrabModeAsync, GrabModeAsync);
- gtk_main();
- }
Add Comment
Please, Sign In to add comment