Skip to content

Weekly event is shifted by one dayΒ #491

@GniLudio

Description

@GniLudio

When I create an weekly event, it seems to behave differently than other recurring events.

Example

When adding events with the all different frequencies to the start of the month, only the weekly event is shifted by one day.

Image

Code

// main.dart
import 'package:calendar_view/calendar_view.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: Text("CalendarView Test"), centerTitle: true),
        body: SafeArea(child: CalendarViewTest()),
      ),
    );
  }
}

class CalendarViewTest extends StatelessWidget {
  const CalendarViewTest({super.key});

  @override
  Widget build(BuildContext context) {
    final EventController eventController = EventController();
    eventController.addAll(RepeatFrequency.values.map(createEvent).toList());
    return CalendarControllerProvider(
      controller: eventController,
      child: DefaultTabController(
        length: 3,
        child: Scaffold(
          appBar: TabBar(
            tabs: [
              Tab(text: "Month"),
              Tab(text: "Week"),
              Tab(text: "Day"),
            ],
          ),
          body: TabBarView(
            children: [
              MonthView(
                controller: eventController,
                useAvailableVerticalSpace: true,
              ),
              WeekView(controller: eventController),
              DayView(controller: eventController),
            ],
          ),
        ),
      ),
    );
  }
}

CalendarEventData createEvent(RepeatFrequency frequency) {
  DateTime firstOfMonth = DateTime.now().withoutTime.copyWith(day: 1);
  return CalendarEventData(
    title: frequency.name,
    date: firstOfMonth,
    recurrenceSettings: RecurrenceSettings(
      startDate: firstOfMonth,
      frequency: frequency,
    ),
  );
}

calendar_view_test.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions