From 94e388734525460e8cf8e9d3779c562d352316fc Mon Sep 17 00:00:00 2001 From: Jean-Luc Makiola Date: Mon, 6 Jul 2026 18:39:54 +0200 Subject: [PATCH] fix: exclude managed special-dates calendars from import targets Symmetric with the export change: the contact-derived, editor-locked special-dates mirror calendars aren't a valid import destination, so drop them from the target-calendar picker. Co-Authored-By: Claude Opus 4.8 --- .../de/jeanlucmakiola/calendula/ui/imports/ImportViewModel.kt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/de/jeanlucmakiola/calendula/ui/imports/ImportViewModel.kt b/app/src/main/java/de/jeanlucmakiola/calendula/ui/imports/ImportViewModel.kt index 445a25f..248d656 100644 --- a/app/src/main/java/de/jeanlucmakiola/calendula/ui/imports/ImportViewModel.kt +++ b/app/src/main/java/de/jeanlucmakiola/calendula/ui/imports/ImportViewModel.kt @@ -84,12 +84,14 @@ class ImportViewModel @Inject constructor( else -> { // A disabled calendar is removed from the app, so it can't be // an import target — exclude it alongside the read-only ones. + // Managed special-dates calendars are contact-derived and + // editor-locked, so they're not a valid destination either. val disabled = prefs.disabledCalendarIds.first() ImportUiState.Many( events = parsed.events, warnings = parsed.warnings, calendars = repository.calendars().first() - .filter { it.canModifyContents && it.id !in disabled }, + .filter { it.canModifyContents && !it.isManaged && it.id !in disabled }, ) } }