void sys_watch(win_t *win, Key_t key, mod_t mod)
{
//printf("sys_watch: %p - %x %hhx\n", win, key, mod);
void sys_watch(win_t *win, Key_t key, mod_t mod)
{
//printf("sys_watch: %p - %x %hhx\n", win, key, mod);
if (key_mouse0 <= key && key <= key_mouse7)
XGrabButton(win->sys->dpy, btn2x(key), mod2x(mod), win->sys->xid, True,
mod.up ? ButtonReleaseMask : ButtonPressMask,
GrabModeAsync, GrabModeAsync, None, None);
else if (key == key_enter)
if (key_mouse0 <= key && key <= key_mouse7)
XGrabButton(win->sys->dpy, btn2x(key), mod2x(mod), win->sys->xid, True,
mod.up ? ButtonReleaseMask : ButtonPressMask,
GrabModeAsync, GrabModeAsync, None, None);
else if (key == key_enter)
else
XGrabKey(win->sys->dpy, XKeysymToKeycode(win->sys->dpy, key2x(key)),
mod2x(mod), win->sys->xid, True, GrabModeAsync, GrabModeAsync);
else
XGrabKey(win->sys->dpy, XKeysymToKeycode(win->sys->dpy, key2x(key)),
mod2x(mod), win->sys->xid, True, GrabModeAsync, GrabModeAsync);
atoms[wm_proto] = XInternAtom(dpy, "WM_PROTOCOLS", False);
atoms[wm_focus] = XInternAtom(dpy, "WM_TAKE_FOCUS", False);
XSelectInput(dpy, xid, SubstructureRedirectMask|SubstructureNotifyMask);
atoms[wm_proto] = XInternAtom(dpy, "WM_PROTOCOLS", False);
atoms[wm_focus] = XInternAtom(dpy, "WM_TAKE_FOCUS", False);
XSelectInput(dpy, xid, SubstructureRedirectMask|SubstructureNotifyMask);
- //XSetInputFocus(dpy, None, RevertToNone, CurrentTime);
+ XSetInputFocus(dpy, None, RevertToNone, CurrentTime);