重写主题系统
This commit is contained in:
@@ -35,91 +35,99 @@
|
||||
<activity
|
||||
android:name=".ui.welcome.WelcomeActivity"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<!-- 图标1 -->
|
||||
<activity
|
||||
<activity-alias
|
||||
android:name=".ui.welcome.Launcher1"
|
||||
android:enabled="false"
|
||||
android:exported="true"
|
||||
android:icon="@mipmap/launcher1">
|
||||
android:icon="@mipmap/launcher1"
|
||||
android:targetActivity=".ui.main.MainActivity">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</activity-alias>
|
||||
<!-- 图标2 -->
|
||||
<activity
|
||||
<activity-alias
|
||||
android:name=".ui.welcome.Launcher2"
|
||||
android:enabled="false"
|
||||
android:exported="true"
|
||||
android:icon="@mipmap/launcher2">
|
||||
android:icon="@mipmap/launcher2"
|
||||
android:targetActivity=".ui.main.MainActivity">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</activity-alias>
|
||||
<!-- 图标3 -->
|
||||
<activity
|
||||
<activity-alias
|
||||
android:name=".ui.welcome.Launcher3"
|
||||
android:enabled="false"
|
||||
android:exported="true"
|
||||
android:icon="@mipmap/launcher3">
|
||||
android:icon="@mipmap/launcher3"
|
||||
android:targetActivity=".ui.main.MainActivity">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</activity-alias>
|
||||
<!-- 图标4 -->
|
||||
<activity
|
||||
<activity-alias
|
||||
android:name=".ui.welcome.Launcher4"
|
||||
android:enabled="false"
|
||||
android:exported="true"
|
||||
android:icon="@mipmap/launcher4">
|
||||
android:icon="@mipmap/launcher4"
|
||||
android:targetActivity=".ui.main.MainActivity">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</activity-alias>
|
||||
<!-- 图标5 -->
|
||||
<activity
|
||||
<activity-alias
|
||||
android:name=".ui.welcome.Launcher5"
|
||||
android:enabled="false"
|
||||
android:exported="true"
|
||||
android:icon="@mipmap/launcher5">
|
||||
android:icon="@mipmap/launcher5"
|
||||
android:targetActivity=".ui.main.MainActivity">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</activity-alias>
|
||||
<!-- 图标6 -->
|
||||
<activity
|
||||
<activity-alias
|
||||
android:name=".ui.welcome.Launcher6"
|
||||
android:enabled="false"
|
||||
android:exported="true"
|
||||
android:icon="@mipmap/launcher6">
|
||||
android:icon="@mipmap/launcher6"
|
||||
android:targetActivity=".ui.main.MainActivity">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</activity-alias>
|
||||
<!-- 主界面 -->
|
||||
<activity
|
||||
android:name=".ui.main.MainActivity"
|
||||
android:alwaysRetainTaskState="true"
|
||||
android:configChanges="locale|keyboardHidden|orientation|screenSize|smallestScreenSize|screenLayout|uiMode"
|
||||
android:exported="true"
|
||||
android:launchMode="singleTask" />
|
||||
android:launchMode="singleTask">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<!-- 阅读界面 -->
|
||||
<activity
|
||||
android:name=".ui.book.read.ReadBookActivity"
|
||||
|
||||
@@ -5,6 +5,7 @@ import android.app.Notification
|
||||
import android.app.NotificationChannel
|
||||
import android.app.NotificationManager
|
||||
import android.content.Context
|
||||
import android.content.SharedPreferences
|
||||
import android.content.pm.ActivityInfo
|
||||
import android.content.pm.ApplicationInfo
|
||||
import android.content.res.Configuration
|
||||
@@ -68,7 +69,6 @@ class App : Application() {
|
||||
|
||||
override fun onCreate() {
|
||||
super.onCreate()
|
||||
DynamicColors.applyToActivitiesIfAvailable(this)
|
||||
CrashHandler(this)
|
||||
if (isDebuggable) {
|
||||
ThreadUtils.setThreadAssertsDisabledForTesting(true)
|
||||
|
||||
@@ -17,9 +17,11 @@ import androidx.annotation.RequiresApi
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import androidx.viewbinding.ViewBinding
|
||||
import com.google.android.material.appbar.AppBarLayout
|
||||
import com.google.android.material.color.DynamicColors
|
||||
import io.legato.kazusa.R
|
||||
import io.legato.kazusa.constant.AppConst
|
||||
import io.legato.kazusa.constant.AppLog
|
||||
import io.legato.kazusa.constant.PreferKey
|
||||
import io.legato.kazusa.constant.Theme
|
||||
import io.legato.kazusa.help.config.ThemeConfig
|
||||
//import io.legado.app.lib.theme.backgroundColor
|
||||
@@ -27,6 +29,8 @@ import io.legato.kazusa.help.config.ThemeConfig
|
||||
import io.legato.kazusa.utils.applyOpenTint
|
||||
import io.legato.kazusa.utils.applyTint
|
||||
import io.legato.kazusa.utils.disableAutoFill
|
||||
import io.legato.kazusa.utils.getPrefBoolean
|
||||
import io.legato.kazusa.utils.getPrefString
|
||||
import io.legato.kazusa.utils.hideSoftInput
|
||||
import io.legato.kazusa.utils.toastOnUi
|
||||
import io.legato.kazusa.utils.windowSize
|
||||
@@ -70,8 +74,9 @@ abstract class BaseActivity<VB : ViewBinding>(
|
||||
|
||||
@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<VB : ViewBinding>(
|
||||
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)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -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"
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
package io.legato.kazusa.constant
|
||||
|
||||
enum class Theme {
|
||||
Dark, Light, Auto, Transparent, EInk;
|
||||
Dark, Light, Auto, Transparent, EInk, GR;
|
||||
}
|
||||
@@ -100,7 +100,6 @@ object AppConfig : SharedPreferences.OnSharedPreferenceChangeListener {
|
||||
get() = when (themeMode) {
|
||||
"1" -> false
|
||||
"2" -> true
|
||||
"3" -> false
|
||||
else -> sysConfiguration.isNightMode
|
||||
}
|
||||
set(value) {
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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 ->
|
||||
|
||||
@@ -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<SwitchCompat>(
|
||||
Preference.bindView<SwitchCompat>(
|
||||
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 {
|
||||
|
||||
@@ -52,6 +52,7 @@ class AllBookmarkActivity : VMBaseActivity<ActivityAllBookmarkBinding, AllBookma
|
||||
}
|
||||
|
||||
private fun initView() {
|
||||
setSupportActionBar(binding.topBar)
|
||||
binding.recyclerView.addItemDecoration(BookmarkDecoration(this,adapter))
|
||||
binding.recyclerView.adapter = adapter
|
||||
binding.recyclerView.applyNavigationBarPadding()
|
||||
|
||||
@@ -28,7 +28,7 @@ class ConfigActivity : VMBaseActivity<ActivityConfigBinding, ConfigViewModel>()
|
||||
|
||||
override fun setTitle(resId: Int) {
|
||||
super.setTitle(resId)
|
||||
binding.titleBar.setTitle(resId)
|
||||
binding.topBar.setTitle(resId)
|
||||
}
|
||||
|
||||
inline fun <reified T : Fragment> replaceFragment(configTag: String) {
|
||||
|
||||
@@ -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?) {
|
||||
|
||||
@@ -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<NameListPreference>(PreferKey.themeMode)?.let {
|
||||
findPreference<ThemeModePreference>(PreferKey.themeMode)?.let {
|
||||
it.setOnPreferenceChangeListener { _, _ ->
|
||||
ThemeConfig.applyDayNight(requireContext())
|
||||
true
|
||||
}
|
||||
}
|
||||
findPreference<ListPreference>(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))
|
||||
|
||||
@@ -27,7 +27,7 @@ open class WelcomeActivity : BaseActivity<ActivityWelcomeBinding>() {
|
||||
if (intent.flags and Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT != 0) {
|
||||
finish()
|
||||
} else {
|
||||
binding.root.postDelayed(600) { startMainActivity() }
|
||||
binding.root.postDelayed(100) { startMainActivity() }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,23 +1,42 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<io.legato.kazusa.ui.widget.TitleBar
|
||||
<com.google.android.material.appbar.AppBarLayout
|
||||
android:id="@+id/title_bar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:title="@string/all_bookmark" />
|
||||
android:background="@color/transparent"
|
||||
android:fitsSystemWindows="true">
|
||||
|
||||
<com.google.android.material.appbar.CollapsingToolbarLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="?attr/collapsingToolbarLayoutLargeSize"
|
||||
style="?attr/collapsingToolbarLayoutLargeSize"
|
||||
app:titleCollapseMode="scale"
|
||||
app:collapsedTitleTextAppearance="?attr/textAppearanceTitleLarge"
|
||||
app:expandedTitleTextAppearance="?attr/textAppearanceHeadlineLarge"
|
||||
app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">
|
||||
|
||||
<com.google.android.material.appbar.MaterialToolbar
|
||||
android:id="@+id/top_bar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="?attr/actionBarSize"
|
||||
app:navigationIcon="@drawable/ic_arrow_back"
|
||||
app:title="@string/all_bookmark"
|
||||
app:layout_collapseMode="pin" />
|
||||
|
||||
</com.google.android.material.appbar.CollapsingToolbarLayout>
|
||||
</com.google.android.material.appbar.AppBarLayout>
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/recycler_view"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_height="match_parent"
|
||||
android:clipToPadding="false"
|
||||
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@+id/title_bar" />
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||
@@ -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">
|
||||
|
||||
<com.google.android.material.appbar.CollapsingToolbarLayout
|
||||
|
||||
@@ -1,21 +1,49 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:orientation="vertical"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent">
|
||||
|
||||
<io.legato.kazusa.ui.widget.TitleBar
|
||||
<com.google.android.material.appbar.AppBarLayout
|
||||
android:id="@+id/title_bar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
app:title="设置" />
|
||||
android:fitsSystemWindows="true"
|
||||
app:liftOnScroll="false"
|
||||
android:stateListAnimator="@null">
|
||||
|
||||
<LinearLayout
|
||||
android:id="@+id/configFrameLayout"
|
||||
<com.google.android.material.appbar.CollapsingToolbarLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="?attr/collapsingToolbarLayoutLargeSize"
|
||||
style="?attr/collapsingToolbarLayoutLargeSize"
|
||||
app:collapsedTitleTextAppearance="?attr/textAppearanceTitleLarge"
|
||||
app:expandedTitleTextAppearance="?attr/textAppearanceHeadlineLarge"
|
||||
app:titleCollapseMode="scale"
|
||||
app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">
|
||||
|
||||
<com.google.android.material.appbar.MaterialToolbar
|
||||
android:id="@+id/top_bar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="?attr/actionBarSize"
|
||||
app:navigationIcon="@drawable/ic_arrow_back"
|
||||
app:layout_collapseMode="pin" />
|
||||
|
||||
</com.google.android.material.appbar.CollapsingToolbarLayout>
|
||||
</com.google.android.material.appbar.AppBarLayout>
|
||||
|
||||
<androidx.core.widget.NestedScrollView
|
||||
android:id="@+id/configScrollView"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical" />
|
||||
app:layout_behavior="@string/appbar_scrolling_view_behavior"
|
||||
android:fillViewport="true">
|
||||
|
||||
</LinearLayout>
|
||||
<LinearLayout
|
||||
android:id="@+id/configFrameLayout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical" />
|
||||
</androidx.core.widget.NestedScrollView>
|
||||
|
||||
</androidx.coordinatorlayout.widget.CoordinatorLayout>
|
||||
@@ -16,14 +16,15 @@
|
||||
<androidx.constraintlayout.widget.ConstraintLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingVertical="8dp"
|
||||
android:paddingHorizontal="16dp">
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_book_name"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="6dp"
|
||||
android:singleLine="true"
|
||||
android:layout_marginBottom="4dp"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toLeftOf="@+id/tv_remove"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
@@ -34,7 +35,7 @@
|
||||
android:id="@+id/tv_reading_time"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="6dp"
|
||||
style="@style/ChapterNameText"
|
||||
android:singleLine="true"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toLeftOf="@+id/tv_remove"
|
||||
@@ -46,9 +47,8 @@
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
style="@style/Widget.Material3.Button.IconButton.Filled.Tonal"
|
||||
android:padding="6dp"
|
||||
app:icon="@drawable/ic_clear_all"
|
||||
android:text="@string/clear"
|
||||
android:text="清除所有"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
@@ -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" />
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/replace_rule_summary">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/et_name"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -45,7 +45,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/group">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/et_group"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -58,7 +58,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/replace_rule">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/et_replace_rule"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -94,7 +94,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/replace_to">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/et_replace_to"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -130,7 +130,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/replace_scope">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/et_scope"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -143,7 +143,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/replace_exclude_scope">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/et_exclude_scope"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -156,7 +156,7 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/timeout_millisecond">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/et_timeout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
||||
@@ -4,24 +4,41 @@
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="vertical">
|
||||
android:orientation="vertical"
|
||||
android:paddingHorizontal="16dp"
|
||||
android:paddingVertical="8dp">
|
||||
|
||||
<androidx.appcompat.widget.Toolbar
|
||||
android:id="@+id/tool_bar"
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:theme="?attr/actionBarStyle"
|
||||
app:title="@string/check_source_config"
|
||||
app:titleTextAppearance="@style/ToolbarTitle" />
|
||||
android:orientation="vertical"
|
||||
android:gravity="center"
|
||||
android:paddingVertical="8dp"
|
||||
android:paddingHorizontal="16dp">
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.TextInputLayout
|
||||
<View
|
||||
android:layout_width="36dp"
|
||||
android:layout_height="4dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:background="@drawable/bg_bottom_sheet_handle"
|
||||
android:layout_marginBottom="16dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/bottom_sheet_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/check_source_config"
|
||||
android:textSize="18sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingLeft="12dp"
|
||||
android:paddingRight="12dp"
|
||||
android:paddingTop="3dp">
|
||||
android:paddingTop="8dp">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/check_source_timeout"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -29,43 +46,42 @@
|
||||
android:digits="1234567890"
|
||||
tools:ignore="SpeakableTextPresentCheck,TouchTargetSizeCheck" />
|
||||
|
||||
</io.legato.kazusa.ui.widget.text.TextInputLayout>
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
android:paddingLeft="12dp"
|
||||
<TextView
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingVertical="8dp"
|
||||
android:text="@string/check_source_item" />
|
||||
|
||||
<com.google.android.flexbox.FlexboxLayout
|
||||
android:layout_width="match_parent"
|
||||
android:paddingLeft="12dp"
|
||||
android:paddingRight="12dp"
|
||||
|
||||
android:layout_height="wrap_content"
|
||||
app:flexWrap="wrap"
|
||||
app:justifyContent="space_between">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeCheckBox
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/check_search"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/search" />
|
||||
<io.legato.kazusa.lib.theme.view.ThemeCheckBox
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/check_discovery"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/discovery" />
|
||||
<io.legato.kazusa.lib.theme.view.ThemeCheckBox
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/check_info"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/source_tab_info" />
|
||||
<io.legato.kazusa.lib.theme.view.ThemeCheckBox
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/check_category"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/chapter_list" />
|
||||
<io.legato.kazusa.lib.theme.view.ThemeCheckBox
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/check_content"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -76,23 +92,22 @@
|
||||
<com.google.android.flexbox.FlexboxLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingLeft="12dp"
|
||||
android:paddingRight="12dp"
|
||||
app:justifyContent="flex_end">
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/tv_cancel"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="12dp"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:text="@string/cancel"
|
||||
tools:ignore="RtlHardcoded" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/tv_ok"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="12dp"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
android:text="@string/ok"
|
||||
tools:ignore="RtlHardcoded" />
|
||||
|
||||
|
||||
@@ -6,13 +6,30 @@
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:orientation="vertical">
|
||||
|
||||
<androidx.appcompat.widget.Toolbar
|
||||
android:id="@+id/tool_bar"
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:theme="?attr/actionBarStyle"
|
||||
app:title="@string/cover_config"
|
||||
app:titleTextAppearance="@style/ToolbarTitle" />
|
||||
android:orientation="vertical"
|
||||
android:gravity="center"
|
||||
android:paddingVertical="16dp"
|
||||
android:paddingHorizontal="16dp">
|
||||
|
||||
<View
|
||||
android:layout_width="36dp"
|
||||
android:layout_height="4dp"
|
||||
android:layout_gravity="center_horizontal"
|
||||
android:background="@drawable/bg_bottom_sheet_handle"
|
||||
android:layout_marginBottom="16dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/bottom_sheet_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/cover_config"
|
||||
android:textSize="18sp"
|
||||
android:textStyle="bold" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
<androidx.core.widget.NestedScrollView
|
||||
android:layout_width="match_parent"
|
||||
@@ -25,39 +42,39 @@
|
||||
android:orientation="vertical"
|
||||
android:padding="16dp">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeCheckBox
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/cb_enable"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="@string/enable" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.TextInputLayout
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="3dp">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/edit_search_url"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/r_search_url"
|
||||
tools:ignore="SpeakableTextPresentCheck,TouchTargetSizeCheck" />
|
||||
|
||||
</io.legato.kazusa.ui.widget.text.TextInputLayout>
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.TextInputLayout
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="3dp">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/edit_cover_url_rule"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/rule_cover_url"
|
||||
tools:ignore="SpeakableTextPresentCheck,TouchTargetSizeCheck" />
|
||||
|
||||
</io.legato.kazusa.ui.widget.text.TextInputLayout>
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
@@ -71,11 +88,11 @@
|
||||
app:flexWrap="wrap"
|
||||
app:justifyContent="space_between">
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/tv_footer_left"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="12dp"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
android:text="@string/btn_default_s"
|
||||
tools:ignore="RtlHardcoded" />
|
||||
|
||||
@@ -84,20 +101,20 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<TextView
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/tv_cancel"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="12dp"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:text="@string/cancel"
|
||||
android:textColor="@color/secondaryText"
|
||||
tools:ignore="RtlHardcoded" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/tv_ok"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="12dp"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
android:text="@string/ok"
|
||||
tools:ignore="RtlHardcoded" />
|
||||
|
||||
|
||||
@@ -24,49 +24,49 @@
|
||||
android:orientation="vertical"
|
||||
android:padding="16dp">
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.TextInputLayout
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="3dp">
|
||||
android:paddingTop="8dp">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/edit_upload_url"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/upload_url"
|
||||
tools:ignore="SpeakableTextPresentCheck,TouchTargetSizeCheck" />
|
||||
|
||||
</io.legato.kazusa.ui.widget.text.TextInputLayout>
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.TextInputLayout
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="3dp">
|
||||
android:paddingTop="8dp">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/edit_download_url_rule"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/download_url_rule"
|
||||
tools:ignore="SpeakableTextPresentCheck,TouchTargetSizeCheck" />
|
||||
|
||||
</io.legato.kazusa.ui.widget.text.TextInputLayout>
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.TextInputLayout
|
||||
<com.google.android.material.textfield.TextInputLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="3dp">
|
||||
android:paddingTop="8dp">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeEditText
|
||||
<com.google.android.material.textfield.TextInputEditText
|
||||
android:id="@+id/edit_summary"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:hint="@string/summary"
|
||||
tools:ignore="SpeakableTextPresentCheck,TouchTargetSizeCheck" />
|
||||
|
||||
</io.legato.kazusa.ui.widget.text.TextInputLayout>
|
||||
</com.google.android.material.textfield.TextInputLayout>
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeCheckBox
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/cb_compress"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
@@ -80,16 +80,15 @@
|
||||
<com.google.android.flexbox.FlexboxLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingLeft="12dp"
|
||||
android:paddingRight="12dp"
|
||||
android:paddingHorizontal="16dp"
|
||||
app:flexWrap="wrap"
|
||||
app:justifyContent="space_between">
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/tv_footer_left"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="12dp"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
android:text="@string/test"
|
||||
tools:ignore="RtlHardcoded" />
|
||||
|
||||
@@ -98,19 +97,20 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/tv_cancel"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="12dp"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
android:layout_marginEnd="8dp"
|
||||
android:text="@string/cancel"
|
||||
tools:ignore="RtlHardcoded" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/tv_ok"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="12dp"
|
||||
style="@style/Widget.Material3.Button.TonalButton"
|
||||
android:text="@string/ok"
|
||||
tools:ignore="RtlHardcoded" />
|
||||
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
app:title="@string/login"
|
||||
app:displayHomeAsUp="false"
|
||||
app:fitStatusBar="false"
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay"
|
||||
app:titleTextAppearance="@style/ToolbarTitle" />
|
||||
|
||||
<androidx.core.widget.NestedScrollView
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:elevation="5dp"
|
||||
android:theme="?attr/actionBarStyle"
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay"
|
||||
app:title="跳转确认"
|
||||
app:titleTextAppearance="@style/ToolbarTitle" />
|
||||
|
||||
|
||||
@@ -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" />
|
||||
|
||||
|
||||
@@ -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" />
|
||||
|
||||
|
||||
@@ -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" />
|
||||
|
||||
|
||||
@@ -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" />
|
||||
|
||||
|
||||
@@ -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" />
|
||||
|
||||
<androidx.recyclerview.widget.RecyclerView
|
||||
android:id="@+id/recycler_view"
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="16dp">
|
||||
|
||||
@@ -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" />
|
||||
|
||||
|
||||
@@ -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" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.ScrollTextView
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
app:displayHomeAsUp="false"
|
||||
app:fitStatusBar="false"
|
||||
app:title="Set variable"
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay"
|
||||
app:titleTextAppearance="@style/ToolbarTitle" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.AccentTextView
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
android:layout_height="wrap_content"
|
||||
android:elevation="5dp"
|
||||
android:theme="?attr/actionBarStyle"
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay"
|
||||
app:title="@string/input_verification_code"
|
||||
app:titleTextAppearance="@style/ToolbarTitle" />
|
||||
|
||||
|
||||
@@ -25,7 +25,6 @@
|
||||
app:title="@string/server_config"
|
||||
app:displayHomeAsUp="false"
|
||||
app:fitStatusBar="false"
|
||||
app:popupTheme="@style/AppTheme.PopupOverlay"
|
||||
app:titleTextAppearance="@style/ToolbarTitle" />
|
||||
|
||||
<io.legato.kazusa.ui.widget.text.TextInputLayout
|
||||
|
||||
@@ -11,19 +11,19 @@
|
||||
android:paddingEnd="16dp"
|
||||
android:background="?attr/selectableItemBackground">
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeCheckBox
|
||||
<com.google.android.material.checkbox.MaterialCheckBox
|
||||
android:id="@+id/cb_name"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:scrollbars="none"
|
||||
android:singleLine="true"
|
||||
android:maxLines="2"
|
||||
app:layout_constraintBottom_toBottomOf="parent"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintRight_toLeftOf="@+id/swt_enabled"
|
||||
app:layout_constraintTop_toTopOf="parent"
|
||||
tools:ignore="RtlSymmetry" />
|
||||
|
||||
<io.legato.kazusa.lib.theme.view.ThemeSwitch
|
||||
<com.google.android.material.materialswitch.MaterialSwitch
|
||||
android:id="@+id/swt_enabled"
|
||||
android:name="@string/enable"
|
||||
android:layout_width="wrap_content"
|
||||
|
||||
@@ -12,11 +12,12 @@
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/tv_error_message"
|
||||
style="@style/Style.Text.Primary.Normal"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="16dp"
|
||||
android:paddingBottom="16dp" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatButton
|
||||
<com.google.android.material.button.MaterialButton
|
||||
android:id="@+id/btn_error_retry"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
||||
@@ -8,12 +8,12 @@
|
||||
<androidx.core.widget.ContentLoadingProgressBar
|
||||
android:id="@+id/loading_progress"
|
||||
android:layout_width="48dp"
|
||||
android:layout_height="48dp"
|
||||
style="@style/Widget.AppCompat.ProgressBar" />
|
||||
android:layout_height="48dp" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/tv_loading_message"
|
||||
style="@style/Style.Text.Second.Normal.Wrap"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:paddingTop="16dp"
|
||||
android:text="@string/dynamic_loading" />
|
||||
</LinearLayout>
|
||||
@@ -35,7 +35,7 @@
|
||||
<TextView
|
||||
android:id="@+id/preference_title"
|
||||
android:singleLine="true"
|
||||
android:textSize="16sp"
|
||||
android:textSize="18sp"
|
||||
android:text="@string/title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
@@ -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" />
|
||||
|
||||
@@ -36,7 +36,6 @@
|
||||
<item>Adaptar do sistema</item>
|
||||
<item>Tema Claro</item>
|
||||
<item>Tema Oscuro</item>
|
||||
<item>Tema E-Ink</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="NavBarColors">
|
||||
|
||||
@@ -47,100 +47,54 @@
|
||||
<color name="md_theme_surfaceContainer">#1E201A</color>
|
||||
<color name="md_theme_surfaceContainerHigh">#282B24</color>
|
||||
<color name="md_theme_surfaceContainerHighest">#33362E</color>
|
||||
<color name="md_theme_primary_mediumContrast">#C7E79E</color>
|
||||
<color name="md_theme_onPrimary_mediumContrast">#172B00</color>
|
||||
<color name="md_theme_primaryContainer_mediumContrast">#7D9A59</color>
|
||||
<color name="md_theme_onPrimaryContainer_mediumContrast">#000000</color>
|
||||
<color name="md_theme_secondary_mediumContrast">#D5E1C2</color>
|
||||
<color name="md_theme_onSecondary_mediumContrast">#1F2814</color>
|
||||
<color name="md_theme_secondaryContainer_mediumContrast">#8A9579</color>
|
||||
<color name="md_theme_onSecondaryContainer_mediumContrast">#000000</color>
|
||||
<color name="md_theme_tertiary_mediumContrast">#B5E6E1</color>
|
||||
<color name="md_theme_onTertiary_mediumContrast">#002B29</color>
|
||||
<color name="md_theme_tertiaryContainer_mediumContrast">#6B9995</color>
|
||||
<color name="md_theme_onTertiaryContainer_mediumContrast">#000000</color>
|
||||
<color name="md_theme_error_mediumContrast">#FFD2CC</color>
|
||||
<color name="md_theme_onError_mediumContrast">#540003</color>
|
||||
<color name="md_theme_errorContainer_mediumContrast">#FF5449</color>
|
||||
<color name="md_theme_onErrorContainer_mediumContrast">#000000</color>
|
||||
<color name="md_theme_background_mediumContrast">#12140E</color>
|
||||
<color name="md_theme_onBackground_mediumContrast">#E2E3D8</color>
|
||||
<color name="md_theme_surface_mediumContrast">#12140E</color>
|
||||
<color name="md_theme_onSurface_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_surfaceVariant_mediumContrast">#44483D</color>
|
||||
<color name="md_theme_onSurfaceVariant_mediumContrast">#DBDECF</color>
|
||||
<color name="md_theme_outline_mediumContrast">#B0B3A6</color>
|
||||
<color name="md_theme_outlineVariant_mediumContrast">#8E9285</color>
|
||||
<color name="md_theme_scrim_mediumContrast">#000000</color>
|
||||
<color name="md_theme_inverseSurface_mediumContrast">#E2E3D8</color>
|
||||
<color name="md_theme_inverseOnSurface_mediumContrast">#282B24</color>
|
||||
<color name="md_theme_inversePrimary_mediumContrast">#364F17</color>
|
||||
<color name="md_theme_primaryFixed_mediumContrast">#CDEDA3</color>
|
||||
<color name="md_theme_onPrimaryFixed_mediumContrast">#081400</color>
|
||||
<color name="md_theme_primaryFixedDim_mediumContrast">#B1D18A</color>
|
||||
<color name="md_theme_onPrimaryFixedVariant_mediumContrast">#253D05</color>
|
||||
<color name="md_theme_secondaryFixed_mediumContrast">#DCE7C8</color>
|
||||
<color name="md_theme_onSecondaryFixed_mediumContrast">#0B1403</color>
|
||||
<color name="md_theme_secondaryFixedDim_mediumContrast">#BFCBAD</color>
|
||||
<color name="md_theme_onSecondaryFixedVariant_mediumContrast">#303924</color>
|
||||
<color name="md_theme_tertiaryFixed_mediumContrast">#BCECE7</color>
|
||||
<color name="md_theme_onTertiaryFixed_mediumContrast">#001413</color>
|
||||
<color name="md_theme_tertiaryFixedDim_mediumContrast">#A0D0CB</color>
|
||||
<color name="md_theme_onTertiaryFixedVariant_mediumContrast">#083D3A</color>
|
||||
<color name="md_theme_surfaceDim_mediumContrast">#12140E</color>
|
||||
<color name="md_theme_surfaceBright_mediumContrast">#43453D</color>
|
||||
<color name="md_theme_surfaceContainerLowest_mediumContrast">#060804</color>
|
||||
<color name="md_theme_surfaceContainerLow_mediumContrast">#1C1E18</color>
|
||||
<color name="md_theme_surfaceContainer_mediumContrast">#262922</color>
|
||||
<color name="md_theme_surfaceContainerHigh_mediumContrast">#31342C</color>
|
||||
<color name="md_theme_surfaceContainerHighest_mediumContrast">#3C3F37</color>
|
||||
<color name="md_theme_primary_highContrast">#DAFBB0</color>
|
||||
<color name="md_theme_onPrimary_highContrast">#000000</color>
|
||||
<color name="md_theme_primaryContainer_highContrast">#ADCD86</color>
|
||||
<color name="md_theme_onPrimaryContainer_highContrast">#050E00</color>
|
||||
<color name="md_theme_secondary_highContrast">#E9F4D5</color>
|
||||
<color name="md_theme_onSecondary_highContrast">#000000</color>
|
||||
<color name="md_theme_secondaryContainer_highContrast">#BCC7A9</color>
|
||||
<color name="md_theme_onSecondaryContainer_highContrast">#060D01</color>
|
||||
<color name="md_theme_tertiary_highContrast">#C9F9F5</color>
|
||||
<color name="md_theme_onTertiary_highContrast">#000000</color>
|
||||
<color name="md_theme_tertiaryContainer_highContrast">#9CCCC7</color>
|
||||
<color name="md_theme_onTertiaryContainer_highContrast">#000E0D</color>
|
||||
<color name="md_theme_error_highContrast">#FFECE9</color>
|
||||
<color name="md_theme_onError_highContrast">#000000</color>
|
||||
<color name="md_theme_errorContainer_highContrast">#FFAEA4</color>
|
||||
<color name="md_theme_onErrorContainer_highContrast">#220001</color>
|
||||
<color name="md_theme_background_highContrast">#12140E</color>
|
||||
<color name="md_theme_onBackground_highContrast">#E2E3D8</color>
|
||||
<color name="md_theme_surface_highContrast">#12140E</color>
|
||||
<color name="md_theme_onSurface_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_surfaceVariant_highContrast">#44483D</color>
|
||||
<color name="md_theme_onSurfaceVariant_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_outline_highContrast">#EEF2E2</color>
|
||||
<color name="md_theme_outlineVariant_highContrast">#C1C4B6</color>
|
||||
<color name="md_theme_scrim_highContrast">#000000</color>
|
||||
<color name="md_theme_inverseSurface_highContrast">#E2E3D8</color>
|
||||
<color name="md_theme_inverseOnSurface_highContrast">#000000</color>
|
||||
<color name="md_theme_inversePrimary_highContrast">#364F17</color>
|
||||
<color name="md_theme_primaryFixed_highContrast">#CDEDA3</color>
|
||||
<color name="md_theme_onPrimaryFixed_highContrast">#000000</color>
|
||||
<color name="md_theme_primaryFixedDim_highContrast">#B1D18A</color>
|
||||
<color name="md_theme_onPrimaryFixedVariant_highContrast">#081400</color>
|
||||
<color name="md_theme_secondaryFixed_highContrast">#DCE7C8</color>
|
||||
<color name="md_theme_onSecondaryFixed_highContrast">#000000</color>
|
||||
<color name="md_theme_secondaryFixedDim_highContrast">#BFCBAD</color>
|
||||
<color name="md_theme_onSecondaryFixedVariant_highContrast">#0B1403</color>
|
||||
<color name="md_theme_tertiaryFixed_highContrast">#BCECE7</color>
|
||||
<color name="md_theme_onTertiaryFixed_highContrast">#000000</color>
|
||||
<color name="md_theme_tertiaryFixedDim_highContrast">#A0D0CB</color>
|
||||
<color name="md_theme_onTertiaryFixedVariant_highContrast">#001413</color>
|
||||
<color name="md_theme_surfaceDim_highContrast">#12140E</color>
|
||||
<color name="md_theme_surfaceBright_highContrast">#4F5149</color>
|
||||
<color name="md_theme_surfaceContainerLowest_highContrast">#000000</color>
|
||||
<color name="md_theme_surfaceContainerLow_highContrast">#1E201A</color>
|
||||
<color name="md_theme_surfaceContainer_highContrast">#2F312A</color>
|
||||
<color name="md_theme_surfaceContainerHigh_highContrast">#3A3C35</color>
|
||||
<color name="md_theme_surfaceContainerHighest_highContrast">#454840</color>
|
||||
|
||||
<color name="wh_theme_primary">#C7C6C6</color>
|
||||
<color name="wh_theme_onPrimary">#303031</color>
|
||||
<color name="wh_theme_primaryContainer">#919090</color>
|
||||
<color name="wh_theme_onPrimaryContainer">#050606</color>
|
||||
<color name="wh_theme_secondary">#C8C6C5</color>
|
||||
<color name="wh_theme_onSecondary">#303030</color>
|
||||
<color name="wh_theme_secondaryContainer">#474746</color>
|
||||
<color name="wh_theme_onSecondaryContainer">#B7B5B4</color>
|
||||
<color name="wh_theme_tertiary">#CBC5C7</color>
|
||||
<color name="wh_theme_onTertiary">#323031</color>
|
||||
<color name="wh_theme_tertiaryContainer">#948F91</color>
|
||||
<color name="wh_theme_onTertiaryContainer">#060506</color>
|
||||
<color name="wh_theme_error">#FFB4AB</color>
|
||||
<color name="wh_theme_onError">#690005</color>
|
||||
<color name="wh_theme_errorContainer">#93000A</color>
|
||||
<color name="wh_theme_onErrorContainer">#FFDAD6</color>
|
||||
<color name="wh_theme_background">#141313</color>
|
||||
<color name="wh_theme_onBackground">#E5E2E1</color>
|
||||
<color name="wh_theme_surface">#141313</color>
|
||||
<color name="wh_theme_onSurface">#E5E2E1</color>
|
||||
<color name="wh_theme_surfaceVariant">#444748</color>
|
||||
<color name="wh_theme_onSurfaceVariant">#C4C7C7</color>
|
||||
<color name="wh_theme_outline">#8E9192</color>
|
||||
<color name="wh_theme_outlineVariant">#444748</color>
|
||||
<color name="wh_theme_scrim">#000000</color>
|
||||
<color name="wh_theme_inverseSurface">#E5E2E1</color>
|
||||
<color name="wh_theme_inverseOnSurface">#313030</color>
|
||||
<color name="wh_theme_inversePrimary">#5E5E5E</color>
|
||||
<color name="wh_theme_primaryFixed">#E3E2E2</color>
|
||||
<color name="wh_theme_onPrimaryFixed">#1B1C1C</color>
|
||||
<color name="wh_theme_primaryFixedDim">#C7C6C6</color>
|
||||
<color name="wh_theme_onPrimaryFixedVariant">#464747</color>
|
||||
<color name="wh_theme_secondaryFixed">#E5E2E1</color>
|
||||
<color name="wh_theme_onSecondaryFixed">#1B1C1C</color>
|
||||
<color name="wh_theme_secondaryFixedDim">#C8C6C5</color>
|
||||
<color name="wh_theme_onSecondaryFixedVariant">#474746</color>
|
||||
<color name="wh_theme_tertiaryFixed">#E7E1E3</color>
|
||||
<color name="wh_theme_onTertiaryFixed">#1D1B1D</color>
|
||||
<color name="wh_theme_tertiaryFixedDim">#CBC5C7</color>
|
||||
<color name="wh_theme_onTertiaryFixedVariant">#494648</color>
|
||||
<color name="wh_theme_surfaceDim">#141313</color>
|
||||
<color name="wh_theme_surfaceBright">#3A3939</color>
|
||||
<color name="wh_theme_surfaceContainerLowest">#0E0E0E</color>
|
||||
<color name="wh_theme_surfaceContainerLow">#1C1B1B</color>
|
||||
<color name="wh_theme_surfaceContainer">#201F1F</color>
|
||||
<color name="wh_theme_surfaceContainerHigh">#2A2A2A</color>
|
||||
<color name="wh_theme_surfaceContainerHighest">#353434</color>
|
||||
|
||||
<color name="disabled">@color/md_dark_disabled</color>
|
||||
|
||||
|
||||
@@ -1,24 +0,0 @@
|
||||
<resources>
|
||||
|
||||
<style name="Base.AppTheme" parent="Theme.Material3.DayNight.NoActionBar">
|
||||
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
|
||||
<item name="android:windowLightStatusBar">false</item>
|
||||
<item name="tabStyle">@style/Widget.App.TabLayout</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Dark">
|
||||
|
||||
</style>
|
||||
|
||||
<style name="Style.Shadow.Top" parent="android:Widget">
|
||||
<item name="android:layout_width">match_parent</item>
|
||||
<item name="android:layout_height">@dimen/shadow_height</item>
|
||||
<item name="android:background">@drawable/bg_shadow_top_night</item>
|
||||
</style>
|
||||
|
||||
<style name="Style.Shadow.Bottom" parent="android:Widget">
|
||||
<item name="android:layout_width">match_parent</item>
|
||||
<item name="android:layout_height">@dimen/shadow_height</item>
|
||||
<item name="android:background">@drawable/bg_shadow_bottom_night</item>
|
||||
</style>
|
||||
</resources>
|
||||
@@ -36,7 +36,6 @@
|
||||
<item>Adaptar do sistema</item>
|
||||
<item>Tema Claro</item>
|
||||
<item>Tema Escuro</item>
|
||||
<item>Tema E-Ink</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="NavBarColors">
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
<item>Làm theo hệ thống</item>
|
||||
<item>Chủ đề màu sáng</item>
|
||||
<item>Chủ đề tối</item>
|
||||
<item>E-Ink (màn hình mực).</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="NavBarColors">
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<item>跟隨系統</item>
|
||||
<item>亮色主題</item>
|
||||
<item>暗色主題</item>
|
||||
<item>E-Ink(墨水螢幕)</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="NavBarColors">
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
<item>跟隨系統</item>
|
||||
<item>亮色主題</item>
|
||||
<item>暗色主題</item>
|
||||
<item>E-Ink(墨水屏)</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="NavBarColors">
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
<item>跟随系统</item>
|
||||
<item>亮色主题</item>
|
||||
<item>暗色主题</item>
|
||||
<item>E-Ink(墨水屏)</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="double_page_title">
|
||||
|
||||
@@ -478,7 +478,7 @@
|
||||
<string name="scan_qr_code">扫描二维码</string>
|
||||
<string name="click_on_selected_show_menu">选中时点击可弹出菜单</string>
|
||||
<string name="theme">主题</string>
|
||||
<string name="theme_mode">主题模式</string>
|
||||
<string name="theme_mode">深色模式</string>
|
||||
<string name="theme_mode_desc">选择主题模式</string>
|
||||
<string name="join_qq_group">加入 QQ 群</string>
|
||||
<string name="bg_image_per">获取背景图片需存储权限</string>
|
||||
|
||||
@@ -23,7 +23,12 @@
|
||||
<item>0</item>
|
||||
<item>1</item>
|
||||
<item>2</item>
|
||||
<item>3</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="themes_value">
|
||||
<item>0</item>
|
||||
<item>1</item>
|
||||
<item>2</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="screen_direction_value">
|
||||
|
||||
@@ -51,9 +51,15 @@
|
||||
<item>Follow system</item>
|
||||
<item>Bright mode</item>
|
||||
<item>Dark mode</item>
|
||||
<item>E-Ink mode</item>
|
||||
</string-array>
|
||||
|
||||
<string-array name="themes_item">
|
||||
<item>动态取色</item>
|
||||
<item>草野</item>
|
||||
<item>黑白</item>
|
||||
</string-array>
|
||||
|
||||
|
||||
<string-array name="NavBarColors">
|
||||
<item>Auto</item>
|
||||
<item>Black</item>
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
|
||||
<!-- GR Theme-->
|
||||
<color name="md_theme_primary">#4C662B</color>
|
||||
<color name="md_theme_onPrimary">#FFFFFF</color>
|
||||
<color name="md_theme_primaryContainer">#CDEDA3</color>
|
||||
@@ -48,100 +49,56 @@
|
||||
<color name="md_theme_surfaceContainer">#EEEFE3</color>
|
||||
<color name="md_theme_surfaceContainerHigh">#E8E9DE</color>
|
||||
<color name="md_theme_surfaceContainerHighest">#E2E3D8</color>
|
||||
<color name="md_theme_primary_mediumContrast">#253D05</color>
|
||||
<color name="md_theme_onPrimary_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_primaryContainer_mediumContrast">#5A7539</color>
|
||||
<color name="md_theme_onPrimaryContainer_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_secondary_mediumContrast">#303924</color>
|
||||
<color name="md_theme_onSecondary_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_secondaryContainer_mediumContrast">#667157</color>
|
||||
<color name="md_theme_onSecondaryContainer_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_tertiary_mediumContrast">#083D3A</color>
|
||||
<color name="md_theme_onTertiary_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_tertiaryContainer_mediumContrast">#477572</color>
|
||||
<color name="md_theme_onTertiaryContainer_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_error_mediumContrast">#740006</color>
|
||||
<color name="md_theme_onError_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_errorContainer_mediumContrast">#CF2C27</color>
|
||||
<color name="md_theme_onErrorContainer_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_background_mediumContrast">#F9FAEF</color>
|
||||
<color name="md_theme_onBackground_mediumContrast">#1A1C16</color>
|
||||
<color name="md_theme_surface_mediumContrast">#F9FAEF</color>
|
||||
<color name="md_theme_onSurface_mediumContrast">#0F120C</color>
|
||||
<color name="md_theme_surfaceVariant_mediumContrast">#E1E4D5</color>
|
||||
<color name="md_theme_onSurfaceVariant_mediumContrast">#34382D</color>
|
||||
<color name="md_theme_outline_mediumContrast">#505449</color>
|
||||
<color name="md_theme_outlineVariant_mediumContrast">#6B6F62</color>
|
||||
<color name="md_theme_scrim_mediumContrast">#000000</color>
|
||||
<color name="md_theme_inverseSurface_mediumContrast">#2F312A</color>
|
||||
<color name="md_theme_inverseOnSurface_mediumContrast">#F1F2E6</color>
|
||||
<color name="md_theme_inversePrimary_mediumContrast">#B1D18A</color>
|
||||
<color name="md_theme_primaryFixed_mediumContrast">#5A7539</color>
|
||||
<color name="md_theme_onPrimaryFixed_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_primaryFixedDim_mediumContrast">#425C23</color>
|
||||
<color name="md_theme_onPrimaryFixedVariant_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_secondaryFixed_mediumContrast">#667157</color>
|
||||
<color name="md_theme_onSecondaryFixed_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_secondaryFixedDim_mediumContrast">#4E5840</color>
|
||||
<color name="md_theme_onSecondaryFixedVariant_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_tertiaryFixed_mediumContrast">#477572</color>
|
||||
<color name="md_theme_onTertiaryFixed_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_tertiaryFixedDim_mediumContrast">#2E5C59</color>
|
||||
<color name="md_theme_onTertiaryFixedVariant_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_surfaceDim_mediumContrast">#C6C7BD</color>
|
||||
<color name="md_theme_surfaceBright_mediumContrast">#F9FAEF</color>
|
||||
<color name="md_theme_surfaceContainerLowest_mediumContrast">#FFFFFF</color>
|
||||
<color name="md_theme_surfaceContainerLow_mediumContrast">#F3F4E9</color>
|
||||
<color name="md_theme_surfaceContainer_mediumContrast">#E8E9DE</color>
|
||||
<color name="md_theme_surfaceContainerHigh_mediumContrast">#DCDED3</color>
|
||||
<color name="md_theme_surfaceContainerHighest_mediumContrast">#D1D3C8</color>
|
||||
<color name="md_theme_primary_highContrast">#1C3200</color>
|
||||
<color name="md_theme_onPrimary_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_primaryContainer_highContrast">#375018</color>
|
||||
<color name="md_theme_onPrimaryContainer_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_secondary_highContrast">#262F1A</color>
|
||||
<color name="md_theme_onSecondary_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_secondaryContainer_highContrast">#434C35</color>
|
||||
<color name="md_theme_onSecondaryContainer_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_tertiary_highContrast">#003230</color>
|
||||
<color name="md_theme_onTertiary_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_tertiaryContainer_highContrast">#21504E</color>
|
||||
<color name="md_theme_onTertiaryContainer_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_error_highContrast">#600004</color>
|
||||
<color name="md_theme_onError_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_errorContainer_highContrast">#98000A</color>
|
||||
<color name="md_theme_onErrorContainer_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_background_highContrast">#F9FAEF</color>
|
||||
<color name="md_theme_onBackground_highContrast">#1A1C16</color>
|
||||
<color name="md_theme_surface_highContrast">#F9FAEF</color>
|
||||
<color name="md_theme_onSurface_highContrast">#000000</color>
|
||||
<color name="md_theme_surfaceVariant_highContrast">#E1E4D5</color>
|
||||
<color name="md_theme_onSurfaceVariant_highContrast">#000000</color>
|
||||
<color name="md_theme_outline_highContrast">#2A2D24</color>
|
||||
<color name="md_theme_outlineVariant_highContrast">#474B40</color>
|
||||
<color name="md_theme_scrim_highContrast">#000000</color>
|
||||
<color name="md_theme_inverseSurface_highContrast">#2F312A</color>
|
||||
<color name="md_theme_inverseOnSurface_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_inversePrimary_highContrast">#B1D18A</color>
|
||||
<color name="md_theme_primaryFixed_highContrast">#375018</color>
|
||||
<color name="md_theme_onPrimaryFixed_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_primaryFixedDim_highContrast">#213903</color>
|
||||
<color name="md_theme_onPrimaryFixedVariant_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_secondaryFixed_highContrast">#434C35</color>
|
||||
<color name="md_theme_onSecondaryFixed_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_secondaryFixedDim_highContrast">#2C3620</color>
|
||||
<color name="md_theme_onSecondaryFixedVariant_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_tertiaryFixed_highContrast">#21504E</color>
|
||||
<color name="md_theme_onTertiaryFixed_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_tertiaryFixedDim_highContrast">#033937</color>
|
||||
<color name="md_theme_onTertiaryFixedVariant_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_surfaceDim_highContrast">#B8BAAF</color>
|
||||
<color name="md_theme_surfaceBright_highContrast">#F9FAEF</color>
|
||||
<color name="md_theme_surfaceContainerLowest_highContrast">#FFFFFF</color>
|
||||
<color name="md_theme_surfaceContainerLow_highContrast">#F1F2E6</color>
|
||||
<color name="md_theme_surfaceContainer_highContrast">#E2E3D8</color>
|
||||
<color name="md_theme_surfaceContainerHigh_highContrast">#D4D5CA</color>
|
||||
<color name="md_theme_surfaceContainerHighest_highContrast">#C6C7BD</color>
|
||||
|
||||
<!-- While Theme-->
|
||||
<color name="wh_theme_primary">#5C5C5C</color>
|
||||
<color name="wh_theme_onPrimary">#FFFFFF</color>
|
||||
<color name="wh_theme_primaryContainer">#747474</color>
|
||||
<color name="wh_theme_onPrimaryContainer">#FEFCFC</color>
|
||||
<color name="wh_theme_secondary">#5F5E5E</color>
|
||||
<color name="wh_theme_onSecondary">#FFFFFF</color>
|
||||
<color name="wh_theme_secondaryContainer">#E2DFDE</color>
|
||||
<color name="wh_theme_onSecondaryContainer">#636262</color>
|
||||
<color name="wh_theme_tertiary">#5E5B5D</color>
|
||||
<color name="wh_theme_onTertiary">#FFFFFF</color>
|
||||
<color name="wh_theme_tertiaryContainer">#777375</color>
|
||||
<color name="wh_theme_onTertiaryContainer">#FFFBFF</color>
|
||||
<color name="wh_theme_error">#BA1A1A</color>
|
||||
<color name="wh_theme_onError">#FFFFFF</color>
|
||||
<color name="wh_theme_errorContainer">#FFDAD6</color>
|
||||
<color name="wh_theme_onErrorContainer">#93000A</color>
|
||||
<color name="wh_theme_background">#FCF8F8</color>
|
||||
<color name="wh_theme_onBackground">#1C1B1B</color>
|
||||
<color name="wh_theme_surface">#FCF8F8</color>
|
||||
<color name="wh_theme_onSurface">#1C1B1B</color>
|
||||
<color name="wh_theme_surfaceVariant">#E0E3E3</color>
|
||||
<color name="wh_theme_onSurfaceVariant">#444748</color>
|
||||
<color name="wh_theme_outline">#747878</color>
|
||||
<color name="wh_theme_outlineVariant">#C4C7C7</color>
|
||||
<color name="wh_theme_scrim">#000000</color>
|
||||
<color name="wh_theme_inverseSurface">#313030</color>
|
||||
<color name="wh_theme_inverseOnSurface">#F4F0EF</color>
|
||||
<color name="wh_theme_inversePrimary">#C7C6C6</color>
|
||||
<color name="wh_theme_primaryFixed">#E3E2E2</color>
|
||||
<color name="wh_theme_onPrimaryFixed">#1B1C1C</color>
|
||||
<color name="wh_theme_primaryFixedDim">#C7C6C6</color>
|
||||
<color name="wh_theme_onPrimaryFixedVariant">#464747</color>
|
||||
<color name="wh_theme_secondaryFixed">#E5E2E1</color>
|
||||
<color name="wh_theme_onSecondaryFixed">#1B1C1C</color>
|
||||
<color name="wh_theme_secondaryFixedDim">#C8C6C5</color>
|
||||
<color name="wh_theme_onSecondaryFixedVariant">#474746</color>
|
||||
<color name="wh_theme_tertiaryFixed">#E7E1E3</color>
|
||||
<color name="wh_theme_onTertiaryFixed">#1D1B1D</color>
|
||||
<color name="wh_theme_tertiaryFixedDim">#CBC5C7</color>
|
||||
<color name="wh_theme_onTertiaryFixedVariant">#494648</color>
|
||||
<color name="wh_theme_surfaceDim">#DDD9D8</color>
|
||||
<color name="wh_theme_surfaceBright">#FCF8F8</color>
|
||||
<color name="wh_theme_surfaceContainerLowest">#FFFFFF</color>
|
||||
<color name="wh_theme_surfaceContainerLow">#F7F3F2</color>
|
||||
<color name="wh_theme_surfaceContainer">#F1EDEC</color>
|
||||
<color name="wh_theme_surfaceContainerHigh">#EBE7E7</color>
|
||||
<color name="wh_theme_surfaceContainerHighest">#E5E2E1</color>
|
||||
|
||||
|
||||
<color name="disabled">@color/md_light_disabled</color>
|
||||
|
||||
|
||||
@@ -1219,4 +1219,5 @@
|
||||
<string name="hide_manga_title">隐藏漫画列表标题</string>
|
||||
<string name="refresh_explore">刷新发现</string>
|
||||
<string name="ungroup">未分组</string>
|
||||
<string name="dynamic_colors">动态取色</string>
|
||||
</resources>
|
||||
|
||||
@@ -1,200 +0,0 @@
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
//**************************************************************Theme******************************************************************************//
|
||||
|
||||
<!-- 亮色主题 -->
|
||||
<style name="AppTheme.Light" parent="Base.AppTheme">
|
||||
<item name="actionBarStyle">@style/AppTheme.AppBarOverlay.Light</item>
|
||||
</style>
|
||||
|
||||
<!-- 暗色主题 -->
|
||||
<style name="AppTheme.Dark" parent="Base.AppTheme">
|
||||
<item name="actionBarStyle">@style/AppTheme.AppBarOverlay.Dark</item>
|
||||
</style>
|
||||
|
||||
<!-- 透明主题 -->
|
||||
<style name="AppTheme.Transparent" parent="Base.AppTheme">
|
||||
<item name="android:windowIsTranslucent">true</item>
|
||||
<item name="android:windowBackground">@android:color/transparent</item>
|
||||
</style>
|
||||
|
||||
<!-- Welcome主题 -->
|
||||
<style name="AppTheme.Welcome" parent="Base.AppTheme">
|
||||
<item name="android:windowNoTitle">true</item>
|
||||
</style>
|
||||
|
||||
<!-- Base application theme. -->
|
||||
<style name="Base.AppTheme" parent="Theme.Material3.DayNight.NoActionBar">
|
||||
<item name="colorPrimary">@color/md_theme_primary</item>
|
||||
<item name="colorOnPrimary">@color/md_theme_onPrimary</item>
|
||||
<item name="colorPrimaryContainer">@color/md_theme_primaryContainer</item>
|
||||
<item name="colorOnPrimaryContainer">@color/md_theme_onPrimaryContainer</item>
|
||||
<item name="colorSecondary">@color/md_theme_secondary</item>
|
||||
<item name="colorOnSecondary">@color/md_theme_onSecondary</item>
|
||||
<item name="colorSecondaryContainer">@color/md_theme_secondaryContainer</item>
|
||||
<item name="colorOnSecondaryContainer">@color/md_theme_onSecondaryContainer</item>
|
||||
<item name="colorTertiary">@color/md_theme_tertiary</item>
|
||||
<item name="colorOnTertiary">@color/md_theme_onTertiary</item>
|
||||
<item name="colorTertiaryContainer">@color/md_theme_tertiaryContainer</item>
|
||||
<item name="colorOnTertiaryContainer">@color/md_theme_onTertiaryContainer</item>
|
||||
<item name="colorError">@color/md_theme_error</item>
|
||||
<item name="colorOnError">@color/md_theme_onError</item>
|
||||
<item name="colorErrorContainer">@color/md_theme_errorContainer</item>
|
||||
<item name="colorOnErrorContainer">@color/md_theme_onErrorContainer</item>
|
||||
<item name="android:colorBackground">@color/md_theme_background</item>
|
||||
<item name="colorOnBackground">@color/md_theme_onBackground</item>
|
||||
<item name="colorSurface">@color/md_theme_surface</item>
|
||||
<item name="colorOnSurface">@color/md_theme_onSurface</item>
|
||||
<item name="colorSurfaceVariant">@color/md_theme_surfaceVariant</item>
|
||||
<item name="colorOnSurfaceVariant">@color/md_theme_onSurfaceVariant</item>
|
||||
<item name="colorOutline">@color/md_theme_outline</item>
|
||||
<item name="colorOutlineVariant">@color/md_theme_outlineVariant</item>
|
||||
<item name="colorSurfaceInverse">@color/md_theme_inverseSurface</item>
|
||||
<item name="colorOnSurfaceInverse">@color/md_theme_inverseOnSurface</item>
|
||||
<item name="colorPrimaryInverse">@color/md_theme_inversePrimary</item>
|
||||
<item name="colorPrimaryFixed">@color/md_theme_primaryFixed</item>
|
||||
<item name="colorOnPrimaryFixed">@color/md_theme_onPrimaryFixed</item>
|
||||
<item name="colorPrimaryFixedDim">@color/md_theme_primaryFixedDim</item>
|
||||
<item name="colorOnPrimaryFixedVariant">@color/md_theme_onPrimaryFixedVariant</item>
|
||||
<item name="colorSecondaryFixed">@color/md_theme_secondaryFixed</item>
|
||||
<item name="colorOnSecondaryFixed">@color/md_theme_onSecondaryFixed</item>
|
||||
<item name="colorSecondaryFixedDim">@color/md_theme_secondaryFixedDim</item>
|
||||
<item name="colorOnSecondaryFixedVariant">@color/md_theme_onSecondaryFixedVariant</item>
|
||||
<item name="colorTertiaryFixed">@color/md_theme_tertiaryFixed</item>
|
||||
<item name="colorOnTertiaryFixed">@color/md_theme_onTertiaryFixed</item>
|
||||
<item name="colorTertiaryFixedDim">@color/md_theme_tertiaryFixedDim</item>
|
||||
<item name="colorOnTertiaryFixedVariant">@color/md_theme_onTertiaryFixedVariant</item>
|
||||
<item name="colorSurfaceDim">@color/md_theme_surfaceDim</item>
|
||||
<item name="colorSurfaceBright">@color/md_theme_surfaceBright</item>
|
||||
<item name="colorSurfaceContainerLowest">@color/md_theme_surfaceContainerLowest</item>
|
||||
<item name="colorSurfaceContainerLow">@color/md_theme_surfaceContainerLow</item>
|
||||
<item name="colorSurfaceContainer">@color/md_theme_surfaceContainer</item>
|
||||
<item name="colorSurfaceContainerHigh">@color/md_theme_surfaceContainerHigh</item>
|
||||
<item name="colorSurfaceContainerHighest">@color/md_theme_surfaceContainerHighest</item>
|
||||
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
|
||||
<item name="android:windowLightStatusBar">true</item>
|
||||
<item name="tabStyle">@style/Widget.App.TabLayout</item>
|
||||
</style>
|
||||
|
||||
<style name="Widget.App.TabLayout" parent="Widget.Material3.TabLayout">
|
||||
<item name="tabBackground">@android:color/transparent</item>
|
||||
<item name="tabIndicator">@drawable/selected_chip_background</item>
|
||||
<item name="tabIndicatorColor">?attr/colorSecondaryContainer</item>
|
||||
<item name="tabIndicatorFullWidth">true</item>
|
||||
<item name="tabIndicatorGravity">stretch</item>
|
||||
<item name="tabMinWidth">0dp</item>
|
||||
<item name="tabMode">scrollable</item>
|
||||
<item name="tabGravity">start</item>
|
||||
<item name="tabPaddingEnd">12dp</item>
|
||||
<item name="tabPaddingStart">12dp</item>
|
||||
<item name="tabRippleColor">@android:color/transparent</item>
|
||||
<item name="tabSelectedTextColor">?attr/colorOnSecondaryContainer</item>
|
||||
<item name="tabTextColor">?attr/colorOnSurfaceVariant</item>
|
||||
<item name="tabTextAppearance">@style/TabTextAppearance</item>
|
||||
</style>
|
||||
|
||||
<style name="TabTextAppearance" parent="TextAppearance.Design.Tab">
|
||||
<item name="textAllCaps">false</item>
|
||||
<item name="android:textAllCaps">false</item>
|
||||
<item name="android:textSize">15sp</item>
|
||||
<item name="android:textFontWeight" tools:targetApi="p">500</item>
|
||||
</style>
|
||||
|
||||
<style name="PreferenceDialogTheme" parent="Theme.Material3.DayNight">
|
||||
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.AppBarOverlay.Light" parent="ThemeOverlay.Material3.Light">
|
||||
<item name="android:windowLightStatusBar">true</item>
|
||||
</style>
|
||||
|
||||
<style name="AppTheme.AppBarOverlay.Dark" parent="ThemeOverlay.Material3.Dark">
|
||||
<item name="android:windowLightStatusBar">false</item>
|
||||
</style>
|
||||
|
||||
<style name="ChapterNameText">
|
||||
<item name="android:textSize">16sp</item>
|
||||
<item name="android:textStyle">bold</item>
|
||||
<item name="android:paddingBottom">4dp</item>
|
||||
<item name="android:maxLines">2</item>
|
||||
</style>
|
||||
|
||||
|
||||
//**********System Style******************//
|
||||
|
||||
<style name="Style.NavigationView" parent="android:Widget">
|
||||
|
||||
</style>
|
||||
|
||||
<style name="Style.Toolbar.NoPadding" parent="Base.Widget.AppCompat.Toolbar">
|
||||
|
||||
</style>
|
||||
|
||||
<style name="Style.MenuItemText" parent="TextAppearance.Material3.BodyLarge">
|
||||
|
||||
</style>
|
||||
|
||||
<!-- <style name="Style.PopupMenu" parent="Widget.Material3.PopupMenu.ListPopupWindow">-->
|
||||
<!--<!– <item name="android:popupBackground">@drawable/bg_popup_menu</item>–>-->
|
||||
<!-- <item name="android:radius">30dp</item>-->
|
||||
<!-- </style>-->
|
||||
|
||||
|
||||
<style name="Activity.Permission" parent="Theme.Material3.DayNight.NoActionBar">
|
||||
<item name="android:windowBackground">@android:color/transparent</item>
|
||||
<item name="android:windowDisablePreview">true</item>
|
||||
<item name="android:windowIsTranslucent">true</item>
|
||||
<item name="android:windowTranslucentStatus">true</item>
|
||||
<item name="android:windowAnimationStyle">@null</item>
|
||||
</style>
|
||||
|
||||
<style name="ToolbarTitle" parent="@style/TextAppearance.Material3.ActionBar.Title">
|
||||
|
||||
</style>
|
||||
|
||||
//*******************Widget Style**********************************//
|
||||
|
||||
<style name="Style.Shadow.Top" parent="android:Widget">
|
||||
<item name="android:layout_width">match_parent</item>
|
||||
<item name="android:layout_height">@dimen/shadow_height</item>
|
||||
<item name="android:background">@drawable/bg_shadow_top</item>
|
||||
</style>
|
||||
|
||||
<style name="Style.Shadow.Bottom" parent="android:Widget">
|
||||
<item name="android:layout_width">match_parent</item>
|
||||
<item name="android:layout_height">@dimen/shadow_height</item>
|
||||
<item name="android:background">@drawable/bg_shadow_bottom</item>
|
||||
</style>
|
||||
|
||||
|
||||
<style name="Style.Line" parent="android:Widget">
|
||||
<item name="android:layout_width">match_parent</item>
|
||||
<item name="android:layout_height">0.5dp</item>
|
||||
<item name="android:background">@color/divider</item>
|
||||
</style>
|
||||
|
||||
<style name="Style.Text.Primary.Normal" parent="android:Widget">
|
||||
<item name="android:layout_width">match_parent</item>
|
||||
<item name="android:layout_height">wrap_content</item>
|
||||
<item name="android:textSize">@dimen/font_size_normal</item>
|
||||
<item name="android:textColor">#000</item>
|
||||
<item name="android:includeFontPadding">false</item>
|
||||
</style>
|
||||
|
||||
<style name="Style.Text.Primary.Normal.Wrap">
|
||||
<item name="android:layout_width">wrap_content</item>
|
||||
</style>
|
||||
|
||||
<style name="Style.Text.Second.Normal" parent="android:Widget">
|
||||
<item name="android:layout_width">match_parent</item>
|
||||
<item name="android:layout_height">wrap_content</item>
|
||||
<item name="android:textSize">@dimen/font_size_normal</item>
|
||||
<item name="android:textColor">#676767</item>
|
||||
<item name="android:includeFontPadding">false</item>
|
||||
</style>
|
||||
|
||||
<style name="Style.Text.Second.Normal.Wrap">
|
||||
<item name="android:layout_width">wrap_content</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
@@ -0,0 +1,132 @@
|
||||
<resources xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
//**************************************************************Theme******************************************************************************//
|
||||
|
||||
<!-- 亮色主题 -->
|
||||
<style name="AppTheme.Light" parent="Base.AppTheme">
|
||||
<item name="android:windowLightStatusBar">true</item>
|
||||
</style>
|
||||
|
||||
<!-- 暗色主题 -->
|
||||
<style name="AppTheme.Dark" parent="Base.AppTheme">
|
||||
<item name="android:windowLightStatusBar">false</item>
|
||||
</style>
|
||||
|
||||
<!-- 透明主题 -->
|
||||
<style name="AppTheme.Transparent" parent="Base.AppTheme">
|
||||
<item name="android:windowIsTranslucent">true</item>
|
||||
<item name="android:windowBackground">@android:color/transparent</item>
|
||||
</style>
|
||||
|
||||
<!-- Welcome主题 -->
|
||||
<style name="AppTheme.Welcome" parent="Base.AppTheme">
|
||||
<item name="android:windowNoTitle">true</item>
|
||||
</style>
|
||||
|
||||
<style name="Base.AppTheme" parent="Theme.Material3.DynamicColors.DayNight.NoActionBar">
|
||||
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
|
||||
<item name="android:windowLightStatusBar">true</item>
|
||||
<item name="tabStyle">@style/Widget.App.TabLayout</item>
|
||||
<item name="popupMenuBackground">@drawable/popup_background</item>
|
||||
<item name="alertDialogTheme">@style/AppTheme.AlertDialog</item>
|
||||
</style>
|
||||
|
||||
<style name="Theme.Base.GR" parent="Base.AppTheme">
|
||||
<item name="colorPrimary">@color/md_theme_primary</item>
|
||||
<item name="colorOnPrimary">@color/md_theme_onPrimary</item>
|
||||
<item name="colorPrimaryContainer">@color/md_theme_primaryContainer</item>
|
||||
<item name="colorOnPrimaryContainer">@color/md_theme_onPrimaryContainer</item>
|
||||
<item name="colorSecondary">@color/md_theme_secondary</item>
|
||||
<item name="colorOnSecondary">@color/md_theme_onSecondary</item>
|
||||
<item name="colorSecondaryContainer">@color/md_theme_secondaryContainer</item>
|
||||
<item name="colorOnSecondaryContainer">@color/md_theme_onSecondaryContainer</item>
|
||||
<item name="colorTertiary">@color/md_theme_tertiary</item>
|
||||
<item name="colorOnTertiary">@color/md_theme_onTertiary</item>
|
||||
<item name="colorTertiaryContainer">@color/md_theme_tertiaryContainer</item>
|
||||
<item name="colorOnTertiaryContainer">@color/md_theme_onTertiaryContainer</item>
|
||||
<item name="colorError">@color/md_theme_error</item>
|
||||
<item name="colorOnError">@color/md_theme_onError</item>
|
||||
<item name="colorErrorContainer">@color/md_theme_errorContainer</item>
|
||||
<item name="colorOnErrorContainer">@color/md_theme_onErrorContainer</item>
|
||||
<item name="android:colorBackground">@color/md_theme_background</item>
|
||||
<item name="colorOnBackground">@color/md_theme_onBackground</item>
|
||||
<item name="colorSurface">@color/md_theme_surface</item>
|
||||
<item name="colorOnSurface">@color/md_theme_onSurface</item>
|
||||
<item name="colorSurfaceVariant">@color/md_theme_surfaceVariant</item>
|
||||
<item name="colorOnSurfaceVariant">@color/md_theme_onSurfaceVariant</item>
|
||||
<item name="colorOutline">@color/md_theme_outline</item>
|
||||
<item name="colorOutlineVariant">@color/md_theme_outlineVariant</item>
|
||||
<item name="colorSurfaceInverse">@color/md_theme_inverseSurface</item>
|
||||
<item name="colorOnSurfaceInverse">@color/md_theme_inverseOnSurface</item>
|
||||
<item name="colorPrimaryInverse">@color/md_theme_inversePrimary</item>
|
||||
<item name="colorPrimaryFixed">@color/md_theme_primaryFixed</item>
|
||||
<item name="colorOnPrimaryFixed">@color/md_theme_onPrimaryFixed</item>
|
||||
<item name="colorPrimaryFixedDim">@color/md_theme_primaryFixedDim</item>
|
||||
<item name="colorOnPrimaryFixedVariant">@color/md_theme_onPrimaryFixedVariant</item>
|
||||
<item name="colorSecondaryFixed">@color/md_theme_secondaryFixed</item>
|
||||
<item name="colorOnSecondaryFixed">@color/md_theme_onSecondaryFixed</item>
|
||||
<item name="colorSecondaryFixedDim">@color/md_theme_secondaryFixedDim</item>
|
||||
<item name="colorOnSecondaryFixedVariant">@color/md_theme_onSecondaryFixedVariant</item>
|
||||
<item name="colorTertiaryFixed">@color/md_theme_tertiaryFixed</item>
|
||||
<item name="colorOnTertiaryFixed">@color/md_theme_onTertiaryFixed</item>
|
||||
<item name="colorTertiaryFixedDim">@color/md_theme_tertiaryFixedDim</item>
|
||||
<item name="colorOnTertiaryFixedVariant">@color/md_theme_onTertiaryFixedVariant</item>
|
||||
<item name="colorSurfaceDim">@color/md_theme_surfaceDim</item>
|
||||
<item name="colorSurfaceBright">@color/md_theme_surfaceBright</item>
|
||||
<item name="colorSurfaceContainerLowest">@color/md_theme_surfaceContainerLowest</item>
|
||||
<item name="colorSurfaceContainerLow">@color/md_theme_surfaceContainerLow</item>
|
||||
<item name="colorSurfaceContainer">@color/md_theme_surfaceContainer</item>
|
||||
<item name="colorSurfaceContainerHigh">@color/md_theme_surfaceContainerHigh</item>
|
||||
<item name="colorSurfaceContainerHighest">@color/md_theme_surfaceContainerHighest</item>
|
||||
</style>
|
||||
|
||||
<style name="Theme.Base.WH" parent="Base.AppTheme">
|
||||
<item name="colorPrimary">@color/wh_theme_primary</item>
|
||||
<item name="colorOnPrimary">@color/wh_theme_onPrimary</item>
|
||||
<item name="colorPrimaryContainer">@color/wh_theme_primaryContainer</item>
|
||||
<item name="colorOnPrimaryContainer">@color/wh_theme_onPrimaryContainer</item>
|
||||
<item name="colorSecondary">@color/wh_theme_secondary</item>
|
||||
<item name="colorOnSecondary">@color/wh_theme_onSecondary</item>
|
||||
<item name="colorSecondaryContainer">@color/wh_theme_secondaryContainer</item>
|
||||
<item name="colorOnSecondaryContainer">@color/wh_theme_onSecondaryContainer</item>
|
||||
<item name="colorTertiary">@color/wh_theme_tertiary</item>
|
||||
<item name="colorOnTertiary">@color/wh_theme_onTertiary</item>
|
||||
<item name="colorTertiaryContainer">@color/wh_theme_tertiaryContainer</item>
|
||||
<item name="colorOnTertiaryContainer">@color/wh_theme_onTertiaryContainer</item>
|
||||
<item name="colorError">@color/wh_theme_error</item>
|
||||
<item name="colorOnError">@color/wh_theme_onError</item>
|
||||
<item name="colorErrorContainer">@color/wh_theme_errorContainer</item>
|
||||
<item name="colorOnErrorContainer">@color/wh_theme_onErrorContainer</item>
|
||||
<item name="android:colorBackground">@color/wh_theme_background</item>
|
||||
<item name="colorOnBackground">@color/wh_theme_onBackground</item>
|
||||
<item name="colorSurface">@color/wh_theme_surface</item>
|
||||
<item name="colorOnSurface">@color/wh_theme_onSurface</item>
|
||||
<item name="colorSurfaceVariant">@color/wh_theme_surfaceVariant</item>
|
||||
<item name="colorOnSurfaceVariant">@color/wh_theme_onSurfaceVariant</item>
|
||||
<item name="colorOutline">@color/wh_theme_outline</item>
|
||||
<item name="colorOutlineVariant">@color/wh_theme_outlineVariant</item>
|
||||
<item name="colorSurfaceInverse">@color/wh_theme_inverseSurface</item>
|
||||
<item name="colorOnSurfaceInverse">@color/wh_theme_inverseOnSurface</item>
|
||||
<item name="colorPrimaryInverse">@color/wh_theme_inversePrimary</item>
|
||||
<item name="colorPrimaryFixed">@color/wh_theme_primaryFixed</item>
|
||||
<item name="colorOnPrimaryFixed">@color/wh_theme_onPrimaryFixed</item>
|
||||
<item name="colorPrimaryFixedDim">@color/wh_theme_primaryFixedDim</item>
|
||||
<item name="colorOnPrimaryFixedVariant">@color/wh_theme_onPrimaryFixedVariant</item>
|
||||
<item name="colorSecondaryFixed">@color/wh_theme_secondaryFixed</item>
|
||||
<item name="colorOnSecondaryFixed">@color/wh_theme_onSecondaryFixed</item>
|
||||
<item name="colorSecondaryFixedDim">@color/wh_theme_secondaryFixedDim</item>
|
||||
<item name="colorOnSecondaryFixedVariant">@color/wh_theme_onSecondaryFixedVariant</item>
|
||||
<item name="colorTertiaryFixed">@color/wh_theme_tertiaryFixed</item>
|
||||
<item name="colorOnTertiaryFixed">@color/wh_theme_onTertiaryFixed</item>
|
||||
<item name="colorTertiaryFixedDim">@color/wh_theme_tertiaryFixedDim</item>
|
||||
<item name="colorOnTertiaryFixedVariant">@color/wh_theme_onTertiaryFixedVariant</item>
|
||||
<item name="colorSurfaceDim">@color/wh_theme_surfaceDim</item>
|
||||
<item name="colorSurfaceBright">@color/wh_theme_surfaceBright</item>
|
||||
<item name="colorSurfaceContainerLowest">@color/wh_theme_surfaceContainerLowest</item>
|
||||
<item name="colorSurfaceContainerLow">@color/wh_theme_surfaceContainerLow</item>
|
||||
<item name="colorSurfaceContainer">@color/wh_theme_surfaceContainer</item>
|
||||
<item name="colorSurfaceContainerHigh">@color/wh_theme_surfaceContainerHigh</item>
|
||||
<item name="colorSurfaceContainerHighest">@color/wh_theme_surfaceContainerHighest</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
@@ -2,14 +2,22 @@
|
||||
<androidx.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<io.legato.kazusa.lib.prefs.NameListPreference
|
||||
|
||||
<io.legato.kazusa.lib.prefs.ThemeModePreference
|
||||
android:defaultValue="0"
|
||||
android:entries="@array/theme_mode"
|
||||
android:entryValues="@array/theme_mode_v"
|
||||
android:key="themeMode"
|
||||
android:summary="@string/theme_mode_desc"
|
||||
android:title="@string/theme_mode"
|
||||
app:iconSpaceReserved="false" />
|
||||
android:summary="切换浅色/深色/跟随系统" />
|
||||
|
||||
<ListPreference
|
||||
android:key="app_theme"
|
||||
android:title="应用主题"
|
||||
android:summary="喵喵喵"
|
||||
android:entries="@array/themes_item"
|
||||
android:entryValues="@array/themes_value"
|
||||
android:defaultValue="0" />
|
||||
|
||||
<io.legato.kazusa.lib.prefs.IconListPreference
|
||||
android:defaultValue="ic_launcher"
|
||||
@@ -26,7 +34,6 @@
|
||||
android:title="@string/welcome_style"
|
||||
android:summary="@string/welcome_style_summary" />
|
||||
|
||||
|
||||
<io.legato.kazusa.lib.prefs.Preference
|
||||
android:key="fontScale"
|
||||
android:summary="@string/font_scale_summary"
|
||||
|
||||
Reference in New Issue
Block a user