Currently, allDay events are off by one day for negative timezones. Per
the CalendarContract:
If allDay is set to 1 eventTimezone must be "UTC" and the time must
correspond to a midnight boundary.
For example, in GMT-2:00, an all day event on December 2nd (beginning at
00:00:00) will be wrongly displayed as starting on December 1st, since
the locale will determine that the event's start time is actually
22:00:00 on Dec 1.
Source:
https://developer.android.com/reference/android/provider/CalendarContract.Events.html
This commit:
* Corrects the offset back to UTC 00:00:00 for allDay events
* Fixes the conditional for single-day all day events in showEvent()
* Fixes the display of formatDateShort() for some English locales by
also removing any trailing commas or whitespace when the year is
removed