Merge pull request #1462 from fansangg/fix/share-layout-page-anim
fix: 修复共用布局下翻页动画文案读取错误
This commit is contained in:
@@ -1542,6 +1542,7 @@ class ReadBookViewModel(
|
||||
|
||||
private fun buildStyleConfig(): ReadBookStyleConfig {
|
||||
val config = ReadBookConfig
|
||||
val actualConfig = config.config
|
||||
val dur = config.durConfig
|
||||
return ReadBookStyleConfig(
|
||||
styleSelect = config.styleSelect,
|
||||
@@ -1560,8 +1561,8 @@ class ReadBookViewModel(
|
||||
textColor = dur.getTextColor(),
|
||||
textColorNight = dur.getTextColorNight(),
|
||||
textColorEInk = dur.getTextColorEInk(),
|
||||
pageAnim = dur.getPageAnim(),
|
||||
pageAnimEInk = dur.getPageAnimEInk(),
|
||||
pageAnim = actualConfig.getPageAnim(),
|
||||
pageAnimEInk = actualConfig.getPageAnimEInk(),
|
||||
shareLayout = config.shareLayout,
|
||||
configCount = config.configList.size,
|
||||
)
|
||||
|
||||
@@ -28,9 +28,15 @@ import androidx.compose.material.icons.filled.LightMode
|
||||
import androidx.compose.material.icons.filled.SpaceBar
|
||||
import androidx.compose.material.icons.filled.TextFields
|
||||
import androidx.compose.material3.Icon
|
||||
import androidx.compose.material3.PlainTooltip
|
||||
import androidx.compose.material3.TooltipAnchorPosition
|
||||
import androidx.compose.material3.TooltipBox
|
||||
import androidx.compose.material3.TooltipDefaults
|
||||
import androidx.compose.material3.rememberTooltipState
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.LaunchedEffect
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.mutableIntStateOf
|
||||
import androidx.compose.runtime.mutableStateOf
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.runtime.setValue
|
||||
@@ -174,36 +180,54 @@ fun GlobalThemePage(
|
||||
.fillMaxWidth()
|
||||
.padding(start = 12.dp, end = 12.dp, bottom = 12.dp),
|
||||
) {
|
||||
NormalCard(
|
||||
onClick = {
|
||||
val newShareLayout = !shareLayout
|
||||
onIntent(ReadBookIntent.UpdateConfig(ConfigUpdate.ShareLayout(newShareLayout)))
|
||||
onShareLayoutChange(newShareLayout)
|
||||
},
|
||||
modifier = Modifier
|
||||
.width(40.dp)
|
||||
.height(56.dp),
|
||||
cornerRadius = 8.dp,
|
||||
containerColor = if (shareLayout) {
|
||||
LegadoTheme.colorScheme.secondaryContainer
|
||||
} else {
|
||||
LegadoTheme.colorScheme.surfaceContainerLow
|
||||
},
|
||||
border = BorderStroke(
|
||||
1.dp,
|
||||
LegadoTheme.colorScheme.secondaryContainer.copy(alpha = 0.5f)
|
||||
TooltipBox(
|
||||
positionProvider = TooltipDefaults.rememberTooltipPositionProvider(
|
||||
TooltipAnchorPosition.Above
|
||||
),
|
||||
contentColor = if (shareLayout) LegadoTheme.colorScheme.onSecondaryContainer else null
|
||||
tooltip = {
|
||||
PlainTooltip(
|
||||
containerColor = LegadoTheme.colorScheme.surfaceContainerLow,
|
||||
contentColor = LegadoTheme.colorScheme.onSurface,
|
||||
) {
|
||||
AppText(
|
||||
text = stringResource(R.string.share_layout),
|
||||
style = LegadoTheme.typography.bodyMedium,
|
||||
)
|
||||
}
|
||||
},
|
||||
state = rememberTooltipState(),
|
||||
) {
|
||||
Box(
|
||||
modifier = Modifier.fillMaxSize(),
|
||||
contentAlignment = Alignment.Center
|
||||
NormalCard(
|
||||
onClick = {
|
||||
val newShareLayout = !shareLayout
|
||||
onIntent(ReadBookIntent.UpdateConfig(ConfigUpdate.ShareLayout(newShareLayout)))
|
||||
onShareLayoutChange(newShareLayout)
|
||||
},
|
||||
modifier = Modifier
|
||||
.width(40.dp)
|
||||
.height(56.dp),
|
||||
cornerRadius = 8.dp,
|
||||
containerColor = if (shareLayout) {
|
||||
LegadoTheme.colorScheme.secondaryContainer
|
||||
} else {
|
||||
LegadoTheme.colorScheme.surfaceContainerLow
|
||||
},
|
||||
border = BorderStroke(
|
||||
1.dp,
|
||||
LegadoTheme.colorScheme.secondaryContainer.copy(alpha = 0.5f)
|
||||
),
|
||||
contentColor = if (shareLayout) LegadoTheme.colorScheme.onSecondaryContainer else null
|
||||
) {
|
||||
Icon(
|
||||
Icons.Default.GridView,
|
||||
contentDescription = null,
|
||||
modifier = Modifier.size(20.dp),
|
||||
)
|
||||
Box(
|
||||
modifier = Modifier.fillMaxSize(),
|
||||
contentAlignment = Alignment.Center
|
||||
) {
|
||||
Icon(
|
||||
Icons.Default.GridView,
|
||||
contentDescription = stringResource(R.string.share_layout),
|
||||
modifier = Modifier.size(20.dp),
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
val styleListState = rememberLazyListState()
|
||||
|
||||
Reference in New Issue
Block a user