diff --git a/app/src/main/java/io/legato/kazusa/ui/book/read/ReadBookActivity.kt b/app/src/main/java/io/legato/kazusa/ui/book/read/ReadBookActivity.kt index 7e97fe9e5..66be471fe 100644 --- a/app/src/main/java/io/legato/kazusa/ui/book/read/ReadBookActivity.kt +++ b/app/src/main/java/io/legato/kazusa/ui/book/read/ReadBookActivity.kt @@ -253,7 +253,7 @@ class ReadBookActivity : BaseReadBookActivity(), @SuppressLint("ClickableViewAccessibility") override fun onCreate(savedInstanceState: Bundle?) { - if (AppConfig.sharedElementEnterTransitionEnable && savedInstanceState == null) { + if (AppConfig.sharedElementEnterTransitionEnable) { val transform = MaterialContainerTransform().apply { addTarget(binding.rootView) @@ -280,8 +280,7 @@ class ReadBookActivity : BaseReadBookActivity(), override fun onTransitionResume(transition: Transition) {} }) } - } else { - loadBook() + } window.sharedElementReturnTransition = MaterialSharedAxis(MaterialSharedAxis.X, true).apply { @@ -289,6 +288,10 @@ class ReadBookActivity : BaseReadBookActivity(), } super.onCreate(savedInstanceState) + if (savedInstanceState != null && AppConfig.delayBookLoadEnable) { + loadBook() + } + if (AppConfig.sharedElementEnterTransitionEnable) binding.rootView.transitionName = intent.getStringExtra("transitionName") @@ -325,6 +328,13 @@ class ReadBookActivity : BaseReadBookActivity(), } } + override fun onPostCreate(savedInstanceState: Bundle?) { + super.onPostCreate(savedInstanceState) + if (!AppConfig.delayBookLoadEnable || !AppConfig.sharedElementEnterTransitionEnable) { + loadBook() + } + } + override fun onNewIntent(intent: Intent) { super.onNewIntent(intent) viewModel.initData(intent) @@ -440,7 +450,7 @@ class ReadBookActivity : BaseReadBookActivity(), lifecycleScope.launch(Dispatchers.Default) { viewModel.initReadBookConfig(intent) viewModel.initData(intent) - withContext(Dispatchers.Main) { + withContext(Main) { binding.readView.initAfterTransition() justInitData = true } diff --git a/app/src/main/java/io/legato/kazusa/ui/book/read/page/ReadView.kt b/app/src/main/java/io/legato/kazusa/ui/book/read/page/ReadView.kt index 261a745b3..ee87266f9 100644 --- a/app/src/main/java/io/legato/kazusa/ui/book/read/page/ReadView.kt +++ b/app/src/main/java/io/legato/kazusa/ui/book/read/page/ReadView.kt @@ -236,9 +236,10 @@ class ReadView(context: Context, attrs: AttributeSet) : removeCallbacks(longPressRunnable) if (!pressDown) return true pressDown = false - if (!pageDelegate!!.isMoved && !isMove) { + if (pageDelegate?.isMoved == false && !isMove) { if (!longPressed && !pressOnTextSelected) { - if (!curPage.onClick(startX, startY)) { + val handled = curPage.onClick(startX, startY) + if (!handled) { onSingleTapUp() } return true