From 23f4347274055d3820d626b498ad6244ed83eadf Mon Sep 17 00:00:00 2001 From: HapeLee <1321903405@qq.com> Date: Sat, 15 Nov 2025 14:40:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=AD=A3=E6=96=87=E9=98=B4=E5=BD=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../io/legado/app/help/config/ReadBookConfig.kt | 16 ++++++++-------- .../io/legado/app/help/config/ThemeConfig.kt | 1 + .../book/read/page/provider/ChapterProvider.kt | 11 +++++++---- 3 files changed, 16 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/io/legado/app/help/config/ReadBookConfig.kt b/app/src/main/java/io/legado/app/help/config/ReadBookConfig.kt index 83dcbe5c5..97d8d6496 100644 --- a/app/src/main/java/io/legado/app/help/config/ReadBookConfig.kt +++ b/app/src/main/java/io/legado/app/help/config/ReadBookConfig.kt @@ -670,10 +670,10 @@ object ReadBookConfig { private var textColorInt = -1 @Transient - private var textColorSIntNight = -1 + private var shadowColorNightInt = -1 @Transient - private var textColorSInt = -1 + private var shadowColorInt = -1 @Transient private var menuBgColorInt = -1 @@ -700,8 +700,8 @@ object ReadBookConfig { textColorIntEInk = textColorEInk.toColorInt() textColorIntNight = textColorNight.toColorInt() textColorInt = textColor.toColorInt() - textColorSIntNight = shadowColorN.toColorInt() - textColorSInt = shadowColor.toColorInt() + shadowColorNightInt = shadowColorN.toColorInt() + shadowColorInt = shadowColor.toColorInt() menuBgColorInt = menuBgColor.toColorInt() menuBgColorNightInt = menuBgColorNight.toColorInt() menuAcColorInt = menuAcColor.toColorInt() @@ -715,11 +715,11 @@ object ReadBookConfig { when { AppConfig.isNightTheme -> { shadowColorN = "#${color.hexString}" - textColorSIntNight = color + shadowColorNightInt = color } else -> { shadowColor = "#${color.hexString}" - textColorSInt = color + shadowColorInt = color } } } @@ -759,8 +759,8 @@ object ReadBookConfig { initColorInt() } return when { - AppConfig.isNightTheme -> textColorSIntNight - else -> textColorSInt + AppConfig.isNightTheme -> shadowColorNightInt + else -> shadowColorInt } } diff --git a/app/src/main/java/io/legado/app/help/config/ThemeConfig.kt b/app/src/main/java/io/legado/app/help/config/ThemeConfig.kt index 7ad289271..4fda6e1cb 100644 --- a/app/src/main/java/io/legado/app/help/config/ThemeConfig.kt +++ b/app/src/main/java/io/legado/app/help/config/ThemeConfig.kt @@ -52,6 +52,7 @@ object ThemeConfig { initNightMode() BookCover.upDefaultCover() postEvent(EventBus.RECREATE, "") + postEvent(EventBus.UP_CONFIG, arrayListOf(2)) } fun applyDayNightInit(context: Context) { diff --git a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt index 8ba212e30..b9a49d040 100644 --- a/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt +++ b/app/src/main/java/io/legado/app/ui/book/read/page/provider/ChapterProvider.kt @@ -1101,12 +1101,15 @@ object ChapterProvider { visibleRight = viewWidth - paddingRight visibleBottom = paddingTop + visibleHeight + val shadowPad = (contentPaint.shadowLayerRadius + 2).toInt() + visibleRect.set( - paddingLeft.toFloat(), - paddingTop.toFloat(), - visibleRight.toFloat(), - visibleBottom.toFloat() + (paddingLeft - shadowPad).toFloat(), + (paddingTop - shadowPad).toFloat(), + (visibleRight + shadowPad).toFloat(), + (visibleBottom + shadowPad).toFloat() ) + //TODO: 有关测量相关问题 }