diff --git a/app/src/main/java/com/huanchengfly/tieba/post/App.kt b/app/src/main/java/com/huanchengfly/tieba/post/App.kt index 9e0941f6..cddf4a57 100644 --- a/app/src/main/java/com/huanchengfly/tieba/post/App.kt +++ b/app/src/main/java/com/huanchengfly/tieba/post/App.kt @@ -1,5 +1,6 @@ package com.huanchengfly.tieba.post +import android.annotation.SuppressLint import android.app.Activity import android.app.ActivityManager import android.app.Application @@ -25,6 +26,7 @@ import com.github.panpf.sketch.decode.GifAnimatedDrawableDecoder import com.github.panpf.sketch.decode.GifMovieDrawableDecoder import com.github.panpf.sketch.decode.HeifAnimatedDrawableDecoder import com.github.panpf.sketch.decode.WebpAnimatedDrawableDecoder +import com.github.panpf.sketch.http.OkHttpStack import com.huanchengfly.tieba.post.activities.BaseActivity import com.huanchengfly.tieba.post.components.ClipBoardLinkDetector import com.huanchengfly.tieba.post.components.dialogs.LoadingDialog @@ -241,6 +243,7 @@ class App : Application(), IApp, IGetter, SketchFactory { } object ThemeDelegate : ThemeSwitcher { + @SuppressLint("DiscouragedApi") fun getColorByAttr(context: Context, attrId: Int, theme: String): Int { val resources = context.resources when (attrId) { @@ -388,9 +391,16 @@ class App : Application(), IApp, IGetter, SketchFactory { return context.getColorCompat(R.color.transparent) } return if (ThemeUtil.isNightMode(theme)) { - context.getColorCompat(R.color.theme_color_chip_night) + context.getColorCompat( + resources.getIdentifier( + "theme_color_chip_$theme", + "color", + packageName + ) + ) } else context.getColorCompat(R.color.theme_color_chip_light) } + R.attr.colorOnChip -> { if (ThemeUtil.isTranslucentTheme(theme)) { return getColorByAttr(context, R.attr.colorTextSecondary, theme) @@ -516,7 +526,7 @@ class App : Application(), IApp, IGetter, SketchFactory { } else context.getColorCompat(R.color.theme_color_swipe_refresh_view_background_light) } R.attr.colorToolbarBar -> { - return if (ThemeUtil.isTranslucentTheme(theme)) { + return if (ThemeUtil.isTranslucentTheme(theme) || ThemeUtil.isNightMode(theme)) { context.getColorCompat( resources.getIdentifier( "theme_color_toolbar_bar_$theme", @@ -524,8 +534,6 @@ class App : Application(), IApp, IGetter, SketchFactory { packageName ) ) - } else if (ThemeUtil.isNightMode(theme)) { - context.getColorCompat(R.color.theme_color_toolbar_bar_dark) } else { context.getColorCompat(R.color.theme_color_toolbar_bar_light) } @@ -539,7 +547,13 @@ class App : Application(), IApp, IGetter, SketchFactory { } R.attr.colorNavBarSurface -> { return if (ThemeUtil.isNightMode(theme)) { - context.getColorCompat(R.color.theme_color_nav_bar_surface_dark) + context.getColorCompat( + resources.getIdentifier( + "theme_color_nav_bar_surface_$theme", + "color", + packageName + ) + ) } else { context.getColorCompat(R.color.theme_color_nav_bar_surface_light) } @@ -577,11 +591,13 @@ class App : Application(), IApp, IGetter, SketchFactory { context, R.attr.colorWindowBackground ) + R.color.default_color_toolbar -> return getColorByAttr(context, R.attr.colorToolbar) R.color.default_color_toolbar_item -> return getColorByAttr( context, R.attr.colorToolbarItem ) + R.color.default_color_toolbar_item_active -> return getColorByAttr( context, R.attr.colorToolbarItemActive diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 9e66d42e..f2a0a623 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -26,21 +26,26 @@ #FF000000 #FF808080 - #FF65696C + #99808080 - #FFE6E7EE - #B3E6E7EE - #80E6E7EE + #EEEEEE + #808080 + #99808080 #EFFFFFFF #8AFFFFFF #61FFFFFF + @color/color_text_translucent_light + @color/color_text_secondary_translucent_light + + @color/color_text_disabled_translucent_light + + #FF000000 #B3000000 #80000000 - #FF4477E0 #FF4477E0 #FF31343C @@ -89,7 +94,8 @@ #FF5588D7 #FFF8F8F8 - #FF1E1E1E + #323232 + #1E1E1E #FF808080 #FF808080 @@ -101,14 +107,14 @@ @color/white #FF15202B - #FF181818 - @color/black + #202020 + #000000 #00FFFFFF #00000000 #FF000000 @color/white - #FFEEEEEE + #EEEEEE #DFFFFFFF #FF000000 @@ -128,7 +134,8 @@ @color/white #F8F8F8 - #1E1E1E + #2C2C2C + #1E1E1E #10FFFFFF #20000000 @@ -136,14 +143,15 @@ #5C5C5C #FFF3F7F9 - #A110161C + #242424 + #282828 #FF8D9194 - #FF8C96A0 + #5C5C5C #FFFFFFFF #FF131D28 - #FF212121 + #202020 #FF000000 #FFFFFFFF @@ -155,14 +163,14 @@ @color/white #FF15202B - #FF151515 + #FF303030 #FF171717 @color/colorUnselected #43FFFFFF #4D000000 #FF415C68 - #FF5C5C5C + #FF808080 #FF808080 #FFF3F7F9