增加一些蜜汁小动画

This commit is contained in:
HapeLee committed 2025-08-30 01:36:09 +08:00
1 parent 7d76cf3b12
commit 7e26a158e7
20 files changed
+186 -67

No files matched your search

@@ -2,6 +2,7 @@ package io.legato.kazusa.ui.book.info
import android.annotation.SuppressLint
import android.content.Intent
import android.graphics.Color
import android.graphics.RenderEffect
import android.graphics.Shader
import android.net.Uri
@@ -15,6 +16,7 @@ import androidx.activity.result.contract.ActivityResultContracts
import androidx.activity.viewModels
import androidx.core.content.ContextCompat
import androidx.lifecycle.lifecycleScope
import com.google.android.material.transition.platform.MaterialContainerTransform
import io.legato.kazusa.R
import io.legato.kazusa.base.VMBaseActivity
import io.legato.kazusa.constant.BookType
@@ -151,14 +153,23 @@ class BookInfoActivity :
@SuppressLint("PrivateResource")
override fun onCreate(savedInstanceState: Bundle?) {
window.sharedElementEnterTransition = MaterialContainerTransform().apply {
addTarget(binding.ivCover)
duration = 500
scrimColor = Color.TRANSPARENT
fadeMode = MaterialContainerTransform.FADE_MODE_THROUGH
}
window.sharedElementReturnTransition = MaterialContainerTransform().apply {
addTarget(binding.ivCover)
duration = 500
scrimColor = Color.TRANSPARENT
fadeMode = MaterialContainerTransform.FADE_MODE_THROUGH
}
window.sharedElementsUseOverlay = false
super.onCreate(savedInstanceState)
binding.ivCover.transitionName = intent.getStringExtra("transitionName")
setSupportActionBar(binding.topBar)
binding.llRead?.applyNavigationBarMargin()
// binding.refreshLayout?.setColorSchemeColors(accentColor)
// binding.llInfo.setBackgroundColor(backgroundColor)
// binding.flAction.setBackgroundColor(bottomBackground)
//binding.flAction.applyNavigationBarPadding()
binding.btnShelf.text = getString(R.string.remove_from_bookshelf)
binding.tvToc.text = getString(R.string.toc_s, getString(R.string.loading))
@@ -2,6 +2,7 @@ package io.legato.kazusa.ui.book.manga
import android.annotation.SuppressLint
import android.content.Intent
import android.graphics.Color
import android.os.Build
import android.os.Bundle
import android.view.KeyEvent
@@ -21,6 +22,7 @@ import com.bumptech.glide.Glide
import com.bumptech.glide.integration.recyclerview.RecyclerViewPreloader
import com.bumptech.glide.request.target.Target.SIZE_ORIGINAL
import com.bumptech.glide.util.FixedPreloadSizeProvider
import com.google.android.material.transition.platform.MaterialContainerTransform
import io.legato.kazusa.BuildConfig
import io.legato.kazusa.R
import io.legato.kazusa.base.VMBaseActivity
@@ -158,9 +160,21 @@ class ReadMangaActivity : VMBaseActivity<ActivityMangaBinding, ReadMangaViewMode
}
override fun onCreate(savedInstanceState: Bundle?) {
window.sharedElementEnterTransition = MaterialContainerTransform().apply {
addTarget(binding.root)
duration = 500
scrimColor = Color.TRANSPARENT
fadeMode = MaterialContainerTransform.FADE_MODE_THROUGH
}
window.sharedElementReturnTransition = MaterialContainerTransform().apply {
addTarget(binding.root)
duration = 500
scrimColor = Color.TRANSPARENT
fadeMode = MaterialContainerTransform.FADE_MODE_THROUGH
}
upLayoutInDisplayCutoutMode()
super.onCreate(savedInstanceState)
binding.root.transitionName = intent.getStringExtra("transitionName")
ReadManga.register(this)
upSystemUiVisibility(false)
initRecyclerView()
@@ -4,6 +4,7 @@ package io.legato.kazusa.ui.book.read
import android.annotation.SuppressLint
import android.content.Intent
import android.content.res.Configuration
import android.graphics.Color
import android.net.Uri
import android.os.Bundle
import android.os.Looper
@@ -22,6 +23,7 @@ import androidx.appcompat.widget.PopupMenu
import androidx.core.view.get
import androidx.core.view.size
import androidx.lifecycle.lifecycleScope
import com.google.android.material.transition.platform.MaterialContainerTransform
import com.jaredrummler.android.colorpicker.ColorPickerDialogListener
import io.legato.kazusa.BuildConfig
import io.legato.kazusa.R
@@ -259,7 +261,20 @@ class ReadBookActivity : BaseReadBookActivity(),
@SuppressLint("ClickableViewAccessibility")
override fun onCreate(savedInstanceState: Bundle?) {
window.sharedElementEnterTransition = MaterialContainerTransform().apply {
addTarget(binding.rootView)
duration = 500
scrimColor = Color.TRANSPARENT
fadeMode = MaterialContainerTransform.FADE_MODE_THROUGH
}
window.sharedElementReturnTransition = MaterialContainerTransform().apply {
addTarget(binding.rootView)
duration = 500
scrimColor = Color.TRANSPARENT
fadeMode = MaterialContainerTransform.FADE_MODE_THROUGH
}
super.onCreate(savedInstanceState)
binding.rootView.transitionName = intent.getStringExtra("transitionName")
//binding.cursorLeft.setColorFilter(accentColor)
//binding.cursorRight.setColorFilter(accentColor)
binding.cursorLeft.setOnTouchListener(this)
@@ -598,14 +598,18 @@ class ReadMenu @JvmOverloads constructor(
val result = mutableListOf<ToolButton>()
savedList.forEach { (id, enabled) ->
if (enabled) allButtons[id]?.let { result.add(it) }
}
getAllButtons().forEach { btn ->
if (savedList.none { it.first == btn.id }) {
result.add(btn)
if (savedList.isNotEmpty()) {
savedList.forEach { (id, enabled) ->
if (enabled) allButtons[id]?.let { result.add(it) }
}
getAllButtons().forEach { btn ->
if (savedList.none { it.first == btn.id }) {
result.add(btn)
}
}
} else {
result.addAll(getAllButtons().take(5))
}