mirror of
https://github.com/msfjarvis/compose-lobsters
synced 2025-08-15 07:37:03 +05:30
android: allow swipe to remove from saved posts
This commit is contained in:
parent
706680ec42
commit
80dc5a59f8
1 changed files with 23 additions and 5 deletions
|
@ -3,11 +3,16 @@ package dev.msfjarvis.claw.android.ui.lists
|
||||||
import androidx.compose.foundation.lazy.LazyColumn
|
import androidx.compose.foundation.lazy.LazyColumn
|
||||||
import androidx.compose.foundation.lazy.LazyListState
|
import androidx.compose.foundation.lazy.LazyListState
|
||||||
import androidx.compose.foundation.lazy.items
|
import androidx.compose.foundation.lazy.items
|
||||||
|
import androidx.compose.material.DismissDirection
|
||||||
|
import androidx.compose.material.ExperimentalMaterialApi
|
||||||
|
import androidx.compose.material.SwipeToDismiss
|
||||||
|
import androidx.compose.material.rememberDismissState
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import dev.msfjarvis.claw.common.posts.PostActions
|
import dev.msfjarvis.claw.common.posts.PostActions
|
||||||
import dev.msfjarvis.claw.database.local.SavedPost
|
import dev.msfjarvis.claw.database.local.SavedPost
|
||||||
|
|
||||||
|
@OptIn(ExperimentalMaterialApi::class)
|
||||||
@Composable
|
@Composable
|
||||||
fun DatabasePosts(
|
fun DatabasePosts(
|
||||||
items: List<SavedPost>,
|
items: List<SavedPost>,
|
||||||
|
@ -21,6 +26,18 @@ fun DatabasePosts(
|
||||||
modifier = modifier,
|
modifier = modifier,
|
||||||
) {
|
) {
|
||||||
items(items) { item ->
|
items(items) { item ->
|
||||||
|
val dismissState =
|
||||||
|
rememberDismissState(
|
||||||
|
confirmStateChange = {
|
||||||
|
postActions.toggleSave(item)
|
||||||
|
true
|
||||||
|
}
|
||||||
|
)
|
||||||
|
SwipeToDismiss(
|
||||||
|
state = dismissState,
|
||||||
|
directions = setOf(DismissDirection.EndToStart),
|
||||||
|
background = {},
|
||||||
|
) {
|
||||||
ListItem(
|
ListItem(
|
||||||
item = item,
|
item = item,
|
||||||
isSaved = isSaved,
|
isSaved = isSaved,
|
||||||
|
@ -28,4 +45,5 @@ fun DatabasePosts(
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue