From 3ec43b0b8546f3a0c74ffbe1e54bfc20072f8662 Mon Sep 17 00:00:00 2001 From: Elie Gambache Date: Sat, 13 Jun 2026 21:43:42 +0300 Subject: [PATCH] fix(bookcontent): scale alt headings with the selected text size AltHeadingItem used hardcoded font sizes (20/18/16sp per level), so alternate TOC headings did not follow the user's text size. Make the size relative to the base text size (x1.25 / x1.125 / x1.0), preserving the previous values at the default 16sp. --- .../ui/panels/bookcontent/views/BookContentView.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/SeforimApp/src/jvmMain/kotlin/io/github/kdroidfilter/seforimapp/features/bookcontent/ui/panels/bookcontent/views/BookContentView.kt b/SeforimApp/src/jvmMain/kotlin/io/github/kdroidfilter/seforimapp/features/bookcontent/ui/panels/bookcontent/views/BookContentView.kt index 800e27ac..c1bb947e 100644 --- a/SeforimApp/src/jvmMain/kotlin/io/github/kdroidfilter/seforimapp/features/bookcontent/ui/panels/bookcontent/views/BookContentView.kt +++ b/SeforimApp/src/jvmMain/kotlin/io/github/kdroidfilter/seforimapp/features/bookcontent/ui/panels/bookcontent/views/BookContentView.kt @@ -974,6 +974,7 @@ fun BookContentView( level = entry.level, text = entry.text, onClick = { onLineSelect(line, false) }, + baseTextSize = textSize, ) } } @@ -1004,6 +1005,7 @@ fun BookContentView( level = entry.level, text = entry.text, onClick = { onLineSelect(line, false) }, + baseTextSize = textSize, ) } } @@ -1266,12 +1268,13 @@ private fun AltHeadingItem( level: Int, text: String, onClick: () -> Unit, + baseTextSize: Float = 16f, ) { val fontSize = when (level) { - 0 -> 20.sp - 1 -> 18.sp - else -> 16.sp + 0 -> (baseTextSize * 1.25f).sp + 1 -> (baseTextSize * 1.125f).sp + else -> baseTextSize.sp } val paddingTop = if (level == 0) 4.dp else 0.dp val paddingBottom = 4.dp