--- a/event.c Mon Aug 14 15:11:02 2006 +0200
+++ b/event.c Mon Aug 14 15:31:58 2006 +0200
@@ -4,6 +4,7 @@
*/
#include "dwm.h"
#include <stdlib.h>
+#include <unistd.h>
#include <X11/keysym.h>
#include <X11/Xatom.h>
@@ -360,6 +361,11 @@
unsigned int i;
KeyCode code;
+ while(XGrabKeyboard(dpy, root, True, GrabModeAsync,
+ GrabModeAsync, CurrentTime) != GrabSuccess)
+ usleep(1000);
+ XUngrabKeyboard(dpy, CurrentTime);
+
for(i = 0; i < len; i++) {
code = XKeysymToKeycode(dpy, key[i].keysym);
XGrabKey(dpy, code, key[i].mod, root, True,
--- a/tag.c Mon Aug 14 15:11:02 2006 +0200
+++ b/tag.c Mon Aug 14 15:31:58 2006 +0200
@@ -37,11 +37,15 @@
void
appendtag(Arg *arg)
{
- if(!sel)
+ Client *c = sel;
+
+ if(!c)
return;
- sel->tags[arg->i] = True;
+ c->tags[arg->i] = True;
arrange(NULL);
+ focus(c);
+ restack();
}
void