(cherry picked from commit abae9bf37dea6bfb351c8b93fe00998c053dba34) # Conflicts: # app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt # app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt # app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrateMangaScreen.kt # app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateSearchScreenDialogScreenModel.kt # app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourceTab.kt # app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesFilterScreenModel.kt # app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt # app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt # app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt # app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt # app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt # domain/src/main/java/tachiyomi/domain/category/interactor/CreateCategoryWithName.kt
46 lines
1.7 KiB
Kotlin
46 lines
1.7 KiB
Kotlin
package exh.ui.metadata.adapters
|
|
|
|
import android.view.LayoutInflater
|
|
import androidx.compose.foundation.layout.fillMaxWidth
|
|
import androidx.compose.runtime.Composable
|
|
import androidx.compose.ui.Modifier
|
|
import androidx.compose.ui.platform.LocalContext
|
|
import androidx.compose.ui.viewinterop.AndroidView
|
|
import eu.kanade.tachiyomi.R
|
|
import eu.kanade.tachiyomi.databinding.DescriptionAdapter8mBinding
|
|
import eu.kanade.tachiyomi.ui.manga.MangaScreenModel.State
|
|
import eu.kanade.tachiyomi.util.system.copyToClipboard
|
|
import exh.metadata.metadata.EightMusesSearchMetadata
|
|
import exh.ui.metadata.adapters.MetadataUIUtil.bindDrawable
|
|
|
|
@Composable
|
|
fun EightMusesDescription(state: State.Success, openMetadataViewer: () -> Unit) {
|
|
val context = LocalContext.current
|
|
AndroidView(
|
|
modifier = Modifier.fillMaxWidth(),
|
|
factory = { factoryContext ->
|
|
DescriptionAdapter8mBinding.inflate(LayoutInflater.from(factoryContext)).root
|
|
},
|
|
update = {
|
|
val meta = state.meta
|
|
if (meta == null || meta !is EightMusesSearchMetadata) return@AndroidView
|
|
val binding = DescriptionAdapter8mBinding.bind(it)
|
|
|
|
binding.title.text = meta.title ?: context.getString(R.string.unknown)
|
|
|
|
binding.moreInfo.bindDrawable(context, R.drawable.ic_info_24dp)
|
|
|
|
binding.title.setOnLongClickListener {
|
|
context.copyToClipboard(
|
|
binding.title.text.toString(),
|
|
binding.title.text.toString(),
|
|
)
|
|
true
|
|
}
|
|
|
|
binding.moreInfo.setOnClickListener {
|
|
openMetadataViewer()
|
|
}
|
|
},
|
|
)
|
|
}
|