diff --git a/app/src/main/java/io/legato/kazusa/lib/prefs/ThemeCardPreference.kt b/app/src/main/java/io/legato/kazusa/lib/prefs/ThemeCardPreference.kt index 459fe11ea..eb7d525f8 100644 --- a/app/src/main/java/io/legato/kazusa/lib/prefs/ThemeCardPreference.kt +++ b/app/src/main/java/io/legato/kazusa/lib/prefs/ThemeCardPreference.kt @@ -18,8 +18,12 @@ import androidx.recyclerview.widget.RecyclerView import com.google.android.material.card.MaterialCardView import io.legato.kazusa.R import io.legato.kazusa.constant.EventBus +import io.legato.kazusa.constant.PreferKey +import io.legato.kazusa.utils.getPrefString import io.legato.kazusa.utils.postEvent import io.legato.kazusa.utils.restart +import io.legato.kazusa.utils.toastOnUi +import splitties.init.appCtx @SuppressLint("ResourceType") class ThemeCardPreference(context: Context, attrs: AttributeSet) : Preference(context, attrs) { @@ -76,6 +80,14 @@ class ThemeCardPreference(context: Context, attrs: AttributeSet) : Preference(co holder.card.setOnClickListener { if (value != currentValue) { + if (value == "12") { + val hasLightBg = !appCtx.getPrefString(PreferKey.bgImage).isNullOrEmpty() + val hasDarkBg = !appCtx.getPrefString(PreferKey.bgImageN).isNullOrEmpty() + if (!hasLightBg || !hasDarkBg) { + context.toastOnUi(R.string.transparent_theme_alarm) + return@setOnClickListener + } + } val oldValue = currentValue currentValue = value persistString(value) diff --git a/app/src/main/res/xml/pref_config_theme.xml b/app/src/main/res/xml/pref_config_theme.xml index e4d014960..416574da0 100644 --- a/app/src/main/res/xml/pref_config_theme.xml +++ b/app/src/main/res/xml/pref_config_theme.xml @@ -24,12 +24,6 @@ android:entryValues="@array/themes_value" android:defaultValue="0" /> - -