From 904e8d2be446c07ef7c4273ded57f0910b7a3ebe Mon Sep 17 00:00:00 2001 From: Christophe CURIS Date: Sat, 17 May 2014 16:43:23 +0200 Subject: [PATCH] WMaker: moved XGrab/XUngrabPointer into the conditional code It is not necessary to call them when the command is not executable. Took opportunity to change parameter to XSync which is supposed to be a 'Bool' type from Xlib, which means either True or False. Signed-off-by: Christophe CURIS --- src/event.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/event.c b/src/event.c index e85de546..49b62e7e 100644 --- a/src/event.c +++ b/src/event.c @@ -1721,16 +1721,17 @@ static void handleKeyPress(XEvent * event) cmdline = ExpandOptions(scr, _("exec %a(Run,Type command to run:)")); - XGrabPointer(dpy, scr->root_win, True, 0, - GrabModeAsync, GrabModeAsync, None, wPreferences.cursor[WCUR_WAIT], CurrentTime); - XSync(dpy, 0); - if (cmdline) { + XGrabPointer(dpy, scr->root_win, True, 0, + GrabModeAsync, GrabModeAsync, None, wPreferences.cursor[WCUR_WAIT], CurrentTime); + XSync(dpy, False); + ExecuteShellCommand(scr, cmdline); wfree(cmdline); + + XUngrabPointer(dpy, CurrentTime); + XSync(dpy, False); } - XUngrabPointer(dpy, CurrentTime); - XSync(dpy, 0); break; }