diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9b1949a57..bad45ea16 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -92,7 +92,7 @@
android:windowSoftInputMode="adjustResize" />
(), ListStateHolderListener,
OnListItemClickListener, SectionedSelectionController.Callback {
@@ -74,7 +75,7 @@ class BookmarksFragment : BaseFragment(), ListStateHo
override fun onItemClick(item: Bookmark, view: View) {
if (selectionController?.onItemClick(item.manga, item.pageId) != true) {
val intent = ReaderActivity.newIntent(view.context, item)
- startActivity(intent)
+ startActivity(intent, scaleUpActivityOptionsOf(view).toBundle())
}
}
diff --git a/app/src/main/java/org/koitharu/kotatsu/details/ui/ChaptersFragment.kt b/app/src/main/java/org/koitharu/kotatsu/details/ui/ChaptersFragment.kt
index 0fb3dce40..c0e5328ac 100644
--- a/app/src/main/java/org/koitharu/kotatsu/details/ui/ChaptersFragment.kt
+++ b/app/src/main/java/org/koitharu/kotatsu/details/ui/ChaptersFragment.kt
@@ -1,6 +1,5 @@
package org.koitharu.kotatsu.details.ui
-import android.app.ActivityOptions
import android.os.Bundle
import android.view.*
import android.widget.AdapterView
@@ -30,7 +29,7 @@ import org.koitharu.kotatsu.reader.ui.ReaderActivity
import org.koitharu.kotatsu.reader.ui.ReaderState
import org.koitharu.kotatsu.utils.RecyclerViewScrollCallback
import org.koitharu.kotatsu.utils.ext.addMenuProvider
-import org.koitharu.kotatsu.utils.ext.end
+import org.koitharu.kotatsu.utils.ext.scaleUpActivityOptionsOf
import kotlin.math.roundToInt
class ChaptersFragment :
@@ -93,14 +92,13 @@ class ChaptersFragment :
(activity as? DetailsActivity)?.showChapterMissingDialog(item.chapter.id)
return
}
- val options = ActivityOptions.makeScaleUpAnimation(view, 0, 0, view.width, view.height)
startActivity(
ReaderActivity.newIntent(
context = view.context,
manga = viewModel.manga.value ?: return,
state = ReaderState(item.chapter.id, 0, 0),
),
- options.toBundle()
+ scaleUpActivityOptionsOf(view).toBundle()
)
}
diff --git a/app/src/main/java/org/koitharu/kotatsu/details/ui/DetailsFragment.kt b/app/src/main/java/org/koitharu/kotatsu/details/ui/DetailsFragment.kt
index e8c0af413..9655378bf 100644
--- a/app/src/main/java/org/koitharu/kotatsu/details/ui/DetailsFragment.kt
+++ b/app/src/main/java/org/koitharu/kotatsu/details/ui/DetailsFragment.kt
@@ -1,6 +1,5 @@
package org.koitharu.kotatsu.details.ui
-import android.app.ActivityOptions
import android.os.Bundle
import android.text.method.LinkMovementMethod
import android.view.*
@@ -83,8 +82,10 @@ class DetailsFragment :
}
override fun onItemClick(item: Bookmark, view: View) {
- val options = ActivityOptions.makeScaleUpAnimation(view, 0, 0, view.width, view.height)
- startActivity(ReaderActivity.newIntent(view.context, item), options.toBundle())
+ startActivity(
+ ReaderActivity.newIntent(view.context, item),
+ scaleUpActivityOptionsOf(view).toBundle(),
+ )
}
override fun onItemLongClick(item: Bookmark, view: View): Boolean {
@@ -277,10 +278,9 @@ class DetailsFragment :
)
}
R.id.imageView_cover -> {
- val options = ActivityOptions.makeScaleUpAnimation(v, 0, 0, v.width, v.height)
startActivity(
ImageActivity.newIntent(v.context, manga.largeCoverUrl.ifNullOrEmpty { manga.coverUrl }),
- options.toBundle()
+ scaleUpActivityOptionsOf(v).toBundle()
)
}
}
diff --git a/app/src/main/java/org/koitharu/kotatsu/details/ui/scrobbling/ScrobblingInfoBottomSheet.kt b/app/src/main/java/org/koitharu/kotatsu/details/ui/scrobbling/ScrobblingInfoBottomSheet.kt
index e03ba4e6c..bea2c7f76 100644
--- a/app/src/main/java/org/koitharu/kotatsu/details/ui/scrobbling/ScrobblingInfoBottomSheet.kt
+++ b/app/src/main/java/org/koitharu/kotatsu/details/ui/scrobbling/ScrobblingInfoBottomSheet.kt
@@ -1,6 +1,5 @@
package org.koitharu.kotatsu.details.ui.scrobbling
-import android.app.ActivityOptions
import android.content.Intent
import android.os.Bundle
import android.text.method.LinkMovementMethod
@@ -30,6 +29,7 @@ import org.koitharu.kotatsu.scrobbling.ui.selector.ScrobblingSelectorBottomSheet
import org.koitharu.kotatsu.utils.ext.crossfade
import org.koitharu.kotatsu.utils.ext.enqueueWith
import org.koitharu.kotatsu.utils.ext.getDisplayMessage
+import org.koitharu.kotatsu.utils.ext.scaleUpActivityOptionsOf
class ScrobblingInfoBottomSheet :
BaseBottomSheet(),
@@ -93,7 +93,7 @@ class ScrobblingInfoBottomSheet :
R.id.button_menu -> menu?.show()
R.id.imageView_cover -> {
val coverUrl = viewModel.scrobblingInfo.value?.coverUrl ?: return
- val options = ActivityOptions.makeScaleUpAnimation(v, 0, 0, v.width, v.height)
+ val options = scaleUpActivityOptionsOf(v)
startActivity(ImageActivity.newIntent(v.context, coverUrl), options.toBundle())
}
}
diff --git a/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/FavouriteCategoriesActivity.kt b/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/FavouriteCategoriesActivity.kt
index c047541d4..193743334 100644
--- a/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/FavouriteCategoriesActivity.kt
+++ b/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/FavouriteCategoriesActivity.kt
@@ -1,6 +1,5 @@
package org.koitharu.kotatsu.favourites.ui.categories
-import android.app.ActivityOptions
import android.content.Context
import android.content.Intent
import android.os.Bundle
@@ -29,6 +28,7 @@ import org.koitharu.kotatsu.list.ui.model.ListModel
import org.koitharu.kotatsu.parsers.model.SortOrder
import org.koitharu.kotatsu.utils.ext.getDisplayMessage
import org.koitharu.kotatsu.utils.ext.measureHeight
+import org.koitharu.kotatsu.utils.ext.scaleUpActivityOptionsOf
class FavouriteCategoriesActivity :
BaseActivity(),
@@ -105,8 +105,7 @@ class FavouriteCategoriesActivity :
return
}
val intent = FavouritesActivity.newIntent(this, item)
- val options =
- ActivityOptions.makeScaleUpAnimation(view, view.width / 2, view.height / 2, view.width, view.height)
+ val options = scaleUpActivityOptionsOf(view)
startActivity(intent, options.toBundle())
}
diff --git a/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/adapter/CategoryAD.kt b/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/adapter/CategoryAD.kt
index 5ca53ad84..b01278817 100644
--- a/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/adapter/CategoryAD.kt
+++ b/app/src/main/java/org/koitharu/kotatsu/favourites/ui/categories/adapter/CategoryAD.kt
@@ -33,8 +33,8 @@ fun categoryAD(
) {
val eventListener = object : OnClickListener, OnLongClickListener, OnTouchListener {
- override fun onClick(v: View) = clickListener.onItemClick(item.category, v)
- override fun onLongClick(v: View) = clickListener.onItemLongClick(item.category, v)
+ override fun onClick(v: View) = clickListener.onItemClick(item.category, binding.imageViewCover1)
+ override fun onLongClick(v: View) = clickListener.onItemLongClick(item.category, binding.imageViewCover1)
override fun onTouch(v: View?, event: MotionEvent): Boolean = item.isReorderMode &&
event.actionMasked == MotionEvent.ACTION_DOWN &&
clickListener.onDragHandleTouch(this@adapterDelegateViewBinding)
diff --git a/app/src/main/java/org/koitharu/kotatsu/list/ui/model/ListHeader.kt b/app/src/main/java/org/koitharu/kotatsu/list/ui/model/ListHeader.kt
index 94f13444c..15f184160 100644
--- a/app/src/main/java/org/koitharu/kotatsu/list/ui/model/ListHeader.kt
+++ b/app/src/main/java/org/koitharu/kotatsu/list/ui/model/ListHeader.kt
@@ -3,6 +3,7 @@ package org.koitharu.kotatsu.list.ui.model
import androidx.annotation.StringRes
import org.koitharu.kotatsu.parsers.model.SortOrder
+@Deprecated("")
data class ListHeader(
val text: CharSequence?,
@StringRes val textRes: Int,
diff --git a/app/src/main/java/org/koitharu/kotatsu/local/ui/LocalListViewModel.kt b/app/src/main/java/org/koitharu/kotatsu/local/ui/LocalListViewModel.kt
index e8490f9d9..c3a38bc9a 100644
--- a/app/src/main/java/org/koitharu/kotatsu/local/ui/LocalListViewModel.kt
+++ b/app/src/main/java/org/koitharu/kotatsu/local/ui/LocalListViewModel.kt
@@ -16,7 +16,10 @@ import org.koitharu.kotatsu.core.prefs.AppSettings
import org.koitharu.kotatsu.download.ui.service.DownloadService
import org.koitharu.kotatsu.history.domain.HistoryRepository
import org.koitharu.kotatsu.list.ui.MangaListViewModel
-import org.koitharu.kotatsu.list.ui.model.*
+import org.koitharu.kotatsu.list.ui.model.EmptyState
+import org.koitharu.kotatsu.list.ui.model.LoadingState
+import org.koitharu.kotatsu.list.ui.model.toErrorState
+import org.koitharu.kotatsu.list.ui.model.toUi
import org.koitharu.kotatsu.local.domain.LocalMangaRepository
import org.koitharu.kotatsu.parsers.model.Manga
import org.koitharu.kotatsu.utils.SingleLiveEvent
@@ -36,7 +39,6 @@ class LocalListViewModel(
val importProgress = MutableLiveData