diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c468f6a63..744dc6001 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -35,91 +35,99 @@
-
-
-
-
-
+ android:icon="@mipmap/launcher1"
+ android:targetActivity=".ui.main.MainActivity">
-
+
-
+ android:icon="@mipmap/launcher2"
+ android:targetActivity=".ui.main.MainActivity">
-
+
-
+ android:icon="@mipmap/launcher3"
+ android:targetActivity=".ui.main.MainActivity">
-
+
-
+ android:icon="@mipmap/launcher4"
+ android:targetActivity=".ui.main.MainActivity">
-
+
-
+ android:icon="@mipmap/launcher5"
+ android:targetActivity=".ui.main.MainActivity">
-
+
-
+ android:icon="@mipmap/launcher6"
+ android:targetActivity=".ui.main.MainActivity">
-
+
+ android:launchMode="singleTask">
+
+
+
+
+
+
(
@SuppressLint("ObsoleteSdkInt")
override fun onCreate(savedInstanceState: Bundle?) {
+ initTheme()
window.decorView.disableAutoFill()
- //initTheme()
+
super.onCreate(savedInstanceState)
//setupSystemBar()
setContentView(binding.root)
@@ -128,26 +133,10 @@ abstract class BaseActivity(
open fun onCompatOptionsItemSelected(item: MenuItem) = super.onOptionsItemSelected(item)
open fun initTheme() {
- when (theme) {
- Theme.Transparent -> setTheme(R.style.AppTheme_Transparent)
- Theme.Dark -> {
- setTheme(R.style.AppTheme_Dark)
- //window.decorView.applyBackgroundTint(backgroundColor)
- }
-
- Theme.Light -> {
- setTheme(R.style.AppTheme_Light)
- //window.decorView.applyBackgroundTint(backgroundColor)
- }
-
- else -> {
-// if (ColorUtils.isColorLight(primaryColor)) {
-// setTheme(R.style.AppTheme_Light)
-// } else {
-// setTheme(R.style.AppTheme_Dark)
-// }
- //window.decorView.applyBackgroundTint(backgroundColor)
- }
+ when (getPrefString("app_theme", "0")) {
+ "0" -> DynamicColors.applyToActivitiesIfAvailable(application)
+ "1" -> setTheme(R.style.Theme_Base_GR)
+ "2" -> setTheme(R.style.Theme_Base_WH)
}
}
diff --git a/app/src/main/java/io/legato/kazusa/constant/PreferKey.kt b/app/src/main/java/io/legato/kazusa/constant/PreferKey.kt
index 18ab5bc60..4ae16c9bf 100644
--- a/app/src/main/java/io/legato/kazusa/constant/PreferKey.kt
+++ b/app/src/main/java/io/legato/kazusa/constant/PreferKey.kt
@@ -179,4 +179,7 @@ object PreferKey {
const val showReadTitleAddition = "showReadTitleAddition"
const val readBarStyleFollowPage = "readBarStyleFollowPage"
const val contentSelectSpeakMod = "contentReadAloudMod"
+
+ const val dynamicColors = "dynamicColors"
+ const val themePref = "themePref"
}
diff --git a/app/src/main/java/io/legato/kazusa/constant/Theme.kt b/app/src/main/java/io/legato/kazusa/constant/Theme.kt
index 005f83675..09c2036bf 100644
--- a/app/src/main/java/io/legato/kazusa/constant/Theme.kt
+++ b/app/src/main/java/io/legato/kazusa/constant/Theme.kt
@@ -1,5 +1,5 @@
package io.legato.kazusa.constant
enum class Theme {
- Dark, Light, Auto, Transparent, EInk;
+ Dark, Light, Auto, Transparent, EInk, GR;
}
\ No newline at end of file
diff --git a/app/src/main/java/io/legato/kazusa/help/config/AppConfig.kt b/app/src/main/java/io/legato/kazusa/help/config/AppConfig.kt
index 0cf3a22c0..260ec9c48 100644
--- a/app/src/main/java/io/legato/kazusa/help/config/AppConfig.kt
+++ b/app/src/main/java/io/legato/kazusa/help/config/AppConfig.kt
@@ -100,7 +100,6 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
get() = when (themeMode) {
"1" -> false
"2" -> true
- "3" -> false
else -> sysConfiguration.isNightMode
}
set(value) {
diff --git a/app/src/main/java/io/legato/kazusa/help/config/ThemeConfig.kt b/app/src/main/java/io/legato/kazusa/help/config/ThemeConfig.kt
index b64e35463..08a0aabb8 100644
--- a/app/src/main/java/io/legato/kazusa/help/config/ThemeConfig.kt
+++ b/app/src/main/java/io/legato/kazusa/help/config/ThemeConfig.kt
@@ -42,7 +42,6 @@ object ThemeConfig {
}
fun getTheme() = when {
- AppConfig.isEInkMode -> Theme.EInk
AppConfig.isNightTheme -> Theme.Dark
else -> Theme.Light
}
@@ -216,58 +215,7 @@ object ThemeConfig {
* 更新主题
*/
fun applyTheme(context: Context) = with(context) {
- when {
- AppConfig.isEInkMode -> {
- ThemeStore.editTheme(this)
- .primaryColor(Color.WHITE)
- .accentColor(Color.BLACK)
- .backgroundColor(Color.WHITE)
- .bottomBackground(Color.WHITE)
- .apply()
- }
- AppConfig.isNightTheme -> {
- val primary =
- getPrefInt(PreferKey.cNPrimary, getCompatColor(R.color.md_blue_grey_600))
- val accent =
- getPrefInt(PreferKey.cNAccent, getCompatColor(R.color.md_deep_orange_800))
- var background =
- getPrefInt(PreferKey.cNBackground, getCompatColor(R.color.md_grey_900))
- if (ColorUtils.isColorLight(background)) {
- background = getCompatColor(R.color.md_grey_900)
- putPrefInt(PreferKey.cNBackground, background)
- }
- val bBackground =
- getPrefInt(PreferKey.cNBBackground, getCompatColor(R.color.md_grey_850))
- ThemeStore.editTheme(this)
- .primaryColor(ColorUtils.withAlpha(primary, 1f))
- .accentColor(ColorUtils.withAlpha(accent, 1f))
- .backgroundColor(ColorUtils.withAlpha(background, 1f))
- .bottomBackground(ColorUtils.withAlpha(bBackground, 1f))
- .apply()
- }
-
- else -> {
- val primary =
- getPrefInt(PreferKey.cPrimary, getCompatColor(R.color.md_brown_500))
- val accent =
- getPrefInt(PreferKey.cAccent, getCompatColor(R.color.md_red_600))
- var background =
- getPrefInt(PreferKey.cBackground, getCompatColor(R.color.md_grey_100))
- if (!ColorUtils.isColorLight(background)) {
- background = getCompatColor(R.color.md_grey_100)
- putPrefInt(PreferKey.cBackground, background)
- }
- val bBackground =
- getPrefInt(PreferKey.cBBackground, getCompatColor(R.color.md_grey_200))
- ThemeStore.editTheme(this)
- .primaryColor(ColorUtils.withAlpha(primary, 1f))
- .accentColor(ColorUtils.withAlpha(accent, 1f))
- .backgroundColor(ColorUtils.withAlpha(background, 1f))
- .bottomBackground(ColorUtils.withAlpha(bBackground, 1f))
- .apply()
- }
- }
}
@Keep
diff --git a/app/src/main/java/io/legato/kazusa/lib/prefs/NameListPreference.kt b/app/src/main/java/io/legato/kazusa/lib/prefs/NameListPreference.kt
index 86621b992..1265a0eda 100644
--- a/app/src/main/java/io/legato/kazusa/lib/prefs/NameListPreference.kt
+++ b/app/src/main/java/io/legato/kazusa/lib/prefs/NameListPreference.kt
@@ -6,20 +6,22 @@ import android.widget.TextView
import androidx.preference.ListPreference
import androidx.preference.PreferenceViewHolder
import io.legato.kazusa.R
+import androidx.core.content.withStyledAttributes
+
//import io.legado.app.lib.theme.bottomBackground
//import io.legado.app.lib.theme.getPrimaryTextColor
class NameListPreference(context: Context, attrs: AttributeSet) : ListPreference(context, attrs) {
- private val isBottomBackground: Boolean
+ private var isBottomBackground: Boolean = false
init {
layoutResource = R.layout.view_preference
widgetLayoutResource = R.layout.item_fillet_text
- val typedArray = context.obtainStyledAttributes(attrs, R.styleable.Preference)
- isBottomBackground = typedArray.getBoolean(R.styleable.Preference_isBottomBackground, false)
- typedArray.recycle()
+ context.withStyledAttributes(attrs, R.styleable.Preference) {
+ isBottomBackground = getBoolean(R.styleable.Preference_isBottomBackground, false)
+ }
}
override fun onBindViewHolder(holder: PreferenceViewHolder) {
diff --git a/app/src/main/java/io/legato/kazusa/lib/prefs/Preference.kt b/app/src/main/java/io/legato/kazusa/lib/prefs/Preference.kt
index fa1dc049e..622f88b34 100644
--- a/app/src/main/java/io/legato/kazusa/lib/prefs/Preference.kt
+++ b/app/src/main/java/io/legato/kazusa/lib/prefs/Preference.kt
@@ -107,7 +107,7 @@ open class Preference(context: Context, attrs: AttributeSet) :
}
- final override fun onBindViewHolder(holder: PreferenceViewHolder) {
+ override fun onBindViewHolder(holder: PreferenceViewHolder) {
super.onBindViewHolder(holder)
onBindView(holder)
onLongClick?.let { listener ->
diff --git a/app/src/main/java/io/legato/kazusa/lib/prefs/SwitchPreference.kt b/app/src/main/java/io/legato/kazusa/lib/prefs/SwitchPreference.kt
index c7fb92bfa..a22f60ec8 100644
--- a/app/src/main/java/io/legato/kazusa/lib/prefs/SwitchPreference.kt
+++ b/app/src/main/java/io/legato/kazusa/lib/prefs/SwitchPreference.kt
@@ -6,32 +6,32 @@ import androidx.appcompat.widget.SwitchCompat
import androidx.preference.PreferenceViewHolder
import androidx.preference.SwitchPreferenceCompat
import io.legato.kazusa.R
+import androidx.core.content.withStyledAttributes
+
//import io.legado.app.lib.theme.accentColor
class SwitchPreference(context: Context, attrs: AttributeSet) :
SwitchPreferenceCompat(context, attrs) {
- private val isBottomBackground: Boolean
+ private var isBottomBackground: Boolean = false
private var onLongClick: ((preference: SwitchPreference) -> Boolean)? = null
init {
layoutResource = R.layout.view_preference
widgetLayoutResource = R.layout.preference_widget_material_switch
- val typedArray = context.obtainStyledAttributes(attrs, R.styleable.Preference)
- isBottomBackground = typedArray.getBoolean(R.styleable.Preference_isBottomBackground, false)
- typedArray.recycle()
+ context.withStyledAttributes(attrs, R.styleable.Preference) {
+ isBottomBackground = getBoolean(R.styleable.Preference_isBottomBackground, false)
+ }
}
override fun onBindViewHolder(holder: PreferenceViewHolder) {
- val v = Preference.bindView(
+ Preference.bindView(
context, holder, icon, title, summary,
widgetLayoutResource,
androidx.preference.R.id.switchWidget,
isBottomBackground = isBottomBackground
)
- if (v is SwitchCompat && !v.isInEditMode) {
- //v.applyTint(context.accentColor)
- }
+
super.onBindViewHolder(holder)
onLongClick?.let { listener ->
holder.itemView.setOnLongClickListener {
diff --git a/app/src/main/java/io/legato/kazusa/ui/book/bookmark/AllBookmarkActivity.kt b/app/src/main/java/io/legato/kazusa/ui/book/bookmark/AllBookmarkActivity.kt
index 600d7d9cf..deb96629e 100644
--- a/app/src/main/java/io/legato/kazusa/ui/book/bookmark/AllBookmarkActivity.kt
+++ b/app/src/main/java/io/legato/kazusa/ui/book/bookmark/AllBookmarkActivity.kt
@@ -52,6 +52,7 @@ class AllBookmarkActivity : VMBaseActivity()
override fun setTitle(resId: Int) {
super.setTitle(resId)
- binding.titleBar.setTitle(resId)
+ binding.topBar.setTitle(resId)
}
inline fun replaceFragment(configTag: String) {
diff --git a/app/src/main/java/io/legato/kazusa/ui/config/CoverRuleConfigDialog.kt b/app/src/main/java/io/legato/kazusa/ui/config/CoverRuleConfigDialog.kt
index 501ea5a83..6ffb75b9e 100644
--- a/app/src/main/java/io/legato/kazusa/ui/config/CoverRuleConfigDialog.kt
+++ b/app/src/main/java/io/legato/kazusa/ui/config/CoverRuleConfigDialog.kt
@@ -6,6 +6,7 @@ import android.view.View
import android.view.ViewGroup
import androidx.lifecycle.lifecycleScope
import io.legato.kazusa.R
+import io.legato.kazusa.base.BaseBottomSheetDialogFragment
import io.legato.kazusa.base.BaseDialogFragment
import io.legato.kazusa.databinding.DialogCoverRuleConfigBinding
//import io.legado.app.lib.theme.primaryColor
@@ -19,13 +20,13 @@ import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext
import splitties.views.onClick
-class CoverRuleConfigDialog : BaseDialogFragment(R.layout.dialog_cover_rule_config) {
+class CoverRuleConfigDialog : BaseBottomSheetDialogFragment(R.layout.dialog_cover_rule_config) {
val binding by viewBinding(DialogCoverRuleConfigBinding::bind)
override fun onStart() {
super.onStart()
- setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)
+
}
override fun onFragmentCreated(view: View, savedInstanceState: Bundle?) {
diff --git a/app/src/main/java/io/legato/kazusa/ui/config/ThemeConfigFragment.kt b/app/src/main/java/io/legato/kazusa/ui/config/ThemeConfigFragment.kt
index 12f3f0093..ba6a84275 100644
--- a/app/src/main/java/io/legato/kazusa/ui/config/ThemeConfigFragment.kt
+++ b/app/src/main/java/io/legato/kazusa/ui/config/ThemeConfigFragment.kt
@@ -7,6 +7,7 @@ import android.os.Build
import android.os.Bundle
import android.view.View
import android.widget.SeekBar
+import androidx.preference.ListPreference
import androidx.preference.Preference
import androidx.preference.PreferenceFragmentCompat
import io.legato.kazusa.R
@@ -22,6 +23,7 @@ import io.legato.kazusa.lib.dialogs.alert
import io.legato.kazusa.lib.dialogs.selector
import io.legato.kazusa.lib.prefs.ColorPreference
import io.legato.kazusa.lib.prefs.NameListPreference
+import io.legato.kazusa.lib.prefs.ThemeModePreference
//import io.legado.app.lib.theme.primaryColor
import io.legato.kazusa.ui.widget.number.NumberPickerDialog
import io.legato.kazusa.ui.widget.seekbar.SeekBarChangeListener
@@ -71,6 +73,7 @@ class ThemeConfigFragment : PreferenceFragmentCompat(),
if (Build.VERSION.SDK_INT < 26) {
preferenceScreen.removePreferenceRecursively(PreferKey.launcherIcon)
}
+ upPreferenceSummary(PreferKey.themePref)
upPreferenceSummary(PreferKey.bgImage, getPrefString(PreferKey.bgImage))
upPreferenceSummary(PreferKey.bgImageN, getPrefString(PreferKey.bgImageN))
//upPreferenceSummary(PreferKey.barElevation, AppConfig.elevation.toString())
@@ -95,12 +98,20 @@ class ThemeConfigFragment : PreferenceFragmentCompat(),
}
}
}
- findPreference(PreferKey.themeMode)?.let {
+ findPreference(PreferKey.themeMode)?.let {
it.setOnPreferenceChangeListener { _, _ ->
ThemeConfig.applyDayNight(requireContext())
true
}
}
+ findPreference(PreferKey.themePref)?.let {
+ it.setOnPreferenceChangeListener { _, _ ->
+ val intent = requireActivity().intent
+ requireActivity().finish()
+ startActivity(intent)
+ true
+ }
+ }
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
@@ -126,6 +137,11 @@ class ThemeConfigFragment : PreferenceFragmentCompat(),
PreferKey.launcherIcon -> LauncherIconHelp.changeIcon(getPrefString(key))
//PreferKey.transparentStatusBar -> recreateActivities()
//PreferKey.immNavigationBar -> recreateActivities()
+ PreferKey.themePref -> {
+ val intent = requireActivity().intent
+ requireActivity().finish()
+ startActivity(intent)
+ }
PreferKey.cPrimary,
PreferKey.cAccent,
PreferKey.cBackground,
@@ -139,9 +155,11 @@ class ThemeConfigFragment : PreferenceFragmentCompat(),
PreferKey.cNBBackground -> {
upTheme(true)
}
+
PreferKey.themeMode -> {
ThemeConfig.applyDayNight(requireContext())
}
+
PreferKey.bgImage,
PreferKey.bgImageN -> {
upPreferenceSummary(key, getPrefString(key))
diff --git a/app/src/main/java/io/legato/kazusa/ui/welcome/WelcomeActivity.kt b/app/src/main/java/io/legato/kazusa/ui/welcome/WelcomeActivity.kt
index 28a588128..ba628f389 100644
--- a/app/src/main/java/io/legato/kazusa/ui/welcome/WelcomeActivity.kt
+++ b/app/src/main/java/io/legato/kazusa/ui/welcome/WelcomeActivity.kt
@@ -27,7 +27,7 @@ open class WelcomeActivity : BaseActivity() {
if (intent.flags and Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT != 0) {
finish()
} else {
- binding.root.postDelayed(600) { startMainActivity() }
+ binding.root.postDelayed(100) { startMainActivity() }
}
}
diff --git a/app/src/main/res/layout/activity_all_bookmark.xml b/app/src/main/res/layout/activity_all_bookmark.xml
index e9841c708..aee317a7c 100644
--- a/app/src/main/res/layout/activity_all_bookmark.xml
+++ b/app/src/main/res/layout/activity_all_bookmark.xml
@@ -1,23 +1,42 @@
-
-
+ android:background="@color/transparent"
+ android:fitsSystemWindows="true">
+
+
+
+
+
+
+
+ app:layout_behavior="@string/appbar_scrolling_view_behavior" />
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_book_info.xml b/app/src/main/res/layout/activity_book_info.xml
index 0d9d621df..ff5fe962f 100644
--- a/app/src/main/res/layout/activity_book_info.xml
+++ b/app/src/main/res/layout/activity_book_info.xml
@@ -17,7 +17,7 @@
android:id="@+id/app_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:background="@color/transparent"
+ android:background="@android:color/transparent"
android:fitsSystemWindows="true">
-
-
+ android:fitsSystemWindows="true"
+ app:liftOnScroll="false"
+ android:stateListAnimator="@null">
-
+
+
+
+
+
+
+
+ app:layout_behavior="@string/appbar_scrolling_view_behavior"
+ android:fillViewport="true">
-
\ No newline at end of file
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_read_record.xml b/app/src/main/res/layout/activity_read_record.xml
index 365cd7310..6b6069df1 100644
--- a/app/src/main/res/layout/activity_read_record.xml
+++ b/app/src/main/res/layout/activity_read_record.xml
@@ -16,14 +16,15 @@
@@ -59,7 +59,6 @@
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:paddingHorizontal="16dp"
android:clipToPadding="false"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" />
diff --git a/app/src/main/res/layout/activity_replace_edit.xml b/app/src/main/res/layout/activity_replace_edit.xml
index f5b6cdc43..fd3e8b324 100644
--- a/app/src/main/res/layout/activity_replace_edit.xml
+++ b/app/src/main/res/layout/activity_replace_edit.xml
@@ -32,7 +32,7 @@
android:layout_height="wrap_content"
android:hint="@string/replace_rule_summary">
-
-
-
-
-
-
-
+ android:orientation="vertical"
+ android:paddingHorizontal="16dp"
+ android:paddingVertical="8dp">
-
+ android:orientation="vertical"
+ android:gravity="center"
+ android:paddingVertical="8dp"
+ android:paddingHorizontal="16dp">
-
+
+
+
+
+
+
+ android:paddingTop="8dp">
-
-
+
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/dialog_cover_rule_config.xml b/app/src/main/res/layout/dialog_cover_rule_config.xml
index da3327554..8431397e4 100644
--- a/app/src/main/res/layout/dialog_cover_rule_config.xml
+++ b/app/src/main/res/layout/dialog_cover_rule_config.xml
@@ -6,13 +6,30 @@
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical">
-
+ android:orientation="vertical"
+ android:gravity="center"
+ android:paddingVertical="16dp"
+ android:paddingHorizontal="16dp">
+
+
+
+
+
+
-
-
-
-
+
-
-
-
+
@@ -71,11 +88,11 @@
app:flexWrap="wrap"
app:justifyContent="space_between">
-
@@ -84,20 +101,20 @@
android:layout_height="wrap_content"
android:orientation="horizontal">
-
-
diff --git a/app/src/main/res/layout/dialog_direct_link_upload_config.xml b/app/src/main/res/layout/dialog_direct_link_upload_config.xml
index 72ffa8b54..35c77f4d1 100644
--- a/app/src/main/res/layout/dialog_direct_link_upload_config.xml
+++ b/app/src/main/res/layout/dialog_direct_link_upload_config.xml
@@ -24,49 +24,49 @@
android:orientation="vertical"
android:padding="16dp">
-
+ android:paddingTop="8dp">
-
-
+
-
+ android:paddingTop="8dp">
-
-
+
-
+ android:paddingTop="8dp">
-
-
+
-
-
@@ -98,19 +97,20 @@
android:layout_height="wrap_content"
android:orientation="horizontal">
-
-
diff --git a/app/src/main/res/layout/dialog_login.xml b/app/src/main/res/layout/dialog_login.xml
index 41eafe469..ee9653eec 100644
--- a/app/src/main/res/layout/dialog_login.xml
+++ b/app/src/main/res/layout/dialog_login.xml
@@ -24,7 +24,6 @@
app:title="@string/login"
app:displayHomeAsUp="false"
app:fitStatusBar="false"
- app:popupTheme="@style/AppTheme.PopupOverlay"
app:titleTextAppearance="@style/ToolbarTitle" />
diff --git a/app/src/main/res/layout/dialog_rss_favorite_config.xml b/app/src/main/res/layout/dialog_rss_favorite_config.xml
index c74415752..a0b24d2d7 100644
--- a/app/src/main/res/layout/dialog_rss_favorite_config.xml
+++ b/app/src/main/res/layout/dialog_rss_favorite_config.xml
@@ -20,7 +20,6 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="?attr/actionBarStyle"
- app:popupTheme="@style/AppTheme.PopupOverlay"
app:title="@string/favorite"
app:titleTextAppearance="@style/ToolbarTitle" />
diff --git a/app/src/main/res/layout/dialog_search_scope.xml b/app/src/main/res/layout/dialog_search_scope.xml
index efcc14309..660c13c0e 100644
--- a/app/src/main/res/layout/dialog_search_scope.xml
+++ b/app/src/main/res/layout/dialog_search_scope.xml
@@ -14,7 +14,6 @@
app:displayHomeAsUp="false"
app:fitStatusBar="false"
app:layout_constraintTop_toTopOf="parent"
- app:popupTheme="@style/AppTheme.PopupOverlay"
app:title="@string/search_scope"
app:titleTextAppearance="@style/ToolbarTitle" />
diff --git a/app/src/main/res/layout/dialog_source_picker.xml b/app/src/main/res/layout/dialog_source_picker.xml
index 660007f86..fd8eb46ab 100644
--- a/app/src/main/res/layout/dialog_source_picker.xml
+++ b/app/src/main/res/layout/dialog_source_picker.xml
@@ -14,7 +14,6 @@
app:attachToActivity="false"
app:contentLayout="@layout/view_search"
app:fitStatusBar="false"
- app:popupTheme="@style/AppTheme.PopupOverlay"
app:titleTextAppearance="@style/ToolbarTitle"
tools:ignore="RtlHardcoded,RtlSymmetry" />
diff --git a/app/src/main/res/layout/dialog_text_view.xml b/app/src/main/res/layout/dialog_text_view.xml
index 14d4d7437..831e3138b 100644
--- a/app/src/main/res/layout/dialog_text_view.xml
+++ b/app/src/main/res/layout/dialog_text_view.xml
@@ -10,7 +10,6 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="?attr/actionBarStyle"
- app:popupTheme="@style/AppTheme.PopupOverlay"
app:titleTextAppearance="@style/ToolbarTitle"
app:layout_constraintTop_toTopOf="parent" />
diff --git a/app/src/main/res/layout/dialog_toc_regex.xml b/app/src/main/res/layout/dialog_toc_regex.xml
index 345406423..5fc1252d5 100644
--- a/app/src/main/res/layout/dialog_toc_regex.xml
+++ b/app/src/main/res/layout/dialog_toc_regex.xml
@@ -11,8 +11,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="?attr/actionBarStyle"
- app:titleTextAppearance="@style/ToolbarTitle"
- app:popupTheme="@style/AppTheme.PopupOverlay" />
+ app:titleTextAppearance="@style/ToolbarTitle" />
@@ -20,7 +20,6 @@
android:theme="?attr/actionBarStyle"
app:displayHomeAsUp="false"
app:fitStatusBar="false"
- app:popupTheme="@style/AppTheme.PopupOverlay"
app:title="@string/txt_toc_rule"
app:titleTextAppearance="@style/ToolbarTitle" />
diff --git a/app/src/main/res/layout/dialog_update.xml b/app/src/main/res/layout/dialog_update.xml
index 6517ff5b4..a84d89922 100644
--- a/app/src/main/res/layout/dialog_update.xml
+++ b/app/src/main/res/layout/dialog_update.xml
@@ -10,7 +10,6 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="?attr/actionBarStyle"
- app:popupTheme="@style/AppTheme.PopupOverlay"
app:titleTextAppearance="@style/ToolbarTitle" />
diff --git a/app/src/main/res/layout/dialog_webdav_server.xml b/app/src/main/res/layout/dialog_webdav_server.xml
index b8ab00cd4..ae3a05ca8 100644
--- a/app/src/main/res/layout/dialog_webdav_server.xml
+++ b/app/src/main/res/layout/dialog_webdav_server.xml
@@ -25,7 +25,6 @@
app:title="@string/server_config"
app:displayHomeAsUp="false"
app:fitStatusBar="false"
- app:popupTheme="@style/AppTheme.PopupOverlay"
app:titleTextAppearance="@style/ToolbarTitle" />
-
-
-
+ android:layout_height="48dp" />
\ No newline at end of file
diff --git a/app/src/main/res/layout/view_preference.xml b/app/src/main/res/layout/view_preference.xml
index 8e563630b..5ee0c4cd6 100644
--- a/app/src/main/res/layout/view_preference.xml
+++ b/app/src/main/res/layout/view_preference.xml
@@ -35,7 +35,7 @@
diff --git a/app/src/main/res/layout/view_title_bar_dark.xml b/app/src/main/res/layout/view_title_bar_dark.xml
index 72e7fa3b3..61343d420 100644
--- a/app/src/main/res/layout/view_title_bar_dark.xml
+++ b/app/src/main/res/layout/view_title_bar_dark.xml
@@ -4,6 +4,4 @@
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:theme="@style/AppTheme.AppBarOverlay.Dark"
- app:titleTextAppearance="@style/ToolbarTitle"
- app:popupTheme="@style/AppTheme.PopupOverlay" />
+ app:titleTextAppearance="@style/ToolbarTitle" />
diff --git a/app/src/main/res/values-es-rES/arrays.xml b/app/src/main/res/values-es-rES/arrays.xml
index c16295573..9ff6eb2ae 100644
--- a/app/src/main/res/values-es-rES/arrays.xml
+++ b/app/src/main/res/values-es-rES/arrays.xml
@@ -36,7 +36,6 @@
- Adaptar do sistema
- Tema Claro
- Tema Oscuro
- - Tema E-Ink
diff --git a/app/src/main/res/values-night/colors.xml b/app/src/main/res/values-night/colors.xml
index cf96f5efc..a203a9e29 100644
--- a/app/src/main/res/values-night/colors.xml
+++ b/app/src/main/res/values-night/colors.xml
@@ -47,100 +47,54 @@
#1E201A
#282B24
#33362E
- #C7E79E
- #172B00
- #7D9A59
- #000000
- #D5E1C2
- #1F2814
- #8A9579
- #000000
- #B5E6E1
- #002B29
- #6B9995
- #000000
- #FFD2CC
- #540003
- #FF5449
- #000000
- #12140E
- #E2E3D8
- #12140E
- #FFFFFF
- #44483D
- #DBDECF
- #B0B3A6
- #8E9285
- #000000
- #E2E3D8
- #282B24
- #364F17
- #CDEDA3
- #081400
- #B1D18A
- #253D05
- #DCE7C8
- #0B1403
- #BFCBAD
- #303924
- #BCECE7
- #001413
- #A0D0CB
- #083D3A
- #12140E
- #43453D
- #060804
- #1C1E18
- #262922
- #31342C
- #3C3F37
- #DAFBB0
- #000000
- #ADCD86
- #050E00
- #E9F4D5
- #000000
- #BCC7A9
- #060D01
- #C9F9F5
- #000000
- #9CCCC7
- #000E0D
- #FFECE9
- #000000
- #FFAEA4
- #220001
- #12140E
- #E2E3D8
- #12140E
- #FFFFFF
- #44483D
- #FFFFFF
- #EEF2E2
- #C1C4B6
- #000000
- #E2E3D8
- #000000
- #364F17
- #CDEDA3
- #000000
- #B1D18A
- #081400
- #DCE7C8
- #000000
- #BFCBAD
- #0B1403
- #BCECE7
- #000000
- #A0D0CB
- #001413
- #12140E
- #4F5149
- #000000
- #1E201A
- #2F312A
- #3A3C35
- #454840
+
+ #C7C6C6
+ #303031
+ #919090
+ #050606
+ #C8C6C5
+ #303030
+ #474746
+ #B7B5B4
+ #CBC5C7
+ #323031
+ #948F91
+ #060506
+ #FFB4AB
+ #690005
+ #93000A
+ #FFDAD6
+ #141313
+ #E5E2E1
+ #141313
+ #E5E2E1
+ #444748
+ #C4C7C7
+ #8E9192
+ #444748
+ #000000
+ #E5E2E1
+ #313030
+ #5E5E5E
+ #E3E2E2
+ #1B1C1C
+ #C7C6C6
+ #464747
+ #E5E2E1
+ #1B1C1C
+ #C8C6C5
+ #474746
+ #E7E1E3
+ #1D1B1D
+ #CBC5C7
+ #494648
+ #141313
+ #3A3939
+ #0E0E0E
+ #1C1B1B
+ #201F1F
+ #2A2A2A
+ #353434
@color/md_dark_disabled
diff --git a/app/src/main/res/values-night/styles.xml b/app/src/main/res/values-night/styles.xml
deleted file mode 100644
index 82de711a9..000000000
--- a/app/src/main/res/values-night/styles.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/values-pt-rBR/arrays.xml b/app/src/main/res/values-pt-rBR/arrays.xml
index d8d9a17b6..ec6a61c93 100644
--- a/app/src/main/res/values-pt-rBR/arrays.xml
+++ b/app/src/main/res/values-pt-rBR/arrays.xml
@@ -36,7 +36,6 @@
- Adaptar do sistema
- Tema Claro
- Tema Escuro
- - Tema E-Ink
diff --git a/app/src/main/res/values-vi/arrays.xml b/app/src/main/res/values-vi/arrays.xml
index bfc3a0333..945aa98d0 100644
--- a/app/src/main/res/values-vi/arrays.xml
+++ b/app/src/main/res/values-vi/arrays.xml
@@ -23,7 +23,6 @@
- Làm theo hệ thống
- Chủ đề màu sáng
- Chủ đề tối
- - E-Ink (màn hình mực).
diff --git a/app/src/main/res/values-zh-rHK/arrays.xml b/app/src/main/res/values-zh-rHK/arrays.xml
index 93829b1e7..1bf482e34 100644
--- a/app/src/main/res/values-zh-rHK/arrays.xml
+++ b/app/src/main/res/values-zh-rHK/arrays.xml
@@ -17,7 +17,6 @@
- 跟隨系統
- 亮色主題
- 暗色主題
- - E-Ink(墨水螢幕)
diff --git a/app/src/main/res/values-zh-rTW/arrays.xml b/app/src/main/res/values-zh-rTW/arrays.xml
index e9e5a1bf7..e285a90fa 100644
--- a/app/src/main/res/values-zh-rTW/arrays.xml
+++ b/app/src/main/res/values-zh-rTW/arrays.xml
@@ -22,7 +22,6 @@
- 跟隨系統
- 亮色主題
- 暗色主題
- - E-Ink(墨水屏)
diff --git a/app/src/main/res/values-zh/arrays.xml b/app/src/main/res/values-zh/arrays.xml
index 15a3507aa..973bb671f 100644
--- a/app/src/main/res/values-zh/arrays.xml
+++ b/app/src/main/res/values-zh/arrays.xml
@@ -22,7 +22,6 @@
- 跟随系统
- 亮色主题
- 暗色主题
- - E-Ink(墨水屏)
diff --git a/app/src/main/res/values-zh/strings.xml b/app/src/main/res/values-zh/strings.xml
index 0c8e11e80..3566a1190 100644
--- a/app/src/main/res/values-zh/strings.xml
+++ b/app/src/main/res/values-zh/strings.xml
@@ -478,7 +478,7 @@
扫描二维码
选中时点击可弹出菜单
主题
- 主题模式
+ 深色模式
选择主题模式
加入 QQ 群
获取背景图片需存储权限
diff --git a/app/src/main/res/values/array_values.xml b/app/src/main/res/values/array_values.xml
index 92b5455e0..c44f0b3f1 100644
--- a/app/src/main/res/values/array_values.xml
+++ b/app/src/main/res/values/array_values.xml
@@ -23,7 +23,12 @@
- 0
- 1
- 2
- - 3
+
+
+
+ - 0
+ - 1
+ - 2
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index 67350daa6..a2e86d3a1 100644
--- a/app/src/main/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
@@ -51,9 +51,15 @@
- Follow system
- Bright mode
- Dark mode
- - E-Ink mode
+
+ - 动态取色
+ - 草野
+ - 黑白
+
+
+
- Auto
- Black
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 5681c3bce..4ef8adf94 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -1,6 +1,7 @@
+
#4C662B
#FFFFFF
#CDEDA3
@@ -48,100 +49,56 @@
#EEEFE3
#E8E9DE
#E2E3D8
- #253D05
- #FFFFFF
- #5A7539
- #FFFFFF
- #303924
- #FFFFFF
- #667157
- #FFFFFF
- #083D3A
- #FFFFFF
- #477572
- #FFFFFF
- #740006
- #FFFFFF
- #CF2C27
- #FFFFFF
- #F9FAEF
- #1A1C16
- #F9FAEF
- #0F120C
- #E1E4D5
- #34382D
- #505449
- #6B6F62
- #000000
- #2F312A
- #F1F2E6
- #B1D18A
- #5A7539
- #FFFFFF
- #425C23
- #FFFFFF
- #667157
- #FFFFFF
- #4E5840
- #FFFFFF
- #477572
- #FFFFFF
- #2E5C59
- #FFFFFF
- #C6C7BD
- #F9FAEF
- #FFFFFF
- #F3F4E9
- #E8E9DE
- #DCDED3
- #D1D3C8
- #1C3200
- #FFFFFF
- #375018
- #FFFFFF
- #262F1A
- #FFFFFF
- #434C35
- #FFFFFF
- #003230
- #FFFFFF
- #21504E
- #FFFFFF
- #600004
- #FFFFFF
- #98000A
- #FFFFFF
- #F9FAEF
- #1A1C16
- #F9FAEF
- #000000
- #E1E4D5
- #000000
- #2A2D24
- #474B40
- #000000
- #2F312A
- #FFFFFF
- #B1D18A
- #375018
- #FFFFFF
- #213903
- #FFFFFF
- #434C35
- #FFFFFF
- #2C3620
- #FFFFFF
- #21504E
- #FFFFFF
- #033937
- #FFFFFF
- #B8BAAF
- #F9FAEF
- #FFFFFF
- #F1F2E6
- #E2E3D8
- #D4D5CA
- #C6C7BD
+
+
+ #5C5C5C
+ #FFFFFF
+ #747474
+ #FEFCFC
+ #5F5E5E
+ #FFFFFF
+ #E2DFDE
+ #636262
+ #5E5B5D
+ #FFFFFF
+ #777375
+ #FFFBFF
+ #BA1A1A
+ #FFFFFF
+ #FFDAD6
+ #93000A
+ #FCF8F8
+ #1C1B1B
+ #FCF8F8
+ #1C1B1B
+ #E0E3E3
+ #444748
+ #747878
+ #C4C7C7
+ #000000
+ #313030
+ #F4F0EF
+ #C7C6C6
+ #E3E2E2
+ #1B1C1C
+ #C7C6C6
+ #464747
+ #E5E2E1
+ #1B1C1C
+ #C8C6C5
+ #474746
+ #E7E1E3
+ #1D1B1D
+ #CBC5C7
+ #494648
+ #DDD9D8
+ #FCF8F8
+ #FFFFFF
+ #F7F3F2
+ #F1EDEC
+ #EBE7E7
+ #E5E2E1
+
@color/md_light_disabled
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 6a26b11cd..8580346ea 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1219,4 +1219,5 @@
隐藏漫画列表标题
刷新发现
未分组
+ 动态取色
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
deleted file mode 100644
index b6bb9b0fa..000000000
--- a/app/src/main/res/values/styles.xml
+++ /dev/null
@@ -1,200 +0,0 @@
-
-
- //**************************************************************Theme******************************************************************************//
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- //**********System Style******************//
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- //*******************Widget Style**********************************//
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
new file mode 100644
index 000000000..a5d74e9ad
--- /dev/null
+++ b/app/src/main/res/values/themes.xml
@@ -0,0 +1,132 @@
+
+
+ //**************************************************************Theme******************************************************************************//
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/res/xml/pref_config_theme.xml b/app/src/main/res/xml/pref_config_theme.xml
index b22cde57d..88bc789c4 100644
--- a/app/src/main/res/xml/pref_config_theme.xml
+++ b/app/src/main/res/xml/pref_config_theme.xml
@@ -2,14 +2,22 @@
-
+ android:summary="切换浅色/深色/跟随系统" />
+
+
-