From 61097e087dd01a7510eb5af255b64e7977ac0be6 Mon Sep 17 00:00:00 2001 From: Nicolas Pomepuy Date: Wed, 27 Aug 2025 10:54:39 +0200 Subject: [PATCH] Allow marking browser video as played or unplayed Fixes #3248 --- .../videolan/vlc/gui/browser/BaseBrowserFragment.kt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/application/vlc-android/src/org/videolan/vlc/gui/browser/BaseBrowserFragment.kt b/application/vlc-android/src/org/videolan/vlc/gui/browser/BaseBrowserFragment.kt index 653c25ec2..11f2d87fd 100644 --- a/application/vlc-android/src/org/videolan/vlc/gui/browser/BaseBrowserFragment.kt +++ b/application/vlc-android/src/org/videolan/vlc/gui/browser/BaseBrowserFragment.kt @@ -804,6 +804,8 @@ abstract class BaseBrowserFragment : MediaBrowserFragment(), IRefr if (!isAudio && isMedia) add(CTX_PLAY_AS_AUDIO) if (!isMedia) add(CTX_PLAY) if (isVideo) add(CTX_DOWNLOAD_SUBTITLES) + if (isVideo && mw.seen > 0L) add(ContextOption.CTX_MARK_AS_UNPLAYED) + if (isVideo && mw.seen == 0L) add(ContextOption.CTX_MARK_AS_PLAYED) } add(CTX_PLAY_NEXT) } @@ -880,6 +882,16 @@ abstract class BaseBrowserFragment : MediaBrowserFragment(), IRefr CTX_ADD_FOLDER_AND_SUB_PLAYLIST -> { requireActivity().addToPlaylistAsync(mw.uri.toString(), true, mw.title) } + ContextOption.CTX_MARK_AS_UNPLAYED -> { + mw.setPlayCount(0L) + mw.seen = 0L + adapter.notifyItemChanged(position) + } + ContextOption.CTX_MARK_AS_PLAYED -> { + mw.setPlayCount(mw.seen + 1L) + mw.seen = mw.seen + 1L + adapter.notifyItemChanged(position) + } else -> {} }