🚀 Add divider to Subcategories
* Added divider to the end of each subcategory * Created SettingsSubcategory composable, which manages subcategory's appearance
This commit is contained in:
parent
998de11536
commit
2dbd70e439
18 changed files with 261 additions and 388 deletions
|
|
@ -58,6 +58,7 @@ fun BrowseFilterBottomSheet() {
|
||||||
LazyColumn(Modifier.fillMaxSize()) {
|
LazyColumn(Modifier.fillMaxSize()) {
|
||||||
BrowseGeneralSubcategory(
|
BrowseGeneralSubcategory(
|
||||||
showTitle = false,
|
showTitle = false,
|
||||||
|
showDivider = false,
|
||||||
topPadding = 16.dp,
|
topPadding = 16.dp,
|
||||||
bottomPadding = 8.dp + it
|
bottomPadding = 8.dp + it
|
||||||
)
|
)
|
||||||
|
|
@ -68,6 +69,7 @@ fun BrowseFilterBottomSheet() {
|
||||||
LazyColumn(Modifier.fillMaxSize()) {
|
LazyColumn(Modifier.fillMaxSize()) {
|
||||||
BrowseFilterSubcategory(
|
BrowseFilterSubcategory(
|
||||||
showTitle = false,
|
showTitle = false,
|
||||||
|
showDivider = false,
|
||||||
topPadding = 16.dp,
|
topPadding = 16.dp,
|
||||||
bottomPadding = 8.dp + it
|
bottomPadding = 8.dp + it
|
||||||
)
|
)
|
||||||
|
|
@ -78,6 +80,7 @@ fun BrowseFilterBottomSheet() {
|
||||||
LazyColumn(Modifier.fillMaxSize()) {
|
LazyColumn(Modifier.fillMaxSize()) {
|
||||||
BrowseSortSubcategory(
|
BrowseSortSubcategory(
|
||||||
showTitle = false,
|
showTitle = false,
|
||||||
|
showDivider = false,
|
||||||
topPadding = 16.dp,
|
topPadding = 16.dp,
|
||||||
bottomPadding = 8.dp + it
|
bottomPadding = 8.dp + it
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -93,6 +93,7 @@ fun ReaderSettingsBottomSheet() {
|
||||||
)
|
)
|
||||||
MiscSubcategory(
|
MiscSubcategory(
|
||||||
titleColor = { MaterialTheme.colorScheme.onSurface },
|
titleColor = { MaterialTheme.colorScheme.onSurface },
|
||||||
|
showDivider = false,
|
||||||
topPadding = 22.dp,
|
topPadding = 22.dp,
|
||||||
bottomPadding = 8.dp + it
|
bottomPadding = 8.dp + it
|
||||||
)
|
)
|
||||||
|
|
@ -113,6 +114,7 @@ fun ReaderSettingsBottomSheet() {
|
||||||
)
|
)
|
||||||
TranslatorSubcategory(
|
TranslatorSubcategory(
|
||||||
titleColor = { MaterialTheme.colorScheme.onSurface },
|
titleColor = { MaterialTheme.colorScheme.onSurface },
|
||||||
|
showDivider = false,
|
||||||
topPadding = 22.dp,
|
topPadding = 22.dp,
|
||||||
bottomPadding = 8.dp + it
|
bottomPadding = 8.dp + it
|
||||||
)
|
)
|
||||||
|
|
@ -123,6 +125,7 @@ fun ReaderSettingsBottomSheet() {
|
||||||
LazyColumn(Modifier.fillMaxSize()) {
|
LazyColumn(Modifier.fillMaxSize()) {
|
||||||
ColorsSubcategory(
|
ColorsSubcategory(
|
||||||
showTitle = false,
|
showTitle = false,
|
||||||
|
showDivider = false,
|
||||||
backgroundColor = { MaterialTheme.colorScheme.surfaceContainer },
|
backgroundColor = { MaterialTheme.colorScheme.surfaceContainer },
|
||||||
topPadding = 16.dp,
|
topPadding = 16.dp,
|
||||||
bottomPadding = 8.dp + it
|
bottomPadding = 8.dp + it
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,67 @@
|
||||||
|
@file:Suppress("FunctionName")
|
||||||
|
|
||||||
|
package ua.acclorite.book_story.presentation.screens.settings.components
|
||||||
|
|
||||||
|
import androidx.compose.foundation.layout.Spacer
|
||||||
|
import androidx.compose.foundation.layout.height
|
||||||
|
import androidx.compose.foundation.layout.padding
|
||||||
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
|
import androidx.compose.material3.HorizontalDivider
|
||||||
|
import androidx.compose.runtime.Composable
|
||||||
|
import androidx.compose.ui.Modifier
|
||||||
|
import androidx.compose.ui.graphics.Color
|
||||||
|
import androidx.compose.ui.unit.Dp
|
||||||
|
import androidx.compose.ui.unit.coerceAtLeast
|
||||||
|
import androidx.compose.ui.unit.dp
|
||||||
|
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Settings Subcategory.
|
||||||
|
* Root for all Subcategories.
|
||||||
|
*
|
||||||
|
* @param titleColor The color of the title.
|
||||||
|
* @param title The title.
|
||||||
|
* @param showTitle Whether title should be shown.
|
||||||
|
* @param showDivider Whether divider at the end of the category should be shown.
|
||||||
|
* @param topPadding Top padding.
|
||||||
|
* @param bottomPadding Bottom padding.
|
||||||
|
* @param content Settings to be placed inside this subcategory.
|
||||||
|
*/
|
||||||
|
fun LazyListScope.SettingsSubcategory(
|
||||||
|
titleColor: @Composable () -> Color,
|
||||||
|
title: @Composable () -> String,
|
||||||
|
showTitle: Boolean,
|
||||||
|
showDivider: Boolean,
|
||||||
|
topPadding: Dp,
|
||||||
|
bottomPadding: Dp,
|
||||||
|
content: LazyListScope.() -> Unit
|
||||||
|
) {
|
||||||
|
item {
|
||||||
|
if (showTitle) {
|
||||||
|
CategoryTitle(
|
||||||
|
title = title.invoke(),
|
||||||
|
color = titleColor.invoke(),
|
||||||
|
modifier = Modifier
|
||||||
|
.padding(
|
||||||
|
top = topPadding,
|
||||||
|
bottom = 8.dp
|
||||||
|
)
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
Spacer(
|
||||||
|
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
content()
|
||||||
|
|
||||||
|
item {
|
||||||
|
if (showDivider) {
|
||||||
|
Spacer(modifier = Modifier.height(10.dp))
|
||||||
|
HorizontalDivider()
|
||||||
|
}
|
||||||
|
|
||||||
|
Spacer(modifier = Modifier.height(bottomPadding))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -31,6 +31,7 @@ fun LazyListScope.AppearanceSettingsCategory(
|
||||||
)
|
)
|
||||||
ColorsSubcategory(
|
ColorsSubcategory(
|
||||||
titleColor = titleColor,
|
titleColor = titleColor,
|
||||||
|
showDivider = false,
|
||||||
topPadding = 22.dp,
|
topPadding = 22.dp,
|
||||||
bottomPadding = bottomPadding
|
bottomPadding = bottomPadding
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.ColorPresetSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.ColorPresetSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.FastColorPresetChangeSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.FastColorPresetChangeSetting
|
||||||
|
|
||||||
|
|
@ -28,38 +22,24 @@ fun LazyListScope.ColorsSubcategory(
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.colors_appearance_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.colors_appearance_settings) },
|
||||||
backgroundColor: @Composable () -> Color = { MaterialTheme.colorScheme.surfaceContainerLow },
|
backgroundColor: @Composable () -> Color = { MaterialTheme.colorScheme.surfaceContainerLow },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
item {
|
||||||
)
|
ColorPresetSetting(backgroundColor = backgroundColor.invoke())
|
||||||
)
|
}
|
||||||
} else {
|
|
||||||
Spacer(
|
item {
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
FastColorPresetChangeSetting()
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
|
||||||
ColorPresetSetting(backgroundColor = backgroundColor.invoke())
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
FastColorPresetChangeSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.AbsoluteDarkSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.AbsoluteDarkSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.DarkThemeSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.DarkThemeSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.PureDarkSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.components.settings.PureDarkSetting
|
||||||
|
|
@ -30,50 +24,36 @@ fun LazyListScope.ThemePreferencesSubcategory(
|
||||||
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.theme_appearance_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.theme_appearance_settings) },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
item {
|
||||||
)
|
DarkThemeSetting()
|
||||||
)
|
}
|
||||||
} else {
|
|
||||||
Spacer(
|
item {
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
ThemeSetting()
|
||||||
)
|
}
|
||||||
|
|
||||||
|
item {
|
||||||
|
ThemeContrastSetting()
|
||||||
|
}
|
||||||
|
|
||||||
|
item {
|
||||||
|
PureDarkSetting()
|
||||||
|
}
|
||||||
|
|
||||||
|
item {
|
||||||
|
AbsoluteDarkSetting()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
|
||||||
DarkThemeSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
ThemeSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
ThemeContrastSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
PureDarkSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
AbsoluteDarkSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
@ -29,6 +29,7 @@ fun LazyListScope.BrowseSettingsCategory(
|
||||||
bottomPadding = 0.dp
|
bottomPadding = 0.dp
|
||||||
)
|
)
|
||||||
BrowseSortSubcategory(
|
BrowseSortSubcategory(
|
||||||
|
showDivider = false,
|
||||||
topPadding = 22.dp,
|
topPadding = 22.dp,
|
||||||
bottomPadding = bottomPadding
|
bottomPadding = bottomPadding
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseFilterSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseFilterSetting
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -26,32 +20,18 @@ fun LazyListScope.BrowseFilterSubcategory(
|
||||||
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.filter_browse_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.filter_browse_settings) },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
BrowseFilterSetting()
|
||||||
)
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
BrowseFilterSetting()
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseFilesStructureSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseFilesStructureSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseGridSizeSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseGridSizeSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseLayoutSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseLayoutSetting
|
||||||
|
|
@ -29,46 +23,32 @@ fun LazyListScope.BrowseGeneralSubcategory(
|
||||||
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.general_browse_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.general_browse_settings) },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
item {
|
||||||
)
|
BrowseFilesStructureSetting()
|
||||||
)
|
}
|
||||||
} else {
|
|
||||||
Spacer(
|
item {
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
BrowsePinFavoriteDirectoriesSetting()
|
||||||
)
|
}
|
||||||
|
|
||||||
|
item {
|
||||||
|
BrowseLayoutSetting()
|
||||||
|
}
|
||||||
|
|
||||||
|
item {
|
||||||
|
BrowseGridSizeSetting()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
|
||||||
BrowseFilesStructureSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
BrowsePinFavoriteDirectoriesSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
BrowseLayoutSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
BrowseGridSizeSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseSortOrderSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.browse.components.settings.BrowseSortOrderSetting
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -26,32 +20,18 @@ fun LazyListScope.BrowseSortSubcategory(
|
||||||
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.sort_browse_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.sort_browse_settings) },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
BrowseSortOrderSetting()
|
||||||
)
|
|
||||||
)
|
|
||||||
} else {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
BrowseSortOrderSetting()
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -25,9 +25,7 @@ fun LazyListScope.GeneralSettingsCategory(
|
||||||
bottomPadding: Dp = 48.dp
|
bottomPadding: Dp = 48.dp
|
||||||
) {
|
) {
|
||||||
item {
|
item {
|
||||||
Spacer(
|
Spacer(modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp)))
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
item {
|
||||||
|
|
@ -43,8 +41,6 @@ fun LazyListScope.GeneralSettingsCategory(
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
item {
|
||||||
Spacer(
|
Spacer(modifier = Modifier.height(bottomPadding))
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -50,6 +50,7 @@ fun LazyListScope.ReaderSettingsCategory(
|
||||||
)
|
)
|
||||||
MiscSubcategory(
|
MiscSubcategory(
|
||||||
titleColor = titleColor,
|
titleColor = titleColor,
|
||||||
|
showDivider = false,
|
||||||
topPadding = 22.dp,
|
topPadding = 22.dp,
|
||||||
bottomPadding = bottomPadding
|
bottomPadding = bottomPadding
|
||||||
)
|
)
|
||||||
|
|
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.FontFamilySetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.FontFamilySetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.FontSizeSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.FontSizeSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.FontStyleSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.FontStyleSetting
|
||||||
|
|
@ -29,46 +23,32 @@ fun LazyListScope.FontSubcategory(
|
||||||
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.font_reader_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.font_reader_settings) },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
item {
|
||||||
)
|
FontFamilySetting()
|
||||||
)
|
}
|
||||||
} else {
|
|
||||||
Spacer(
|
item {
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
FontStyleSetting()
|
||||||
)
|
}
|
||||||
|
|
||||||
|
item {
|
||||||
|
FontSizeSetting()
|
||||||
|
}
|
||||||
|
|
||||||
|
item {
|
||||||
|
LetterSpacingSetting()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
|
||||||
FontFamilySetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
FontStyleSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
FontSizeSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
LetterSpacingSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.FullscreenSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.FullscreenSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.KeepScreenOnSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.KeepScreenOnSetting
|
||||||
|
|
||||||
|
|
@ -27,38 +21,24 @@ fun LazyListScope.MiscSubcategory(
|
||||||
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.misc_reader_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.misc_reader_settings) },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
item {
|
||||||
)
|
FullscreenSetting()
|
||||||
)
|
}
|
||||||
} else {
|
|
||||||
Spacer(
|
item {
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
KeepScreenOnSetting()
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
|
||||||
FullscreenSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
KeepScreenOnSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.CutoutPaddingSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.CutoutPaddingSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.SidePaddingSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.SidePaddingSetting
|
||||||
|
|
||||||
|
|
@ -27,38 +21,24 @@ fun LazyListScope.PaddingSubcategory(
|
||||||
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.padding_reader_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.padding_reader_settings) },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
item {
|
||||||
)
|
SidePaddingSetting()
|
||||||
)
|
}
|
||||||
} else {
|
|
||||||
Spacer(
|
item {
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
CutoutPaddingSetting()
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
|
||||||
SidePaddingSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
CutoutPaddingSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.LineHeightSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.LineHeightSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.ParagraphHeightSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.ParagraphHeightSetting
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.ParagraphIndentationSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.ParagraphIndentationSetting
|
||||||
|
|
@ -29,46 +23,32 @@ fun LazyListScope.TextSubcategory(
|
||||||
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.text_reader_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.text_reader_settings) },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
item {
|
||||||
)
|
TextAlignmentSetting()
|
||||||
)
|
}
|
||||||
} else {
|
|
||||||
Spacer(
|
item {
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
LineHeightSetting()
|
||||||
)
|
}
|
||||||
|
|
||||||
|
item {
|
||||||
|
ParagraphHeightSetting()
|
||||||
|
}
|
||||||
|
|
||||||
|
item {
|
||||||
|
ParagraphIndentationSetting()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
|
||||||
TextAlignmentSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
LineHeightSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
ParagraphHeightSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
ParagraphIndentationSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
@ -2,20 +2,14 @@
|
||||||
|
|
||||||
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
package ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.subcategories
|
||||||
|
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
|
||||||
import androidx.compose.foundation.lazy.LazyListScope
|
import androidx.compose.foundation.lazy.LazyListScope
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
|
||||||
import androidx.compose.ui.graphics.Color
|
import androidx.compose.ui.graphics.Color
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.compose.ui.unit.Dp
|
import androidx.compose.ui.unit.Dp
|
||||||
import androidx.compose.ui.unit.coerceAtLeast
|
|
||||||
import androidx.compose.ui.unit.dp
|
|
||||||
import ua.acclorite.book_story.R
|
import ua.acclorite.book_story.R
|
||||||
import ua.acclorite.book_story.presentation.core.components.CategoryTitle
|
import ua.acclorite.book_story.presentation.screens.settings.components.SettingsSubcategory
|
||||||
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.DoubleClickTranslationSetting
|
import ua.acclorite.book_story.presentation.screens.settings.nested.reader.components.settings.DoubleClickTranslationSetting
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -26,34 +20,20 @@ fun LazyListScope.TranslatorSubcategory(
|
||||||
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
titleColor: @Composable () -> Color = { MaterialTheme.colorScheme.primary },
|
||||||
title: @Composable () -> String = { stringResource(id = R.string.translator_reader_settings) },
|
title: @Composable () -> String = { stringResource(id = R.string.translator_reader_settings) },
|
||||||
showTitle: Boolean = true,
|
showTitle: Boolean = true,
|
||||||
|
showDivider: Boolean = true,
|
||||||
topPadding: Dp,
|
topPadding: Dp,
|
||||||
bottomPadding: Dp
|
bottomPadding: Dp
|
||||||
) {
|
) {
|
||||||
item {
|
SettingsSubcategory(
|
||||||
if (showTitle) {
|
titleColor = titleColor,
|
||||||
CategoryTitle(
|
title = title,
|
||||||
title = title.invoke(),
|
showTitle = showTitle,
|
||||||
color = titleColor.invoke(),
|
showDivider = showDivider,
|
||||||
modifier = Modifier
|
topPadding = topPadding,
|
||||||
.padding(
|
bottomPadding = bottomPadding
|
||||||
top = topPadding,
|
) {
|
||||||
bottom = 8.dp
|
item {
|
||||||
)
|
DoubleClickTranslationSetting()
|
||||||
)
|
|
||||||
} else {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height((topPadding - 8.dp).coerceAtLeast(0.dp))
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
item {
|
|
||||||
DoubleClickTranslationSetting()
|
|
||||||
}
|
|
||||||
|
|
||||||
item {
|
|
||||||
Spacer(
|
|
||||||
modifier = Modifier.height(bottomPadding)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
@ -12,6 +12,7 @@ import ua.acclorite.book_story.presentation.screens.settings.nested.appearance.c
|
||||||
fun LazyListScope.startAppearanceScreen() {
|
fun LazyListScope.startAppearanceScreen() {
|
||||||
ThemePreferencesSubcategory(
|
ThemePreferencesSubcategory(
|
||||||
title = { stringResource(id = R.string.start_theme_preferences) },
|
title = { stringResource(id = R.string.start_theme_preferences) },
|
||||||
|
showDivider = false,
|
||||||
topPadding = 16.dp,
|
topPadding = 16.dp,
|
||||||
bottomPadding = 8.dp
|
bottomPadding = 8.dp
|
||||||
)
|
)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue