Fixes to support multiple alarm instances

To properly support pre-dismissed alarms we need to support scheduling
the next alarm instance when the upcoming alarm is pre-dismissed.

- When scheduling the next alarm for the pre-dismissed instance, we need
  to ensure that the earlier instance will be scheduled if a time jump
  as occured.
- After a time jump has occured we need to fix the alarm instances in
  reverse chronological order so that the later alarm instances (outside
  of our relevant interval) will be deleted prior to re-scheduling the
  earlier pre-dimissed instances.

Change-Id: I4c16e3da35578305793cc4c4b0ff83fd33de9f2a
1 file changed