fix: 修复阅读菜单透明度失效

This commit is contained in:
fansan
2026-06-16 00:44:01 +08:00
committed by HapeLee
parent 80ef13e568
commit 9f59f76185
6 changed files with 15 additions and 25 deletions
@@ -125,7 +125,7 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
ReadConfig.pageTouchSlop = preferences.pageTouchSlop ReadConfig.pageTouchSlop = preferences.pageTouchSlop
ReadConfig.showReadTitleAddition = preferences.showReadTitleAddition ReadConfig.showReadTitleAddition = preferences.showReadTitleAddition
ReadConfig.titleBarMode = preferences.titleBarMode ReadConfig.titleBarMode = preferences.titleBarMode
ReadConfig.menuAlpha = preferences.menuAlpha ReadConfig.readMenuBlurAlpha = preferences.readMenuBlurAlpha
ReadConfig.readSliderMode = preferences.readSliderMode ReadConfig.readSliderMode = preferences.readSliderMode
readBarStyleFollowPageValue = preferences.readBarStyleFollowPage readBarStyleFollowPageValue = preferences.readBarStyleFollowPage
readBarStyleValue = preferences.readBarStyle readBarStyleValue = preferences.readBarStyle
@@ -837,9 +837,9 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
ThemeConfig.enableBlur = value ThemeConfig.enableBlur = value
} }
var menuAlpha: Int var menuAlpha: Int
get() = ReadConfig.menuAlpha get() = ReadConfig.readMenuBlurAlpha
set(value) { set(value) {
ReadConfig.menuAlpha = value ReadConfig.readMenuBlurAlpha = value
} }
var readSliderMode var readSliderMode
@@ -882,7 +882,7 @@ private fun MenuTitleBar(
progressive = topBarProgressiveBlur, progressive = topBarProgressiveBlur,
) )
} else { } else {
Modifier.background(colors.background) Modifier.background(colors.background.copy(alpha = topBarAlpha))
} }
) )
.then( .then(
@@ -1828,11 +1828,6 @@ private fun SearchBottomMenuContent(
Column( Column(
modifier = Modifier modifier = Modifier
.fillMaxWidth() .fillMaxWidth()
.background(
if (surfaceEffectEnabled) Color.Transparent else colors.background.copy(
alpha = state.menuConfig.readMenuBlurAlpha.coerceIn(0, 100) / 100f
)
)
.windowInsetsPadding( .windowInsetsPadding(
WindowInsets.safeDrawing.only(WindowInsetsSides.Horizontal) WindowInsets.safeDrawing.only(WindowInsetsSides.Horizontal)
) )
@@ -2023,11 +2018,6 @@ private fun MenuBottomBar(
Column( Column(
modifier = Modifier modifier = Modifier
.fillMaxWidth() .fillMaxWidth()
.background(
if (surfaceEffectEnabled) Color.Transparent else colors.background.copy(
alpha = state.menuConfig.readMenuBlurAlpha.coerceIn(0, 100) / 100f
)
)
.windowInsetsPadding( .windowInsetsPadding(
WindowInsets.safeDrawing.only(WindowInsetsSides.Horizontal) WindowInsets.safeDrawing.only(WindowInsetsSides.Horizontal)
) )
@@ -130,7 +130,7 @@ object ReadConfig {
expandTextMenu = preferences.expandTextMenu expandTextMenu = preferences.expandTextMenu
showReadTitleAddition = preferences.showReadTitleAddition showReadTitleAddition = preferences.showReadTitleAddition
titleBarMode = preferences.titleBarMode titleBarMode = preferences.titleBarMode
menuAlpha = preferences.menuAlpha readMenuBlurAlpha = preferences.readMenuBlurAlpha
readSliderMode = preferences.readSliderMode readSliderMode = preferences.readSliderMode
readBarStyleFollowPage = preferences.readBarStyleFollowPage readBarStyleFollowPage = preferences.readBarStyleFollowPage
readBarStyle = preferences.readBarStyle readBarStyle = preferences.readBarStyle
@@ -7,7 +7,7 @@ data class ReadConfigUiState(
val hideNavigationBar: Boolean = false, val hideNavigationBar: Boolean = false,
val paddingDisplayCutouts: Boolean = false, val paddingDisplayCutouts: Boolean = false,
val titleBarMode: String = "1", val titleBarMode: String = "1",
val menuAlpha: Int = 100, val readMenuBlurAlpha: Int = 60,
val readBodyToLh: Boolean = true, val readBodyToLh: Boolean = true,
val defaultSourceChangeAll: Boolean = true, val defaultSourceChangeAll: Boolean = true,
val textFullJustify: Boolean = true, val textFullJustify: Boolean = true,
@@ -48,7 +48,7 @@ sealed interface ReadConfigIntent {
data class HideNavigationBarChanged(val value: Boolean) : ReadConfigIntent data class HideNavigationBarChanged(val value: Boolean) : ReadConfigIntent
data class PaddingDisplayCutoutsChanged(val value: Boolean) : ReadConfigIntent data class PaddingDisplayCutoutsChanged(val value: Boolean) : ReadConfigIntent
data class TitleBarModeChanged(val value: String) : ReadConfigIntent data class TitleBarModeChanged(val value: String) : ReadConfigIntent
data class MenuAlphaChanged(val value: Int) : ReadConfigIntent data class ReadMenuBlurAlphaChanged(val value: Int) : ReadConfigIntent
data class ReadBodyToLhChanged(val value: Boolean) : ReadConfigIntent data class ReadBodyToLhChanged(val value: Boolean) : ReadConfigIntent
data class DefaultSourceChangeAllChanged(val value: Boolean) : ReadConfigIntent data class DefaultSourceChangeAllChanged(val value: Boolean) : ReadConfigIntent
data class TextFullJustifyChanged(val value: Boolean) : ReadConfigIntent data class TextFullJustifyChanged(val value: Boolean) : ReadConfigIntent
@@ -115,12 +115,12 @@ fun ReadConfigScreen(
SliderSettingItem( SliderSettingItem(
title = stringResource(R.string.menu_alpha), title = stringResource(R.string.menu_alpha),
description = stringResource(R.string.menu_alpha_sum, state.menuAlpha), description = stringResource(R.string.menu_alpha_sum, state.readMenuBlurAlpha),
value = state.menuAlpha.toFloat(), value = state.readMenuBlurAlpha.toFloat(),
defaultValue = 100f, defaultValue = 60f,
valueRange = 0f..100f, valueRange = 0f..100f,
onValueChange = { onValueChange = {
viewModel.onIntent(ReadConfigIntent.MenuAlphaChanged(it.toInt())) viewModel.onIntent(ReadConfigIntent.ReadMenuBlurAlphaChanged(it.toInt()))
} }
) )
@@ -59,9 +59,9 @@ class ReadConfigViewModel(
readSettingsRepository.setTitleBarMode(intent.value) readSettingsRepository.setTitleBarMode(intent.value)
} }
is ReadConfigIntent.MenuAlphaChanged -> { is ReadConfigIntent.ReadMenuBlurAlphaChanged -> {
ReadConfig.menuAlpha = intent.value ReadConfig.readMenuBlurAlpha = intent.value
readSettingsRepository.setMenuAlpha(intent.value) readSettingsRepository.setReadMenuBlurAlpha(intent.value)
postEvent(EventBus.UPDATE_READ_ACTION_BAR, true) postEvent(EventBus.UPDATE_READ_ACTION_BAR, true)
} }
@@ -230,7 +230,7 @@ class ReadConfigViewModel(
hideNavigationBar = hideNavigationBar, hideNavigationBar = hideNavigationBar,
paddingDisplayCutouts = paddingDisplayCutouts, paddingDisplayCutouts = paddingDisplayCutouts,
titleBarMode = titleBarMode, titleBarMode = titleBarMode,
menuAlpha = menuAlpha, readMenuBlurAlpha = readMenuBlurAlpha,
readBodyToLh = readBodyToLh, readBodyToLh = readBodyToLh,
defaultSourceChangeAll = defaultSourceChangeAll, defaultSourceChangeAll = defaultSourceChangeAll,
textFullJustify = textFullJustify, textFullJustify = textFullJustify,