Update parsers and add support for Upcoming state
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -10,6 +10,7 @@
|
|||||||
/.idea/compiler.xml
|
/.idea/compiler.xml
|
||||||
/.idea/workspace.xml
|
/.idea/workspace.xml
|
||||||
/.idea/navEditor.xml
|
/.idea/navEditor.xml
|
||||||
|
/.idea/ktlint-plugin.xml
|
||||||
/.idea/assetWizardSettings.xml
|
/.idea/assetWizardSettings.xml
|
||||||
/.idea/kotlinScripting.xml
|
/.idea/kotlinScripting.xml
|
||||||
/.idea/kotlinc.xml
|
/.idea/kotlinc.xml
|
||||||
|
|||||||
@@ -82,7 +82,7 @@ afterEvaluate {
|
|||||||
}
|
}
|
||||||
dependencies {
|
dependencies {
|
||||||
//noinspection GradleDependency
|
//noinspection GradleDependency
|
||||||
implementation('com.github.kotatsuapp:kotatsu-parsers:904e0719eb') {
|
implementation('com.github.KotatsuApp:kotatsu-parsers:a228d71d57') {
|
||||||
exclude group: 'org.json', module: 'json'
|
exclude group: 'org.json', module: 'json'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ import org.koitharu.kotatsu.parsers.model.MangaChapter
|
|||||||
import org.koitharu.kotatsu.parsers.model.MangaSource
|
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||||
import org.koitharu.kotatsu.parsers.model.MangaState
|
import org.koitharu.kotatsu.parsers.model.MangaState
|
||||||
import org.koitharu.kotatsu.parsers.util.mapToSet
|
import org.koitharu.kotatsu.parsers.util.mapToSet
|
||||||
|
import com.google.android.material.R as materialR
|
||||||
|
|
||||||
@JvmName("mangaIds")
|
@JvmName("mangaIds")
|
||||||
fun Collection<Manga>.ids() = mapToSet { it.id }
|
fun Collection<Manga>.ids() = mapToSet { it.id }
|
||||||
@@ -42,15 +43,17 @@ val MangaState.titleResId: Int
|
|||||||
MangaState.FINISHED -> R.string.state_finished
|
MangaState.FINISHED -> R.string.state_finished
|
||||||
MangaState.ABANDONED -> R.string.state_abandoned
|
MangaState.ABANDONED -> R.string.state_abandoned
|
||||||
MangaState.PAUSED -> R.string.state_paused
|
MangaState.PAUSED -> R.string.state_paused
|
||||||
|
MangaState.UPCOMING -> R.string.state_upcoming
|
||||||
}
|
}
|
||||||
|
|
||||||
@get:DrawableRes
|
@get:DrawableRes
|
||||||
val MangaState.iconResId: Int
|
val MangaState.iconResId: Int
|
||||||
get() = when (this) {
|
get() = when (this) {
|
||||||
MangaState.ONGOING -> R.drawable.ic_state_ongoing
|
MangaState.ONGOING -> R.drawable.ic_play
|
||||||
MangaState.FINISHED -> R.drawable.ic_state_finished
|
MangaState.FINISHED -> R.drawable.ic_state_finished
|
||||||
MangaState.ABANDONED -> R.drawable.ic_state_abandoned
|
MangaState.ABANDONED -> R.drawable.ic_state_abandoned
|
||||||
MangaState.PAUSED -> R.drawable.ic_action_pause
|
MangaState.PAUSED -> R.drawable.ic_action_pause
|
||||||
|
MangaState.UPCOMING -> materialR.drawable.ic_clock_black_24dp
|
||||||
}
|
}
|
||||||
|
|
||||||
fun Manga.findChapter(id: Long): MangaChapter? {
|
fun Manga.findChapter(id: Long): MangaChapter? {
|
||||||
|
|||||||
@@ -12,4 +12,5 @@ val SortOrder.titleRes: Int
|
|||||||
SortOrder.RATING -> R.string.by_rating
|
SortOrder.RATING -> R.string.by_rating
|
||||||
SortOrder.NEWEST -> R.string.newest
|
SortOrder.NEWEST -> R.string.newest
|
||||||
SortOrder.ALPHABETICAL -> R.string.by_name
|
SortOrder.ALPHABETICAL -> R.string.by_name
|
||||||
|
SortOrder.ALPHABETICAL_DESC -> R.string.by_name_reverse
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ import org.koitharu.kotatsu.bookmarks.domain.Bookmark
|
|||||||
import org.koitharu.kotatsu.bookmarks.ui.adapter.BookmarksAdapter
|
import org.koitharu.kotatsu.bookmarks.ui.adapter.BookmarksAdapter
|
||||||
import org.koitharu.kotatsu.bookmarks.ui.sheet.BookmarksSheet
|
import org.koitharu.kotatsu.bookmarks.ui.sheet.BookmarksSheet
|
||||||
import org.koitharu.kotatsu.core.model.countChaptersByBranch
|
import org.koitharu.kotatsu.core.model.countChaptersByBranch
|
||||||
|
import org.koitharu.kotatsu.core.model.iconResId
|
||||||
|
import org.koitharu.kotatsu.core.model.titleResId
|
||||||
import org.koitharu.kotatsu.core.ui.BaseFragment
|
import org.koitharu.kotatsu.core.ui.BaseFragment
|
||||||
import org.koitharu.kotatsu.core.ui.BaseListAdapter
|
import org.koitharu.kotatsu.core.ui.BaseListAdapter
|
||||||
import org.koitharu.kotatsu.core.ui.image.CoverSizeResolver
|
import org.koitharu.kotatsu.core.ui.image.CoverSizeResolver
|
||||||
@@ -66,7 +68,6 @@ import org.koitharu.kotatsu.list.ui.size.StaticItemSizeResolver
|
|||||||
import org.koitharu.kotatsu.main.ui.owners.NoModalBottomSheetOwner
|
import org.koitharu.kotatsu.main.ui.owners.NoModalBottomSheetOwner
|
||||||
import org.koitharu.kotatsu.parsers.model.Manga
|
import org.koitharu.kotatsu.parsers.model.Manga
|
||||||
import org.koitharu.kotatsu.parsers.model.MangaSource
|
import org.koitharu.kotatsu.parsers.model.MangaSource
|
||||||
import org.koitharu.kotatsu.parsers.model.MangaState
|
|
||||||
import org.koitharu.kotatsu.parsers.model.MangaTag
|
import org.koitharu.kotatsu.parsers.model.MangaTag
|
||||||
import org.koitharu.kotatsu.reader.ui.ReaderActivity
|
import org.koitharu.kotatsu.reader.ui.ReaderActivity
|
||||||
import org.koitharu.kotatsu.scrobbling.common.domain.model.ScrobblingInfo
|
import org.koitharu.kotatsu.scrobbling.common.domain.model.ScrobblingInfo
|
||||||
@@ -181,28 +182,13 @@ class DetailsFragment :
|
|||||||
ratingBar.isVisible = false
|
ratingBar.isVisible = false
|
||||||
}
|
}
|
||||||
|
|
||||||
when (manga.state) {
|
infoLayout.textViewState.apply {
|
||||||
MangaState.FINISHED -> infoLayout.textViewState.apply {
|
manga.state?.let { state ->
|
||||||
textAndVisible = resources.getString(R.string.state_finished)
|
textAndVisible = resources.getString(state.titleResId)
|
||||||
drawableTop = ContextCompat.getDrawable(context, R.drawable.ic_state_finished)
|
drawableTop = ContextCompat.getDrawable(context, state.iconResId)
|
||||||
|
} ?: run {
|
||||||
|
isVisible = false
|
||||||
}
|
}
|
||||||
|
|
||||||
MangaState.ONGOING -> infoLayout.textViewState.apply {
|
|
||||||
textAndVisible = resources.getString(R.string.state_ongoing)
|
|
||||||
drawableTop = ContextCompat.getDrawable(context, R.drawable.ic_state_ongoing)
|
|
||||||
}
|
|
||||||
|
|
||||||
MangaState.ABANDONED -> infoLayout.textViewState.apply {
|
|
||||||
textAndVisible = resources.getString(R.string.state_abandoned)
|
|
||||||
drawableTop = ContextCompat.getDrawable(context, R.drawable.ic_state_abandoned)
|
|
||||||
}
|
|
||||||
|
|
||||||
MangaState.PAUSED -> infoLayout.textViewState.apply {
|
|
||||||
textAndVisible = resources.getString(R.string.state_paused)
|
|
||||||
drawableTop = ContextCompat.getDrawable(context, R.drawable.ic_action_pause)
|
|
||||||
}
|
|
||||||
|
|
||||||
null -> infoLayout.textViewState.isVisible = false
|
|
||||||
}
|
}
|
||||||
if (manga.source == MangaSource.LOCAL) {
|
if (manga.source == MangaSource.LOCAL) {
|
||||||
infoLayout.textViewSource.isVisible = false
|
infoLayout.textViewSource.isVisible = false
|
||||||
|
|||||||
@@ -548,4 +548,6 @@
|
|||||||
<string name="sync_auth">Login to sync account</string>
|
<string name="sync_auth">Login to sync account</string>
|
||||||
<string name="restore">Restore</string>
|
<string name="restore">Restore</string>
|
||||||
<string name="backup_date_">Backup date: %s</string>
|
<string name="backup_date_">Backup date: %s</string>
|
||||||
|
<string name="state_upcoming">Upcoming</string>
|
||||||
|
<string name="by_name_reverse">Name reversed</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|||||||
Reference in New Issue
Block a user