Closed Bug 528329 Opened 15 years ago Closed 12 years ago

Alarm is not fired when dismissed and later set reminder again

Categories

(Calendar :: Alarms, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: damian.publicemail, Assigned: Fallen)

Details

(Whiteboard: [needed beta][no l10n impact])

Attachments

(1 file)

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5 (.NET CLR 3.5.30729) Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.6pre) Gecko/20091112 Calendar/1.0pre I set the alarm for event but then decided that don't want to have reminder. However later I changed decision and set reminder again. It did not fire. Reproducible: Always Steps to Reproduce: 1. Create new event for tomorrow with reminder 2 days before the action. 2. Alarm fires once you save the event. 3. Dismiss the alarm. 4. Reopen the event and change the alarm for 1 day before the action. Actual Results: Alarm does not fire when event is closed. Expected Results: Alarm should be fired because reminder has been set again. Confirmed with local and google calendar.
Flags: blocking-calendar1.0+
Whiteboard: [not needed beta][no l10n impact]
Attached patch Fix - v1 β€” β€” Splinter Review
This should take care, I hope it covers all special cases. Please test.
Assignee: nobody → philipp
Status: NEW → ASSIGNED
Attachment #547143 - Flags: review?(matthew.mecca)
Whiteboard: [not needed beta][no l10n impact] → [not needed beta][no l10n impact][needs review]
Comment on attachment 547143 [details] [diff] [review] Fix - v1 Looks good. r=mmecca
Attachment #547143 - Flags: review?(matthew.mecca) → review+
Hmm I may have done something wrong with how recurring snooze props are handled, I'll take another look before checkin.
Whiteboard: [not needed beta][no l10n impact][needs review] → [needed beta][no l10n impact][needs patchwork]
Quick comment: I apologize for not being familiar with this system. Not sure if this is the appropriate forum. I am using Lightning 1.2.3 in Thunderbird 10.0.2 under WinXP. I noticed this same behavior--if I dismiss an alarm, then even if I open the event and change the reminder setting, I cannot get the alarm back. This is also true if I turn off the alarm, save the event, then turn the alarm back on.
Comment on attachment 547143 [details] [diff] [review] Fix - v1 The only issue I can see with this version of the patch as that if a single exception is modified on a repeating item, and an alarm is modified for that exception only, and that exception's original alarm has already been dismissed or snoozed, then the new alarm won't fire (because the X-MOZ-SNOOZE-TIME-[RID] prop needs to be cleared from the parent item). Since that is a special case and it's effect isn't any worse than the behavior without the patch, I'd suggest spinning that part off to a new bug and taking this patch for 1.9.2.
Attachment #547143 - Flags: approval-calendar-release?(philipp)
Attachment #547143 - Flags: approval-calendar-beta?(philipp)
Attachment #547143 - Flags: approval-calendar-aurora?(philipp)
Comment on attachment 547143 [details] [diff] [review] Fix - v1 Review of attachment 547143 [details] [diff] [review]: ----------------------------------------------------------------- The code is quite old, so here a few review comments on my own code :-P I guess we could give it a try for 1.9.2, I'd like to see this bake at least in a beta build before we do though. Please re-request approval when its been in the beta for a while. Luckily the merge has already happened. ::: calendar/base/content/dialogs/calendar-dialog-utils.js @@ +680,5 @@ > + } > + } > + > + // If the alarms differ, clear the snooze/dismiss properties > + if (oldAlarmMap.toSource() != "({})") { Object.keys(oldAlarmMap).length > 0 @@ +687,5 @@ > + > + // Recurring item alarms potentially have more snooze props, remove them > + // all. > + while (propEnum.hasMoreElements()) { > + let prop = propEnum.getNext().QueryInterface(Components.interfaces.nsIProperty); Probably best use fixIterator for this
Attachment #547143 - Flags: approval-calendar-release?(philipp)
Attachment #547143 - Flags: approval-calendar-release-
Attachment #547143 - Flags: approval-calendar-beta?(philipp)
Attachment #547143 - Flags: approval-calendar-beta+
Attachment #547143 - Flags: approval-calendar-aurora?(philipp)
Attachment #547143 - Flags: approval-calendar-aurora+
Bug 861594 will likely change the way this will need to be fixed.
Depends on: 861594
Matt, what should we do with this patch? Given the next ESR is not so far away I think it should be OK to just push it on c-c. Will you be fixing bug 861594 this cycle?
(In reply to Philipp Kewisch [:Fallen] from comment #8) > Matt, what should we do with this patch? Given the next ESR is not so far > away I think it should be OK to just push it on c-c. Will you be fixing bug > 861594 this cycle? I think we can take this patch now, I can work around it in Bug 861594, I'm not sure if that will be ready for the next ESR.
No longer depends on: 861594
Attachment #547143 - Flags: approval-calendar-release-
Attachment #547143 - Flags: approval-calendar-beta+
Attachment #547143 - Flags: approval-calendar-aurora+
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → 2.6
Whiteboard: [needed beta][no l10n impact][needs patchwork] → [needed beta][no l10n impact]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: