aboutsummaryrefslogtreecommitdiffstats
path: root/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'main.c')
-rw-r--r--main.c54
1 files changed, 29 insertions, 25 deletions
diff --git a/main.c b/main.c
index e20a735..a5ed9e1 100644
--- a/main.c
+++ b/main.c
@@ -599,7 +599,7 @@ x_redraw(Window w) {
static void
handle_xev(void) {
XEvent ev;
- int i;
+ int i, sa_clicked=0;
char buf[32];
KeySym ksym;
@@ -646,34 +646,38 @@ handle_xev(void) {
if(ev.xbutton.window == dzen.title_win.win &&
ev.xbutton.button == sens_areas[i].button &&
(ev.xbutton.x >= sens_areas[i].start_x+xorig &&
- ev.xbutton.x <= sens_areas[i].end_x+xorig)) {
+ ev.xbutton.x <= sens_areas[i].end_x+xorig) &&
+ (ev.xbutton.y >= sens_areas[i].start_y &&
+ ev.xbutton.y <= sens_areas[i].end_y)) {
spawn(sens_areas[i].cmd);
+ sa_clicked++;
break;
}
}
-
- switch(ev.xbutton.button) {
- case Button1:
- do_action(button1);
- break;
- case Button2:
- do_action(button2);
- break;
- case Button3:
- do_action(button3);
- break;
- case Button4:
- do_action(button4);
- break;
- case Button5:
- do_action(button5);
- break;
- case Button6:
- do_action(button6);
- break;
- case Button7:
- do_action(button7);
- break;
+ if(!sa_clicked) {
+ switch(ev.xbutton.button) {
+ case Button1:
+ do_action(button1);
+ break;
+ case Button2:
+ do_action(button2);
+ break;
+ case Button3:
+ do_action(button3);
+ break;
+ case Button4:
+ do_action(button4);
+ break;
+ case Button5:
+ do_action(button5);
+ break;
+ case Button6:
+ do_action(button6);
+ break;
+ case Button7:
+ do_action(button7);
+ break;
+ }
}
break;
case KeyPress: