mirror of
https://github.com/tachiyomiorg/tachiyomi.git
synced 2024-12-22 10:11:52 +01:00
Maybe fix extensions list crash
Also fix weird animation of last updated text in Updates
This commit is contained in:
parent
dc62d0ea8b
commit
4c1da1bd1d
@ -164,10 +164,9 @@ fun UpdateScreen(
|
||||
contentPadding = contentPaddingWithNavBar,
|
||||
) {
|
||||
if (presenter.lastUpdated > 0L) {
|
||||
item(key = "last_updated") {
|
||||
UpdatesLastUpdatedItem(presenter.lastUpdated)
|
||||
}
|
||||
updatesLastUpdatedItem(presenter.lastUpdated)
|
||||
}
|
||||
|
||||
updatesUiItems(
|
||||
uiModels = presenter.uiModels,
|
||||
selectionMode = presenter.selectionMode,
|
||||
|
@ -49,16 +49,17 @@ import eu.kanade.tachiyomi.ui.recent.updates.UpdatesItem
|
||||
import java.text.DateFormat
|
||||
import java.util.Date
|
||||
|
||||
@Composable
|
||||
fun UpdatesLastUpdatedItem(
|
||||
fun LazyListScope.updatesLastUpdatedItem(
|
||||
lastUpdated: Long,
|
||||
) {
|
||||
item(key = "last_updated") {
|
||||
val time = remember(lastUpdated) {
|
||||
DateUtils.getRelativeTimeSpanString(lastUpdated, Date().time, DateUtils.MINUTE_IN_MILLIS)
|
||||
}
|
||||
|
||||
Box(
|
||||
modifier = Modifier
|
||||
.animateItemPlacement()
|
||||
.padding(horizontal = horizontalPadding, vertical = 8.dp),
|
||||
) {
|
||||
Text(
|
||||
@ -69,6 +70,7 @@ fun UpdatesLastUpdatedItem(
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun LazyListScope.updatesUiItems(
|
||||
uiModels: List<UpdatesUiModel>,
|
||||
|
@ -202,16 +202,16 @@ sealed interface ExtensionUiModel {
|
||||
data class Resource(@StringRes val textRes: Int) : Header
|
||||
data class Text(val text: String) : Header
|
||||
}
|
||||
|
||||
data class Item(
|
||||
val extension: Extension,
|
||||
val installStep: InstallStep,
|
||||
) : ExtensionUiModel {
|
||||
|
||||
fun key(): String {
|
||||
return when (extension) {
|
||||
is Extension.Installed ->
|
||||
if (extension.hasUpdate) "update_${extension.pkgName}" else extension.pkgName
|
||||
else -> extension.pkgName
|
||||
return when {
|
||||
extension is Extension.Installed && extension.hasUpdate -> "${extension.pkgName}_update"
|
||||
else -> "${extension.pkgName}_${installStep.name}"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user