Skip to content

Conversation

@ahmtydn
Copy link

@ahmtydn ahmtydn commented Sep 28, 2025

Description

This PR adds support for retrieving the original start date of recurring events across all platforms (Android, iOS, and Dart).

Changes Made

  • Android:

    • Added originalStartDate property to Event model
    • Updated CalendarDelegate to retrieve and set original start date from calendar events
    • Added new projection index EVENT_PROJECTION_DTSTART_INDEX in Constants
  • iOS:

    • Added originalStartDate property to Event struct
    • Implemented logic to retrieve original start date from EKEvent
    • Added support for both recurring and non-recurring events
  • Dart:

    • Added originalStart property to Event model as TZDateTime?
    • Updated JSON serialization/deserialization to handle original start date
    • Added proper timezone handling for original start date

Benefits

  • Enables proper handling of recurring event instances
  • Provides access to the original start date for recurring events
  • Maintains consistency across all platforms (Android, iOS, Dart)
  • Supports timezone-aware date handling

Testing

  • Android platform testing
  • iOS platform testing
  • Integration tests for recurring events
  • Verify JSON serialization/deserialization works correctly

Breaking Changes

None. This is a backward-compatible addition.

Related Issues

This enhancement supports better recurring event management and provides necessary data for event instance handling.

Christopher Wolf and others added 27 commits July 14, 2024 20:57
Added event color (Android) + Updating of calendar color (Android/iOS)
When an Event object is created in flutter with null allDay value the value will default to false on iOS like it does on Android.
- Changed file permissions for various project files to ensure proper access.
- Updated Runner.xcscheme to reflect new build configurations and added custom LLDB init file.
- Modified AppDelegate.swift to use the new @main attribute.
- Updated asset files and their permissions, including app icons and launch images.
- Refactored event_item.dart and calendar_event.dart to improve code readability and performance.
- Updated pubspec.yaml to use newer versions of dependencies: intl, uuid, flutter_timezone, and added collection package.
- Created new build.gradle.kts for Android project configuration.
- Added AndroidManifest.xml for debug and profile builds.
- Implemented launch background and styles for Android.
- Added initial test cases in RunnerTests.swift.
@ahmtydn ahmtydn closed this Sep 28, 2025
@ahmtydn ahmtydn force-pushed the feature/add-original-start-date-for-recurring-events branch from 5886182 to 7124205 Compare September 28, 2025 12:40
@ahmtydn ahmtydn deleted the feature/add-original-start-date-for-recurring-events branch September 28, 2025 12:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.