summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Fleischer <calcurse@cryptocrack.de>2011-07-29 18:04:54 +0200
committerLukas Fleischer <calcurse@cryptocrack.de>2011-07-29 20:38:43 +0200
commitcce0acbe007b346afdebe0e9ba5dedf72b2eaf53 (patch)
treecb04313a0f4f0303a847a70b5865f63570eef8a9
parent5a5c6d2604664478306b29b64bf876d7403b74bb (diff)
downloadcalcurse-cce0acbe007b346afdebe0e9ba5dedf72b2eaf53.zip
Update the notification item in day_edit_item()
Ensure the start time as well as the description of the notification appointment are synced after editing it. We use notify_check_next_app()'s force parameter to ensure that the notification item is updated even if only the description was modified. Reported-by: Andraž 'ruskie' Levstik <ruskie@codemages.net> Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
-rw-r--r--src/day.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/day.c b/src/day.c
index 4c73f43..7e2f6fb 100644
--- a/src/day.c
+++ b/src/day.c
@@ -772,6 +772,7 @@ day_edit_item (struct conf *conf)
struct apoint *a;
long date;
int item_num, ch;
+ int need_check_notify = 0;
item_num = apoint_hilt ();
p = day_get_item (item_num);
@@ -811,15 +812,19 @@ day_edit_item (struct conf *conf)
switch (ch)
{
case STRT:
+ need_check_notify = 1;
update_start_time (&ra->start, &ra->dur);
break;
case END:
update_duration (&ra->start, &ra->dur);
break;
case DESC:
+ if (notify_bar ())
+ need_check_notify = notify_same_recur_item (ra);
update_desc (&ra->mesg);
break;
case REPT:
+ need_check_notify = 1;
update_rept (&ra->rpt, ra->start, conf);
break;
case KEY_GENERIC_CANCEL:
@@ -835,12 +840,15 @@ day_edit_item (struct conf *conf)
switch (ch)
{
case STRT:
+ need_check_notify = 1;
update_start_time (&a->start, &a->dur);
break;
case END:
update_duration (&a->start, &a->dur);
break;
case DESC:
+ if (notify_bar ())
+ need_check_notify = notify_same_item (a->start);
update_desc (&a->mesg);
break;
case KEY_GENERIC_CANCEL:
@@ -848,6 +856,9 @@ day_edit_item (struct conf *conf)
}
break;
}
+
+ if (need_check_notify)
+ notify_check_next_app (1);
}
/*