aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgotmor <gotmor@f2baff5b-bf2c-0410-a398-912abdc3d8b2>2009-02-13 18:00:28 +0000
committergotmor <gotmor@f2baff5b-bf2c-0410-a398-912abdc3d8b2>2009-02-13 18:00:28 +0000
commite97fab3f956f9042fe240b58426c9d93f558c2f4 (patch)
tree3b14ae7a5c1c7e15e24eb416f6d94f3886158e3c
parent945c9936a036e2c24186aba12e0e8bf402f139fd (diff)
downloaddzen-e97fab3f956f9042fe240b58426c9d93f558c2f4.tar.gz
dzen-e97fab3f956f9042fe240b58426c9d93f558c2f4.zip
made ^ca() to always bind to the title window
git-svn-id: http://dzen.googlecode.com/svn/trunk@252 f2baff5b-bf2c-0410-a398-912abdc3d8b2
-rw-r--r--draw.c48
-rw-r--r--main.c7
2 files changed, 31 insertions, 24 deletions
diff --git a/draw.c b/draw.c
index edb7a7c..8fe6b2c 100644
--- a/draw.c
+++ b/draw.c
@@ -668,17 +668,19 @@ parse_line(const char *line, int lnr, int align, int reverse, int nodraw) {
font_was_set = 1;
break;
case ca:
- if(tval[0]) {
- if(sens_areas_cnt < MAX_CLICKABLE_AREAS) {
- get_sens_area(tval,
- &sens_areas[sens_areas_cnt].button,
- sens_areas[sens_areas_cnt].cmd);
- sens_areas[sens_areas_cnt].start_x = px;
- }
- } else {
- if(sens_areas_cnt < MAX_CLICKABLE_AREAS) {
- sens_areas[sens_areas_cnt].end_x = px;
- sens_areas_cnt++;
+ if(lnr == -1) {
+ if(tval[0]) {
+ if(sens_areas_cnt < MAX_CLICKABLE_AREAS) {
+ get_sens_area(tval,
+ &sens_areas[sens_areas_cnt].button,
+ sens_areas[sens_areas_cnt].cmd);
+ sens_areas[sens_areas_cnt].start_x = px;
+ }
+ } else {
+ if(sens_areas_cnt < MAX_CLICKABLE_AREAS) {
+ sens_areas[sens_areas_cnt].end_x = px;
+ sens_areas_cnt++;
+ }
}
}
break;
@@ -945,17 +947,19 @@ parse_line(const char *line, int lnr, int align, int reverse, int nodraw) {
font_was_set = 1;
break;
case ca:
- if(tval[0]) {
- if(sens_areas_cnt < MAX_CLICKABLE_AREAS) {
- get_sens_area(tval,
- &sens_areas[sens_areas_cnt].button,
- sens_areas[sens_areas_cnt].cmd);
- sens_areas[sens_areas_cnt].start_x = px;
- }
- } else {
- if(sens_areas_cnt < MAX_CLICKABLE_AREAS) {
- sens_areas[sens_areas_cnt].end_x = px;
- sens_areas_cnt++;
+ if(lnr == -1) {
+ if(tval[0]) {
+ if(sens_areas_cnt < MAX_CLICKABLE_AREAS) {
+ get_sens_area(tval,
+ &sens_areas[sens_areas_cnt].button,
+ sens_areas[sens_areas_cnt].cmd);
+ sens_areas[sens_areas_cnt].start_x = px;
+ }
+ } else {
+ if(sens_areas_cnt < MAX_CLICKABLE_AREAS) {
+ sens_areas[sens_areas_cnt].end_x = px;
+ sens_areas_cnt++;
+ }
}
}
break;
diff --git a/main.c b/main.c
index 3a320b1..511c047 100644
--- a/main.c
+++ b/main.c
@@ -642,13 +642,16 @@ handle_xev(void) {
}
/* clickable areas */
- for(i=0; i<20; i++) {
+ for(i=0; i<MAX_CLICKABLE_AREAS; i++) {
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)) {
spawn(sens_areas[i].cmd);
+ break;
+ }
}
+
switch(ev.xbutton.button) {
case Button1:
do_action(button1);