|
|
@@ -458,6 +458,11 @@ void clear_resize(void) |
|
|
|
resized = false; |
|
|
|
} |
|
|
|
|
|
|
|
Bool is_input_ev(Display *dpy, XEvent *ev, XPointer arg) |
|
|
|
{ |
|
|
|
return ev->type == ButtonPress || ev->type == KeyPress; |
|
|
|
} |
|
|
|
|
|
|
|
void run_key_handler(const char *key, unsigned int mask) |
|
|
|
{ |
|
|
|
pid_t pid; |
|
|
@@ -468,6 +473,7 @@ void run_key_handler(const char *key, unsigned int mask) |
|
|
|
int fcnt = marked ? markcnt : 1; |
|
|
|
char kstr[32]; |
|
|
|
struct stat *oldst, st; |
|
|
|
XEvent dump; |
|
|
|
|
|
|
|
if (keyhandler.f.err != 0) { |
|
|
|
if (!keyhandler.warned) { |
|
|
@@ -538,6 +544,9 @@ void run_key_handler(const char *key, unsigned int mask) |
|
|
|
f++; |
|
|
|
} |
|
|
|
} |
|
|
|
/* drop user input events that occured while running the key handler */ |
|
|
|
while (XCheckIfEvent(win.env.dpy, &dump, is_input_ev, NULL)); |
|
|
|
|
|
|
|
end: |
|
|
|
if (mode == MODE_IMAGE) { |
|
|
|
if (changed) { |
|
|
|