From 86b74762c5d87bd0e1528fa38a4e303d4746e2b7 Mon Sep 17 00:00:00 2001 From: PhilKes Date: Sat, 10 May 2025 17:49:19 +0200 Subject: [PATCH] For API >= 33 use font weight 700 for bold --- .../com/philkes/notallyx/presentation/UiExtensions.kt | 9 ++++++++- .../presentation/activity/note/EditNoteActivity.kt | 3 ++- .../presentation/view/note/TextFormattingAdapter.kt | 3 ++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/philkes/notallyx/presentation/UiExtensions.kt b/app/src/main/java/com/philkes/notallyx/presentation/UiExtensions.kt index 3e83350f..c5e8a4b5 100644 --- a/app/src/main/java/com/philkes/notallyx/presentation/UiExtensions.kt +++ b/app/src/main/java/com/philkes/notallyx/presentation/UiExtensions.kt @@ -122,7 +122,7 @@ fun String.applySpans(representations: List): Editable { -> try { if (bold) { - editable.setSpan(StyleSpan(Typeface.BOLD), start, end) + editable.setSpan(createBoldSpan(), start, end) } if (italic) { editable.setSpan(StyleSpan(Typeface.ITALIC), start, end) @@ -144,6 +144,13 @@ fun String.applySpans(representations: List): Editable { return editable } +fun createBoldSpan() = + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { + StyleSpan(Typeface.BOLD, 700) + } else { + StyleSpan(Typeface.BOLD) + } + /** * Adjusts or removes spans based on the selection range. * diff --git a/app/src/main/java/com/philkes/notallyx/presentation/activity/note/EditNoteActivity.kt b/app/src/main/java/com/philkes/notallyx/presentation/activity/note/EditNoteActivity.kt index 89c77195..0dd5c4f1 100644 --- a/app/src/main/java/com/philkes/notallyx/presentation/activity/note/EditNoteActivity.kt +++ b/app/src/main/java/com/philkes/notallyx/presentation/activity/note/EditNoteActivity.kt @@ -40,6 +40,7 @@ import com.philkes.notallyx.presentation.activity.note.PickNoteActivity.Companio import com.philkes.notallyx.presentation.activity.note.PickNoteActivity.Companion.EXTRA_PICKED_NOTE_TYPE import com.philkes.notallyx.presentation.add import com.philkes.notallyx.presentation.addIconButton +import com.philkes.notallyx.presentation.createBoldSpan import com.philkes.notallyx.presentation.dp import com.philkes.notallyx.presentation.hideKeyboard import com.philkes.notallyx.presentation.setControlsContrastColorForAllViews @@ -212,7 +213,7 @@ class EditNoteActivity : EditActivity(Type.NOTE), AddNoteActions { 0, showAsAction = MenuItem.SHOW_AS_ACTION_NEVER, ) { - binding.EnterBody.applySpan(StyleSpan(Typeface.BOLD)) + binding.EnterBody.applySpan(createBoldSpan()) mode?.finish() } add( diff --git a/app/src/main/java/com/philkes/notallyx/presentation/view/note/TextFormattingAdapter.kt b/app/src/main/java/com/philkes/notallyx/presentation/view/note/TextFormattingAdapter.kt index f41cff75..bb1f9486 100644 --- a/app/src/main/java/com/philkes/notallyx/presentation/view/note/TextFormattingAdapter.kt +++ b/app/src/main/java/com/philkes/notallyx/presentation/view/note/TextFormattingAdapter.kt @@ -8,6 +8,7 @@ import android.text.style.TypefaceSpan import android.text.style.URLSpan import androidx.annotation.ColorInt import com.philkes.notallyx.R +import com.philkes.notallyx.presentation.createBoldSpan import com.philkes.notallyx.presentation.view.misc.StylableEditTextWithHistory class TextFormattingAdapter( @@ -35,7 +36,7 @@ class TextFormattingAdapter( private val bold: Toggle = Toggle(R.string.bold, R.drawable.format_bold, false) { if (!it.checked) { - editText.applySpan(StyleSpan(Typeface.BOLD)) + editText.applySpan(createBoldSpan()) } else { editText.clearFormatting(type = StylableEditTextWithHistory.TextStyleType.BOLD) }