fix:切换主题【翻页动画】未跟随新主题,仍保留上个主题的效果 #1491
This commit is contained in:
@@ -713,6 +713,7 @@ sealed interface ConfigUpdateAction {
|
||||
data object InvalidateTextPage : ConfigUpdateAction
|
||||
data object UpdateLayout : ConfigUpdateAction
|
||||
data object SubmitRenderTask : ConfigUpdateAction
|
||||
data object UpdatePageAnim : ConfigUpdateAction
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -836,13 +837,28 @@ sealed interface ConfigUpdate {
|
||||
|
||||
// --- Layout / style ---
|
||||
data class StyleSelect(val index: Int) : ConfigUpdate {
|
||||
override val actions = setOf(ConfigUpdateAction.UpdateBackground, ConfigUpdateAction.UpdateStyle, ConfigUpdateAction.ReloadContent, ConfigUpdateAction.UpdateSystemUi)
|
||||
override val actions = setOf(
|
||||
ConfigUpdateAction.UpdateBackground,
|
||||
ConfigUpdateAction.UpdateStyle,
|
||||
ConfigUpdateAction.ReloadContent,
|
||||
ConfigUpdateAction.UpdateSystemUi,
|
||||
ConfigUpdateAction.UpdatePageAnim
|
||||
)
|
||||
}
|
||||
data class ShareLayout(val value: Boolean) : ConfigUpdate {
|
||||
override val actions = setOf(ConfigUpdateAction.UpdateBackground, ConfigUpdateAction.UpdateStyle, ConfigUpdateAction.ReloadContent)
|
||||
override val actions = setOf(
|
||||
ConfigUpdateAction.UpdateBackground,
|
||||
ConfigUpdateAction.UpdateStyle,
|
||||
ConfigUpdateAction.ReloadContent,
|
||||
ConfigUpdateAction.UpdatePageAnim
|
||||
)
|
||||
}
|
||||
data class PageAnim(val value: Int) : ConfigUpdate {
|
||||
override val actions = setOf(ConfigUpdateAction.UpdateBackground)
|
||||
override val actions = setOf(
|
||||
ConfigUpdateAction.UpdateBackground,
|
||||
ConfigUpdateAction.UpdatePageAnim,
|
||||
ConfigUpdateAction.ReloadContent
|
||||
)
|
||||
}
|
||||
|
||||
// --- Menu colors ---
|
||||
|
||||
@@ -600,6 +600,7 @@ class ReadBookController(
|
||||
ConfigUpdateAction.InvalidateTextPage -> r.readView.invalidateTextPage()
|
||||
ConfigUpdateAction.UpdateLayout -> ChapterProvider.upLayout()
|
||||
ConfigUpdateAction.SubmitRenderTask -> r.readView.submitRenderTask()
|
||||
ConfigUpdateAction.UpdatePageAnim -> r.readView.upPageAnim()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -988,7 +988,12 @@ class ReadBookViewModel(
|
||||
)
|
||||
}
|
||||
_effects.tryEmit(ReadBookEffect.UpdateReadViewConfig(
|
||||
setOf(ConfigUpdateAction.UpdateBackground, ConfigUpdateAction.UpdateStyle, ConfigUpdateAction.ReloadContent)
|
||||
setOf(
|
||||
ConfigUpdateAction.UpdateBackground,
|
||||
ConfigUpdateAction.UpdateStyle,
|
||||
ConfigUpdateAction.ReloadContent,
|
||||
ConfigUpdateAction.UpdatePageAnim
|
||||
)
|
||||
))
|
||||
}
|
||||
}
|
||||
@@ -1007,7 +1012,8 @@ class ReadBookViewModel(
|
||||
ConfigUpdateAction.UpdateBackgroundAlpha,
|
||||
ConfigUpdateAction.UpdateStyle,
|
||||
ConfigUpdateAction.UpdateSystemUi,
|
||||
ConfigUpdateAction.ReloadContent
|
||||
ConfigUpdateAction.ReloadContent,
|
||||
ConfigUpdateAction.UpdatePageAnim
|
||||
)
|
||||
)
|
||||
)
|
||||
@@ -3429,7 +3435,12 @@ class ReadBookViewModel(
|
||||
readBookStyleConfigRepository.importCurrentStyle(bytes)
|
||||
_uiState.update { it.copy(styleConfig = buildStyleConfig()) }
|
||||
_effects.tryEmit(ReadBookEffect.UpdateReadViewConfig(
|
||||
setOf(ConfigUpdateAction.UpdateBackground, ConfigUpdateAction.UpdateStyle, ConfigUpdateAction.ReloadContent)
|
||||
setOf(
|
||||
ConfigUpdateAction.UpdateBackground,
|
||||
ConfigUpdateAction.UpdateStyle,
|
||||
ConfigUpdateAction.ReloadContent,
|
||||
ConfigUpdateAction.UpdatePageAnim
|
||||
)
|
||||
))
|
||||
context.getString(R.string.success)
|
||||
}.onSuccess { message ->
|
||||
|
||||
@@ -341,7 +341,6 @@ fun GlobalThemePage(
|
||||
onClick = {
|
||||
ReadBook.book?.setPageAnim(-1)
|
||||
onIntent(ReadBookIntent.UpdateConfig(ConfigUpdate.PageAnim(index)))
|
||||
onIntent(ReadBookIntent.PageAnimChanged)
|
||||
dismiss()
|
||||
},
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user