pinosaur
/
slock.git
/ commitdiff
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
9fa696d
)
added pointer grab
author
Anselm R. Garbe
<arg@10kloc.org>
Mon, 16 Oct 2006 10:59:37 +0000
(12:59 +0200)
committer
Anselm R. Garbe
<arg@10kloc.org>
Mon, 16 Oct 2006 10:59:37 +0000
(12:59 +0200)
config.mk
patch
|
blob
|
history
slock.c
patch
|
blob
|
history
diff --git
a/config.mk
b/config.mk
index
fd98ccb
..
0ece512
100644
(file)
--- a/
config.mk
+++ b/
config.mk
@@
-1,5
+1,5
@@
# slock version
# slock version
-VERSION = 0.
1
+VERSION = 0.
2
# Customize below to fit your system
# Customize below to fit your system
diff --git
a/slock.c
b/slock.c
index
0f4c3cc
..
72afd1e
100644
(file)
--- a/
slock.c
+++ b/
slock.c
@@
-63,9
+63,6
@@
main(int argc, char **argv) {
/* init */
passwd[0] = 0;
/* init */
passwd[0] = 0;
- while(XGrabKeyboard(dpy, RootWindow(dpy, screen), True, GrabModeAsync,
- GrabModeAsync, CurrentTime) != GrabSuccess)
- usleep(1000);
wa.override_redirect = 1;
wa.background_pixel = BlackPixel(dpy, screen);
wa.override_redirect = 1;
wa.background_pixel = BlackPixel(dpy, screen);
@@
-78,6
+75,11
@@
main(int argc, char **argv) {
pmap = XCreateBitmapFromData(dpy, w, curs, 8, 8);
invisible = XCreatePixmapCursor(dpy, pmap, pmap, &black, &black, 0, 0);
XDefineCursor(dpy, w, invisible);
pmap = XCreateBitmapFromData(dpy, w, curs, 8, 8);
invisible = XCreatePixmapCursor(dpy, pmap, pmap, &black, &black, 0, 0);
XDefineCursor(dpy, w, invisible);
+ running = XGrabPointer(dpy, RootWindow(dpy, screen), False,
+ ButtonPressMask | ButtonReleaseMask | PointerMotionMask,
+ GrabModeAsync, GrabModeSync, None, invisible, CurrentTime) == GrabSuccess
+ && XGrabKeyboard(dpy, RootWindow(dpy, screen), True, GrabModeAsync,
+ GrabModeAsync, CurrentTime) == GrabSuccess;
XMapRaised(dpy, w);
XSync(dpy, False);
XMapRaised(dpy, w);
XSync(dpy, False);
@@
-119,6
+121,7
@@
main(int argc, char **argv) {
break;
}
}
break;
}
}
+ XUngrabPointer(dpy, CurrentTime);
XFreePixmap(dpy, pmap);
XDestroyWindow(dpy, w);
XCloseDisplay(dpy);
XFreePixmap(dpy, pmap);
XDestroyWindow(dpy, w);
XCloseDisplay(dpy);