mirror of
https://github.com/rebelonion/Dantotsu.git
synced 2026-01-19 07:13:56 +00:00
feat: Blur toggle
This commit is contained in:
@@ -1104,13 +1104,19 @@ suspend fun View.pop() {
|
||||
|
||||
fun blurImage(imageView: ImageView, banner: String?){
|
||||
if (banner != null) {
|
||||
val context = imageView.context
|
||||
if (!(context as Activity).isDestroyed)
|
||||
Glide.with(context as Context)
|
||||
.load(GlideUrl(banner))
|
||||
.diskCacheStrategy(DiskCacheStrategy.ALL).override(400)
|
||||
.apply(RequestOptions.bitmapTransform(BlurTransformation(2, 2)))
|
||||
.into(imageView)
|
||||
val radius = PrefManager.getVal<Float>(PrefName.BlurRadius).toInt()
|
||||
val sampling = PrefManager.getVal<Float>(PrefName.BlurSampling).toInt()
|
||||
if (PrefManager.getVal(PrefName.BlurBanners)){
|
||||
val context = imageView.context
|
||||
if (!(context as Activity).isDestroyed)
|
||||
Glide.with(context as Context)
|
||||
.load(GlideUrl(banner))
|
||||
.diskCacheStrategy(DiskCacheStrategy.ALL).override(400)
|
||||
.apply(RequestOptions.bitmapTransform(BlurTransformation(radius, sampling)))
|
||||
.into(imageView)
|
||||
}else{
|
||||
imageView.loadImage(banner)
|
||||
}
|
||||
} else {
|
||||
imageView.setImageResource(R.drawable.linear_gradient_bg)
|
||||
}
|
||||
|
||||
@@ -155,8 +155,7 @@ class MangaPageAdapter : RecyclerView.Adapter<MangaPageAdapter.MangaPageViewHold
|
||||
binding.mangaTrendingViewPager.setPageTransformer(MediaPageTransformer())
|
||||
trendHandler = Handler(Looper.getMainLooper())
|
||||
trendRun = Runnable {
|
||||
binding.mangaTrendingViewPager.currentItem =
|
||||
binding.mangaTrendingViewPager.currentItem + 1
|
||||
binding.mangaTrendingViewPager.currentItem += 1
|
||||
}
|
||||
binding.mangaTrendingViewPager.registerOnPageChangeCallback(
|
||||
object : ViewPager2.OnPageChangeCallback() {
|
||||
|
||||
@@ -187,15 +187,7 @@ class MediaAdaptor(
|
||||
AccelerateDecelerateInterpolator()
|
||||
)
|
||||
)
|
||||
val banner =
|
||||
if (bannerAnimations) b.itemCompactBanner else b.itemCompactBannerNoKen
|
||||
val context = b.itemCompactBanner.context
|
||||
if (!(context as Activity).isDestroyed)
|
||||
Glide.with(context as Context)
|
||||
.load(GlideUrl(media.banner ?: media.cover))
|
||||
.diskCacheStrategy(DiskCacheStrategy.ALL).override(400)
|
||||
.apply(RequestOptions.bitmapTransform(BlurTransformation(2, 3)))
|
||||
.into(banner)
|
||||
blurImage(b.itemCompactBanner, media.banner ?: media.cover)
|
||||
b.itemCompactOngoing.visibility =
|
||||
if (media.status == currActivity()!!.getString(R.string.status_releasing)) View.VISIBLE else View.GONE
|
||||
b.itemCompactTitle.text = media.userPreferredName
|
||||
@@ -244,15 +236,7 @@ class MediaAdaptor(
|
||||
AccelerateDecelerateInterpolator()
|
||||
)
|
||||
)
|
||||
val banner =
|
||||
if (bannerAnimations) b.itemCompactBanner else b.itemCompactBannerNoKen
|
||||
val context = b.itemCompactBanner.context
|
||||
if (!(context as Activity).isDestroyed)
|
||||
Glide.with(context as Context)
|
||||
.load(GlideUrl(media.banner ?: media.cover))
|
||||
.diskCacheStrategy(DiskCacheStrategy.ALL).override(400)
|
||||
.apply(RequestOptions.bitmapTransform(BlurTransformation(2, 3)))
|
||||
.into(banner)
|
||||
blurImage(b.itemCompactBanner, media.banner ?: media.cover)
|
||||
b.itemCompactOngoing.visibility =
|
||||
if (media.status == currActivity()!!.getString(R.string.status_releasing)) View.VISIBLE else View.GONE
|
||||
b.itemCompactTitle.text = media.userPreferredName
|
||||
|
||||
@@ -96,8 +96,21 @@ class UserInterfaceSettingsActivity : AppCompatActivity() {
|
||||
PrefManager.setVal(PrefName.AnimationSpeed, map[value] ?: 1f)
|
||||
restartApp()
|
||||
}
|
||||
|
||||
|
||||
binding.uiSettingsBlurBanners.isChecked = PrefManager.getVal(PrefName.BlurBanners)
|
||||
binding.uiSettingsBlurBanners.setOnCheckedChangeListener { _, isChecked ->
|
||||
PrefManager.setVal(PrefName.BlurBanners, isChecked)
|
||||
restartApp()
|
||||
}
|
||||
binding.uiSettingsBlurRadius.value = (PrefManager.getVal(PrefName.BlurRadius) as Float)
|
||||
binding.uiSettingsBlurRadius.addOnChangeListener { _, value, _ ->
|
||||
PrefManager.setVal(PrefName.BlurRadius, value)
|
||||
restartApp()
|
||||
}
|
||||
binding.uiSettingsBlurSampling.value = (PrefManager.getVal(PrefName.BlurSampling) as Float)
|
||||
binding.uiSettingsBlurSampling.addOnChangeListener { _, value, _ ->
|
||||
PrefManager.setVal(PrefName.BlurSampling, value)
|
||||
restartApp()
|
||||
}
|
||||
}
|
||||
|
||||
private fun restartApp() {
|
||||
|
||||
@@ -47,6 +47,9 @@ enum class PrefName(val data: Pref) { //TODO: Split this into multiple files
|
||||
ShowYtButton(Pref(Location.UI, Boolean::class, true)),
|
||||
AnimeDefaultView(Pref(Location.UI, Int::class, 0)),
|
||||
MangaDefaultView(Pref(Location.UI, Int::class, 0)),
|
||||
BlurBanners(Pref(Location.UI, Boolean::class, true)),
|
||||
BlurRadius(Pref(Location.UI, Float::class, 2f)),
|
||||
BlurSampling(Pref(Location.UI, Float::class, 2f)),
|
||||
ImmersiveMode(Pref(Location.UI, Boolean::class, false)),
|
||||
SmallView(Pref(Location.UI, Boolean::class, true)),
|
||||
DefaultStartUpTab(Pref(Location.UI, Int::class, 1)),
|
||||
|
||||
Reference in New Issue
Block a user