Whenever the start date shifts forward, the setting of the end date should move forward too with the same increment that the user used for the start date.
When I set the start date to 18th of April 10:00 hrs the End Date should be set to 18th of April 10:00 by default. (Or maybe 11:00 hrs like Apple iCal does it)
If I now shift the start date (while being in “create event” still) to 19th of April 10:00 it should set the end date to that date automatically.
Then I set the end date to let’s say 20th of April 10:00 for example. Now what happens when I set the start date forward...:
If I would set the start date to 18th of April 10:00 and the end date to 20th of April 10:00 and then change the start date to 19th of April 10:00 it should shift the end date to 21st of April 10:00.
Then when I set the end date again it should respect that.
If I set the start date from 19th of April 10:00 to 19th of April 11:00 hrs the end date should shift with an additional hour.
Unless the end date was already “touched” by the user.
If that’s too complicated I recommend a fallback at least:
As fallback the end date should always be set to the start date plus one hour. Unless the end date is „touched“ by the user. So that the dumbest user can create events successfully.
When I set the start date to 18th of April 10:00 hrs the End Date should be set to 18th of April 10:00 by default. (Or maybe 11:00 hrs like Apple iCal does it)
If I now shift the start date (while being in “create event” still) to 19th of April 10:00 it should set the end date to that date automatically.
Then I set the end date to let’s say 20th of April 10:00 for example. Now what happens when I set the start date forward...:
If I would set the start date to 18th of April 10:00 and the end date to 20th of April 10:00 and then change the start date to 19th of April 10:00 it should shift the end date to 21st of April 10:00.
Then when I set the end date again it should respect that.
If I set the start date from 19th of April 10:00 to 19th of April 11:00 hrs the end date should shift with an additional hour.
Unless the end date was already “touched” by the user.
If that’s too complicated I recommend a fallback at least:
As fallback the end date should always be set to the start date plus one hour. Unless the end date is „touched“ by the user. So that the dumbest user can create events successfully.