From 2d9df62a503c6be54e4d953aa032e6cc6f872376 Mon Sep 17 00:00:00 2001 From: Hasinjato Date: Wed, 13 May 2026 10:38:57 +0300 Subject: [PATCH] Fixup! editing notes for lowercase template --- .../kotlin/mg/dot/feufaro/solfa/TUODetailDialog.kt | 2 +- .../kotlin/mg/dot/feufaro/solfa/TimeUnitObject.kt | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/TUODetailDialog.kt b/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/TUODetailDialog.kt index d2c4900..1c60b32 100644 --- a/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/TUODetailDialog.kt +++ b/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/TUODetailDialog.kt @@ -361,7 +361,7 @@ fun validateMusicalInput(input: String, template: String): Boolean { val regexPattern = buildString { cleanTemplate.forEachIndexed { index, char -> when (char) { - in 'A'..'Y' -> { + in 'A'..'Y', in 'a'..'y' -> { append("(?:―|di|ri|fi|si|ta|[drmfslt])[¹²³₁₂₃]*") } 'z' -> { diff --git a/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/TimeUnitObject.kt b/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/TimeUnitObject.kt index 8ae6713..8bf226f 100644 --- a/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/TimeUnitObject.kt +++ b/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/TimeUnitObject.kt @@ -15,6 +15,7 @@ import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.foundation.text.BasicTextField import androidx.compose.foundation.text.KeyboardOptions import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.automirrored.filled.ArrowBackIos import androidx.compose.material.icons.automirrored.filled.Undo import androidx.compose.material.icons.filled.Build import androidx.compose.material.icons.filled.Close @@ -1236,7 +1237,9 @@ fun autoFixNote(rawNote: String, template: String): String { val actualNotes = noteRegex.findAll(rawNote).map { it.value }.toList() if (rawNote.contains("•") || rawNote.contains("―") || rawNote.contains(",")) { - val templateNotesCount = template.count { it in 'A'..'Y' } + val templateNotesCount = template.count { c -> + c in 'A'..'Y' || c in 'a'..'y' + } if (actualNotes.size >= templateNotesCount) return rawNote } @@ -1246,7 +1249,7 @@ fun autoFixNote(rawNote: String, template: String): String { for (i in template.indices) { val char = template[i] when { - char in 'A'..'Y' -> { + (char in 'A'..'Y' || char in 'a'..'y') -> { if (noteIdx < actualNotes.size) { result.append(actualNotes[noteIdx]) noteIdx++