only swipe to remove artile with unread filter
(cherry picked from commit c35fe96d0c453b733ec4a7a813244c7b4b47b026)
This commit is contained in:
parent
169a7b173c
commit
2b43ce2c71
@ -164,16 +164,17 @@ fun ArticleItem(
|
||||
@Composable
|
||||
fun SwipeableArticleItem(
|
||||
articleWithFeed: ArticleWithFeed,
|
||||
isFilterUnread: Boolean,
|
||||
onClick: (ArticleWithFeed) -> Unit = {},
|
||||
onSwipeOut: (ArticleWithFeed) -> Unit = {},
|
||||
) {
|
||||
var isArticleVisible by remember { mutableStateOf(true) }
|
||||
val dismissState = rememberDismissState(initialValue = DismissValue.Default, confirmStateChange = {
|
||||
if (it == DismissValue.DismissedToEnd) {
|
||||
isArticleVisible = false
|
||||
isArticleVisible = !isFilterUnread
|
||||
onSwipeOut(articleWithFeed)
|
||||
}
|
||||
true
|
||||
isFilterUnread
|
||||
})
|
||||
if (isArticleVisible) {
|
||||
SwipeToDismiss(
|
||||
|
@ -15,6 +15,7 @@ import me.ash.reader.domain.model.article.ArticleWithFeed
|
||||
@OptIn(ExperimentalFoundationApi::class, ExperimentalMaterialApi::class)
|
||||
fun LazyListScope.ArticleList(
|
||||
pagingItems: LazyPagingItems<ArticleFlowItem>,
|
||||
isFilterUnread: Boolean,
|
||||
isShowFeedIcon: Boolean,
|
||||
isShowStickyHeader: Boolean,
|
||||
articleListTonalElevation: Int,
|
||||
@ -27,6 +28,7 @@ fun LazyListScope.ArticleList(
|
||||
item(key = item.articleWithFeed.article.id) {
|
||||
SwipeableArticleItem(
|
||||
articleWithFeed = item.articleWithFeed,
|
||||
isFilterUnread = isFilterUnread,
|
||||
onClick = { onClick(it) },
|
||||
onSwipeOut = { onSwipeOut(it) }
|
||||
)
|
||||
|
@ -23,6 +23,8 @@ import androidx.work.WorkInfo
|
||||
import kotlinx.coroutines.delay
|
||||
import kotlinx.coroutines.launch
|
||||
import me.ash.reader.R
|
||||
import me.ash.reader.domain.model.article.ArticleFlowItem
|
||||
import me.ash.reader.domain.model.general.Filter
|
||||
import me.ash.reader.domain.model.general.MarkAsReadConditions
|
||||
import me.ash.reader.infrastructure.preference.*
|
||||
import me.ash.reader.ui.component.FilterBar
|
||||
@ -232,6 +234,7 @@ fun FlowPage(
|
||||
}
|
||||
ArticleList(
|
||||
pagingItems = pagingItems,
|
||||
isFilterUnread = filterUiState.filter == Filter.Unread,
|
||||
isShowFeedIcon = articleListFeedIcon.value,
|
||||
isShowStickyHeader = articleListDateStickyHeader.value,
|
||||
articleListTonalElevation = articleListTonalElevation.value,
|
||||
|
Loading…
x
Reference in New Issue
Block a user