Merge pull request #9230 from Stypox/duplicate-feed-videos

Fix duplicate videos in feed group "All"
This commit is contained in:
Tobi 2022-11-03 17:23:05 +01:00 committed by GitHub
commit c8caf48cda
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 12 deletions

View file

@ -48,7 +48,10 @@ abstract class FeedDAO {
ON s.uid = f.stream_id ON s.uid = f.stream_id
LEFT JOIN feed_group_subscription_join fgs LEFT JOIN feed_group_subscription_join fgs
ON fgs.subscription_id = f.subscription_id ON (
:groupId <> ${FeedGroupEntity.GROUP_ALL_ID}
AND fgs.subscription_id = f.subscription_id
)
WHERE ( WHERE (
:groupId = ${FeedGroupEntity.GROUP_ALL_ID} :groupId = ${FeedGroupEntity.GROUP_ALL_ID}

View file

@ -27,7 +27,7 @@ import com.xwray.groupie.viewbinding.GroupieViewHolder
import icepick.State import icepick.State
import io.reactivex.rxjava3.disposables.CompositeDisposable import io.reactivex.rxjava3.disposables.CompositeDisposable
import org.schabi.newpipe.R import org.schabi.newpipe.R
import org.schabi.newpipe.database.feed.model.FeedGroupEntity import org.schabi.newpipe.database.feed.model.FeedGroupEntity.Companion.GROUP_ALL_ID
import org.schabi.newpipe.databinding.DialogTitleBinding import org.schabi.newpipe.databinding.DialogTitleBinding
import org.schabi.newpipe.databinding.FeedItemCarouselBinding import org.schabi.newpipe.databinding.FeedItemCarouselBinding
import org.schabi.newpipe.databinding.FragmentSubscriptionBinding import org.schabi.newpipe.databinding.FragmentSubscriptionBinding
@ -276,14 +276,8 @@ class SubscriptionFragment : BaseStateFragment<SubscriptionState>() {
} }
} }
carouselAdapter.setOnItemLongClickListener { item, _ -> carouselAdapter.setOnItemLongClickListener { item, _ ->
if (( if ((item is FeedGroupCardItem && item.groupId == GROUP_ALL_ID) ||
item is FeedGroupCardItem && (item is FeedGroupCardGridItem && item.groupId == GROUP_ALL_ID)
item.groupId == FeedGroupEntity.GROUP_ALL_ID
) ||
(
item is FeedGroupCardGridItem &&
item.groupId == FeedGroupEntity.GROUP_ALL_ID
)
) { ) {
return@setOnItemLongClickListener false return@setOnItemLongClickListener false
} }
@ -437,10 +431,10 @@ class SubscriptionFragment : BaseStateFragment<SubscriptionState>() {
clear() clear()
if (listViewMode) { if (listViewMode) {
add(FeedGroupAddNewItem()) add(FeedGroupAddNewItem())
add(FeedGroupCardItem(-1, getString(R.string.all), FeedGroupIcon.RSS)) add(FeedGroupCardItem(GROUP_ALL_ID, getString(R.string.all), FeedGroupIcon.RSS))
} else { } else {
add(FeedGroupAddNewGridItem()) add(FeedGroupAddNewGridItem())
add(FeedGroupCardGridItem(-1, getString(R.string.all), FeedGroupIcon.RSS)) add(FeedGroupCardGridItem(GROUP_ALL_ID, getString(R.string.all), FeedGroupIcon.RSS))
} }
addAll(groups) addAll(groups)
} }