🛠️ Replace "ImagesAlignment" with universal "HorizontalAlignment"

This commit is contained in:
Acclorite 2025-01-12 17:03:49 +02:00
parent bfc5884a16
commit 8e531c5ced
10 changed files with 34 additions and 34 deletions

View file

@ -1,13 +0,0 @@
package ua.acclorite.book_story.domain.reader
import androidx.compose.ui.Alignment
enum class ReaderImagesAlignment(val alignment: Alignment) {
START(Alignment.CenterStart),
CENTER(Alignment.Center),
END(Alignment.CenterEnd)
}
fun String.toImagesAlignment(): ReaderImagesAlignment {
return ReaderImagesAlignment.valueOf(this)
}

View file

@ -0,0 +1,13 @@
package ua.acclorite.book_story.domain.util
import androidx.compose.ui.Alignment
enum class HorizontalAlignment(val alignment: Alignment) {
START(Alignment.CenterStart),
CENTER(Alignment.Center),
END(Alignment.CenterEnd)
}
fun String.toHorizontalAlignment(): HorizontalAlignment {
return HorizontalAlignment.valueOf(this)
}

View file

@ -16,13 +16,13 @@ import ua.acclorite.book_story.domain.library.book.Book
import ua.acclorite.book_story.domain.reader.Checkpoint
import ua.acclorite.book_story.domain.reader.FontWithName
import ua.acclorite.book_story.domain.reader.ReaderHorizontalGesture
import ua.acclorite.book_story.domain.reader.ReaderImagesAlignment
import ua.acclorite.book_story.domain.reader.ReaderText
import ua.acclorite.book_story.domain.reader.ReaderText.Chapter
import ua.acclorite.book_story.domain.reader.ReaderTextAlignment
import ua.acclorite.book_story.domain.ui.UIText
import ua.acclorite.book_story.domain.util.BottomSheet
import ua.acclorite.book_story.domain.util.Drawer
import ua.acclorite.book_story.domain.util.HorizontalAlignment
import ua.acclorite.book_story.ui.reader.ReaderEvent
import ua.acclorite.book_story.ui.settings.SettingsEvent
@ -62,7 +62,7 @@ fun ReaderContent(
fontColor: Color,
images: Boolean,
imagesCornersRoundness: Dp,
imagesAlignment: ReaderImagesAlignment,
imagesAlignment: HorizontalAlignment,
imagesWidth: Float,
imagesColorEffects: ColorFilter?,
fontFamily: FontWithName,

View file

@ -29,9 +29,9 @@ import androidx.compose.ui.unit.dp
import ua.acclorite.book_story.R
import ua.acclorite.book_story.domain.reader.FontWithName
import ua.acclorite.book_story.domain.reader.ReaderHorizontalGesture
import ua.acclorite.book_story.domain.reader.ReaderImagesAlignment
import ua.acclorite.book_story.domain.reader.ReaderText
import ua.acclorite.book_story.domain.reader.ReaderTextAlignment
import ua.acclorite.book_story.domain.util.HorizontalAlignment
import ua.acclorite.book_story.presentation.core.components.common.AnimatedVisibility
import ua.acclorite.book_story.presentation.core.components.common.LazyColumnWithScrollbar
import ua.acclorite.book_story.presentation.core.components.common.SelectionContainer
@ -61,7 +61,7 @@ fun ReaderLayout(
fontColor: Color,
images: Boolean,
imagesCornersRoundness: Dp,
imagesAlignment: ReaderImagesAlignment,
imagesAlignment: HorizontalAlignment,
imagesWidth: Float,
imagesColorEffects: ColorFilter?,
fontFamily: FontWithName,

View file

@ -11,9 +11,9 @@ import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.TextUnit
import ua.acclorite.book_story.domain.reader.FontWithName
import ua.acclorite.book_story.domain.reader.ReaderImagesAlignment
import ua.acclorite.book_story.domain.reader.ReaderText
import ua.acclorite.book_story.domain.reader.ReaderTextAlignment
import ua.acclorite.book_story.domain.util.HorizontalAlignment
import ua.acclorite.book_story.ui.reader.ReaderEvent
@Composable
@ -22,7 +22,7 @@ fun LazyItemScope.ReaderLayoutText(
showMenu: Boolean,
entry: ReaderText,
imagesCornersRoundness: Dp,
imagesAlignment: ReaderImagesAlignment,
imagesAlignment: HorizontalAlignment,
imagesWidth: Float,
imagesColorEffects: ColorFilter?,
fontFamily: FontWithName,

View file

@ -12,15 +12,15 @@ import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.ColorFilter
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.unit.Dp
import ua.acclorite.book_story.domain.reader.ReaderImagesAlignment
import ua.acclorite.book_story.domain.reader.ReaderText
import ua.acclorite.book_story.domain.util.HorizontalAlignment
@Composable
fun LazyItemScope.ReaderLayoutTextImage(
entry: ReaderText.Image,
sidePadding: Dp,
imagesCornersRoundness: Dp,
imagesAlignment: ReaderImagesAlignment,
imagesAlignment: HorizontalAlignment,
imagesWidth: Float,
imagesColorEffects: ColorFilter?
) {

View file

@ -24,10 +24,10 @@ import ua.acclorite.book_story.domain.library.book.Book
import ua.acclorite.book_story.domain.reader.Checkpoint
import ua.acclorite.book_story.domain.reader.FontWithName
import ua.acclorite.book_story.domain.reader.ReaderHorizontalGesture
import ua.acclorite.book_story.domain.reader.ReaderImagesAlignment
import ua.acclorite.book_story.domain.reader.ReaderText
import ua.acclorite.book_story.domain.reader.ReaderText.Chapter
import ua.acclorite.book_story.domain.reader.ReaderTextAlignment
import ua.acclorite.book_story.domain.util.HorizontalAlignment
import ua.acclorite.book_story.presentation.core.components.common.AnimatedVisibility
import ua.acclorite.book_story.ui.reader.ReaderEvent
import ua.acclorite.book_story.ui.settings.SettingsEvent
@ -66,7 +66,7 @@ fun ReaderScaffold(
fontColor: Color,
images: Boolean,
imagesCornersRoundness: Dp,
imagesAlignment: ReaderImagesAlignment,
imagesAlignment: HorizontalAlignment,
imagesWidth: Float,
imagesColorEffects: ColorFilter?,
fontFamily: FontWithName,

View file

@ -6,8 +6,8 @@ import androidx.compose.ui.res.stringResource
import androidx.hilt.navigation.compose.hiltViewModel
import androidx.lifecycle.compose.collectAsStateWithLifecycle
import ua.acclorite.book_story.R
import ua.acclorite.book_story.domain.reader.ReaderImagesAlignment
import ua.acclorite.book_story.domain.ui.ButtonItem
import ua.acclorite.book_story.domain.util.HorizontalAlignment
import ua.acclorite.book_story.presentation.core.components.settings.SegmentedButtonWithTitle
import ua.acclorite.book_story.ui.main.MainEvent
import ua.acclorite.book_story.ui.main.MainModel
@ -21,13 +21,13 @@ fun ImagesAlignmentOption() {
ExpandingTransition(visible = state.value.images) {
SegmentedButtonWithTitle(
title = stringResource(id = R.string.images_alignment_option),
buttons = ReaderImagesAlignment.entries.map {
buttons = HorizontalAlignment.entries.map {
ButtonItem(
id = it.toString(),
title = when (it) {
ReaderImagesAlignment.START -> stringResource(id = R.string.alignment_start)
ReaderImagesAlignment.CENTER -> stringResource(id = R.string.alignment_center)
ReaderImagesAlignment.END -> stringResource(id = R.string.alignment_end)
HorizontalAlignment.START -> stringResource(id = R.string.alignment_start)
HorizontalAlignment.CENTER -> stringResource(id = R.string.alignment_center)
HorizontalAlignment.END -> stringResource(id = R.string.alignment_end)
},
textStyle = MaterialTheme.typography.labelLarge,
selected = it == state.value.imagesAlignment

View file

@ -21,13 +21,13 @@ import ua.acclorite.book_story.domain.browse.toBrowseLayout
import ua.acclorite.book_story.domain.browse.toBrowseSortOrder
import ua.acclorite.book_story.domain.reader.toColorEffects
import ua.acclorite.book_story.domain.reader.toHorizontalGesture
import ua.acclorite.book_story.domain.reader.toImagesAlignment
import ua.acclorite.book_story.domain.reader.toReaderScreenOrientation
import ua.acclorite.book_story.domain.reader.toTextAlignment
import ua.acclorite.book_story.domain.use_case.data_store.ChangeLanguage
import ua.acclorite.book_story.domain.use_case.data_store.GetAllSettings
import ua.acclorite.book_story.domain.use_case.data_store.SetDatastore
import ua.acclorite.book_story.domain.use_case.remote.CheckForUpdates
import ua.acclorite.book_story.domain.util.toHorizontalAlignment
import ua.acclorite.book_story.presentation.core.constants.Constants
import ua.acclorite.book_story.presentation.core.constants.DataStoreConstants
import ua.acclorite.book_story.presentation.core.constants.provideFonts
@ -445,7 +445,7 @@ class MainModel @Inject constructor(
key = DataStoreConstants.IMAGES_ALIGNMENT,
value = event.value,
updateState = {
it.copy(imagesAlignment = this.toImagesAlignment())
it.copy(imagesAlignment = this.toHorizontalAlignment())
}
)

View file

@ -15,14 +15,14 @@ import ua.acclorite.book_story.domain.browse.toBrowseLayout
import ua.acclorite.book_story.domain.browse.toBrowseSortOrder
import ua.acclorite.book_story.domain.reader.ReaderColorEffects
import ua.acclorite.book_story.domain.reader.ReaderHorizontalGesture
import ua.acclorite.book_story.domain.reader.ReaderImagesAlignment
import ua.acclorite.book_story.domain.reader.ReaderScreenOrientation
import ua.acclorite.book_story.domain.reader.ReaderTextAlignment
import ua.acclorite.book_story.domain.reader.toColorEffects
import ua.acclorite.book_story.domain.reader.toHorizontalGesture
import ua.acclorite.book_story.domain.reader.toImagesAlignment
import ua.acclorite.book_story.domain.reader.toReaderScreenOrientation
import ua.acclorite.book_story.domain.reader.toTextAlignment
import ua.acclorite.book_story.domain.util.HorizontalAlignment
import ua.acclorite.book_story.domain.util.toHorizontalAlignment
import ua.acclorite.book_story.presentation.core.constants.Constants
import ua.acclorite.book_story.presentation.core.constants.DataStoreConstants
import ua.acclorite.book_story.presentation.core.constants.provideFonts
@ -99,7 +99,7 @@ data class MainState(
val chapterTitleAlignment: ReaderTextAlignment = provideDefaultValue { ReaderTextAlignment.JUSTIFY },
val images: Boolean = provideDefaultValue { true },
val imagesCornersRoundness: Int = provideDefaultValue { 8 },
val imagesAlignment: ReaderImagesAlignment = provideDefaultValue { ReaderImagesAlignment.START },
val imagesAlignment: HorizontalAlignment = provideDefaultValue { HorizontalAlignment.START },
val imagesWidth: Float = provideDefaultValue { 0.8f },
val imagesColorEffects: ReaderColorEffects = provideDefaultValue { ReaderColorEffects.OFF },
val progressBar: Boolean = provideDefaultValue { false },
@ -331,7 +331,7 @@ data class MainState(
) { imagesCornersRoundness },
imagesAlignment = provideValue(
IMAGES_ALIGNMENT, convert = { toImagesAlignment() }
IMAGES_ALIGNMENT, convert = { toHorizontalAlignment() }
) { imagesAlignment },
imagesWidth = provideValue(