Skip to content

Instantly share code, notes, and snippets.

@voldyman
Last active August 29, 2015 14:07
Show Gist options
  • Save voldyman/133f68301c4e6a20441c to your computer and use it in GitHub Desktop.
Save voldyman/133f68301c4e6a20441c to your computer and use it in GitHub Desktop.
code to for global hot keys
void main(string[] args) {
Gtk.init (ref args);
Gdk.Window win = Gdk.get_default_root_window ();
win.add_filter(null, filter_func);
unowned X.Display display = Gdk.X11.get_default_xdisplay ();
display.grab_key (display.keysym_to_keycode('C'),
Gdk.ModifierType.CONTROL_MASK | Gdk.ModifierType.SHIFT_MASK,
Gdk.X11.get_default_root_xwindow(),
false, X.GrabMode.Async, X.GrabMode.Async);
Gtk.main ();
}
Gdk.FilterReturn filter_func(Gdk.XEvent gdk_xevent, Gdk.Event ev) {
Gdk.FilterReturn filter_return = Gdk.FilterReturn.CONTINUE;
X.Event *xevent = (X.Event *) gdk_xevent;
if (xevent->type == X.EventType.KeyPress) {
stdout.printf ("Keycode: %u\n",xevent->xkey.keycode);
}
return filter_return;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment