release: cut v2.4.0 — per-event colors
All checks were successful
CI / ci (push) Successful in 9m20s
Release — F-Droid repo + Gitea release / build-and-deploy (push) Successful in 9m22s
Release — F-Droid repo + Gitea release / ci (push) Successful in 2m3s
Release — F-Droid repo + Gitea release / gitea-release (push) Successful in 7s
All checks were successful
CI / ci (push) Successful in 9m20s
Release — F-Droid repo + Gitea release / build-and-deploy (push) Successful in 9m22s
Release — F-Droid repo + Gitea release / ci (push) Successful in 2m3s
Release — F-Droid repo + Gitea release / gitea-release (push) Successful in 7s
Optional per-event color in the event form. The read/render path already resolved EVENT_COLOR with a calendar fallback; this adds the write side and the picker. - Palette-backed calendars (Google, some CalDAV) pick from the account's Colors (TYPE_EVENT) and write EVENT_COLOR_KEY, so the color round-trips through sync; local calendars write a raw EVENT_COLOR from the shared CALENDAR_COLOR_PALETTE. Never writes a raw color to a palette calendar. - Swatch row + palette extracted to ui/common/ColorSwatchRow.kt (shared with the calendar editor). Switching calendars resets the choice (keys are account-scoped); a "Reset" action returns to the calendar color. - New "Allow colors on unsupported calendars" setting (off by default) extends the raw path to no-palette synced calendars, with an honest "may not survive sync" warning on the picker and in Settings. - Color flows through insert / dirty-checked update / occurrence-exception; mapper, form, and repository tests added. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -83,6 +83,15 @@
|
||||
<string name="event_edit_availability">Availability</string>
|
||||
<string name="event_edit_visibility">Visibility</string>
|
||||
|
||||
<!-- Event form — per-event color -->
|
||||
<string name="event_edit_color">Color</string>
|
||||
<string name="event_edit_color_default">Calendar color</string>
|
||||
<string name="event_edit_color_custom">Custom color</string>
|
||||
<string name="event_edit_color_reset">Reset</string>
|
||||
<string name="event_edit_color_unsupported">Not available for this calendar</string>
|
||||
<string name="event_edit_color_unsupported_hint">This calendar publishes no color set. You can allow custom colors for such calendars in Settings.</string>
|
||||
<string name="event_edit_color_sync_warning">This calendar may drop or overwrite the color on its next sync.</string>
|
||||
|
||||
<!-- Event form — save conflict (v2.0) -->
|
||||
<string name="event_edit_conflict_title">Event changed elsewhere</string>
|
||||
<string name="event_edit_conflict_body">While you were editing, this event was changed — by sync or another app. What should happen to your changes?</string>
|
||||
@@ -209,6 +218,8 @@
|
||||
<string name="settings_week_start_sunday">Sunday</string>
|
||||
<string name="settings_section_event_form">New event form</string>
|
||||
<string name="settings_form_fields_hint">Fields shown by default — everything else sits behind \"More fields\"</string>
|
||||
<string name="settings_color_unsupported">Allow colors on unsupported calendars</string>
|
||||
<string name="settings_color_unsupported_hint">Some calendars (e.g. certain CalDAV) publish no color set; a custom event color may be dropped or overwritten on their next sync. That\'s a limitation of those calendars, not something Calendula can fix.</string>
|
||||
<string name="settings_section_notifications">Notifications</string>
|
||||
<string name="settings_reminders">Event reminders</string>
|
||||
<string name="settings_reminders_hint">Seeing reminders twice? Another calendar app is posting them too — turn them off in one of the two.</string>
|
||||
|
||||
Reference in New Issue
Block a user