Capturing global hotkeys with XGrabKey

2014-09-07 Thread Fernando Rodriguez
GDK_FILTER_CONTINUE; } int main( int argc, char *argv[] ) { gtk_init (argc, argv); gdk_window_add_filter( gdk_get_default_root_window(), root_window_filter, NULL); XGrabKey( gdk_x11_get_default_xdisplay

XGrabKey

2005-08-17 Thread Mario Levinsky
Hi! I would like to make possilbe in my gtk+ application using global hot keys, I found xbindkeys application, and use part of its code. Usage is simple: first I call this void grab_keys(Display *dpy, Keys_t *keys, int nb_keys); and after that I catch XKeyEvent. In xbindkeys it works, in

Re: XGrabKey

2005-08-17 Thread Tristan Sloughter
)) modmask = modmask | ControlMask; if (strstr(key, Alt)) modmask = modmask | Mod1Mask; if (strstr(key, Win)) modmask = modmask | Mod4Mask; if (strstr(key, None)) modmask = 0; if (strtok(key, +)) key = XStringToKeysym(strtok(NULL, +)); XGrabKey(dpy

Re: XGrabKey

2005-08-17 Thread Tristan Van Berkom
Alex Levin wrote: Hi Mario. I did something very similar in my app. Now that you are using X functions to process those keys, you need to handle them with X instead of GTK. So, keep your GTK key handler for regular keys, but for the keys you've grabbed use something like the following. I'm

Re: XGrabKey

2005-08-17 Thread Mario Levinsky
Thank you for your reply, as can I see you suggest using of gdk_display_add_client_message_filter it has parameter GdkAtom message_type but there are no information of it usage and how create GdkAtom as message type, how you use it? I did something very similar in my app. May be you hear