6df1a0f79e
(cherry picked from commit 018ca71336)
# Conflicts:
# app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
# app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
# app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
# app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrateMangaPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrationSourcesController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesPresenter.kt
26 lines
862 B
Kotlin
26 lines
862 B
Kotlin
package eu.kanade.presentation.browse
|
|
|
|
import androidx.compose.runtime.Stable
|
|
import androidx.compose.runtime.getValue
|
|
import androidx.compose.runtime.mutableStateOf
|
|
import androidx.compose.runtime.setValue
|
|
import eu.kanade.tachiyomi.extension.model.Extension
|
|
import eu.kanade.tachiyomi.ui.browse.extension.details.ExtensionSourceItem
|
|
|
|
@Stable
|
|
interface ExtensionDetailsState {
|
|
val isLoading: Boolean
|
|
val extension: Extension.Installed?
|
|
val sources: List<ExtensionSourceItem>
|
|
}
|
|
|
|
fun ExtensionDetailsState(): ExtensionDetailsState {
|
|
return ExtensionDetailsStateImpl()
|
|
}
|
|
|
|
class ExtensionDetailsStateImpl : ExtensionDetailsState {
|
|
override var isLoading: Boolean by mutableStateOf(true)
|
|
override var extension: Extension.Installed? by mutableStateOf(null)
|
|
override var sources: List<ExtensionSourceItem> by mutableStateOf(emptyList())
|
|
}
|