diff --git a/slock.c b/slock.c
index 7f74f71..96d4379 100644
--- a/slock.c
+++ b/slock.c
@@ -201,6 +201,8 @@ lockscreen(Display *dpy, int screen) {
 		unlockscreen(dpy, lock);
 		lock = NULL;
 	}
+	else 
+		XSelectInput(dpy, lock->root, SubstructureNotifyMask);
 
 	return lock;
 }