Make Wikipedia item and website item clickable again
This commit is contained in:
parent
fc90fdb17d
commit
2e5d510014
@ -6,6 +6,7 @@ import androidx.compose.animation.core.snap
|
||||
import androidx.compose.animation.core.tween
|
||||
import androidx.compose.foundation.Image
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.layout.*
|
||||
import androidx.compose.material.icons.Icons
|
||||
import androidx.compose.material.icons.rounded.ArrowBack
|
||||
@ -45,7 +46,9 @@ fun WebsiteItem(
|
||||
val viewModel = remember(website) { WebsiteItemVM(website) }
|
||||
|
||||
Column(
|
||||
modifier = Modifier.fillMaxWidth()
|
||||
modifier = modifier.clickable {
|
||||
viewModel.launch(context as AppCompatActivity)
|
||||
}
|
||||
) {
|
||||
if (website.image.isNotBlank()) {
|
||||
Image(
|
||||
|
||||
@ -4,21 +4,13 @@ import android.content.Intent
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
import de.mm20.launcher2.favorites.FavoritesRepository
|
||||
import de.mm20.launcher2.search.data.Website
|
||||
import de.mm20.launcher2.ui.launcher.search.common.SearchableItemVM
|
||||
import org.koin.core.component.KoinComponent
|
||||
import org.koin.core.component.inject
|
||||
|
||||
class WebsiteItemVM(
|
||||
private val website: Website
|
||||
): KoinComponent {
|
||||
private val favoritesRepository: FavoritesRepository by inject()
|
||||
|
||||
val isPinned = favoritesRepository.isPinned(website)
|
||||
fun pin() {
|
||||
favoritesRepository.pinItem(website)
|
||||
}
|
||||
fun unpin() {
|
||||
favoritesRepository.unpinItem(website)
|
||||
}
|
||||
): SearchableItemVM(website) {
|
||||
|
||||
fun share(context: AppCompatActivity) {
|
||||
val shareIntent = Intent(Intent.ACTION_SEND)
|
||||
|
||||
@ -5,6 +5,7 @@ import androidx.compose.animation.*
|
||||
import androidx.compose.animation.core.tween
|
||||
import androidx.compose.foundation.Image
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.layout.*
|
||||
import androidx.compose.material.icons.Icons
|
||||
import androidx.compose.material.icons.rounded.ArrowBack
|
||||
@ -45,7 +46,9 @@ fun WikipediaItem(
|
||||
val viewModel = remember(wikipedia) { WikipediaItemVM(wikipedia) }
|
||||
|
||||
Column(
|
||||
modifier = Modifier.fillMaxWidth()
|
||||
modifier = modifier.clickable {
|
||||
viewModel.launch(context as AppCompatActivity)
|
||||
}
|
||||
) {
|
||||
if (!wikipedia.image.isNullOrEmpty()) {
|
||||
Image(
|
||||
|
||||
@ -6,22 +6,13 @@ import androidx.core.text.HtmlCompat
|
||||
import de.mm20.launcher2.favorites.FavoritesRepository
|
||||
import de.mm20.launcher2.search.data.Wikipedia
|
||||
import de.mm20.launcher2.ui.R
|
||||
import de.mm20.launcher2.ui.launcher.search.common.SearchableItemVM
|
||||
import org.koin.core.component.KoinComponent
|
||||
import org.koin.core.component.inject
|
||||
|
||||
class WikipediaItemVM(
|
||||
private val wikipedia: Wikipedia
|
||||
) : KoinComponent {
|
||||
private val favoritesRepository: FavoritesRepository by inject()
|
||||
|
||||
val isPinned = favoritesRepository.isPinned(wikipedia)
|
||||
fun pin() {
|
||||
favoritesRepository.pinItem(wikipedia)
|
||||
}
|
||||
|
||||
fun unpin() {
|
||||
favoritesRepository.unpinItem(wikipedia)
|
||||
}
|
||||
) : SearchableItemVM(wikipedia) {
|
||||
|
||||
fun share(context: AppCompatActivity) {
|
||||
val text = HtmlCompat.fromHtml(wikipedia.text, HtmlCompat.FROM_HTML_MODE_LEGACY).toString()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user