Change source preference theming fix (#8679)

This commit is contained in:
Ivan Iskandar 2022-12-05 12:10:11 +07:00 committed by GitHub
parent 99a717f849
commit 8945ef8880
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 3 deletions

View file

@ -53,9 +53,6 @@ interface ThemingDelegate {
resIds += R.style.ThemeOverlay_Tachiyomi_Amoled resIds += R.style.ThemeOverlay_Tachiyomi_Amoled
} }
// For source preference theme
resIds += R.style.PreferenceThemeOverlay_Tachiyomi
return resIds return resIds
} }
} }

View file

@ -2,7 +2,9 @@ package eu.kanade.tachiyomi.ui.browse.extension.details
import android.content.Context import android.content.Context
import android.os.Bundle import android.os.Bundle
import android.util.TypedValue
import android.view.View import android.view.View
import androidx.appcompat.view.ContextThemeWrapper
import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
@ -127,6 +129,13 @@ class SourcePreferencesScreen(val sourceId: Long) : Screen {
class SourcePreferencesFragment : PreferenceFragmentCompat() { class SourcePreferencesFragment : PreferenceFragmentCompat() {
override fun getContext(): Context? {
val superCtx = super.getContext() ?: return null
val tv = TypedValue()
superCtx.theme.resolveAttribute(R.attr.preferenceTheme, tv, true)
return ContextThemeWrapper(superCtx, tv.resourceId)
}
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
preferenceScreen = populateScreen() preferenceScreen = populateScreen()
} }