[Android] Fix track insertion snackbar position
Nicolas Pomepuy
git at videolan.org
Tue Mar 25 11:55:47 UTC 2025
vlc-android | branch: master | Nicolas Pomepuy <nicolas at videolabs.io> | Tue Mar 18 09:46:36 2025 +0100| [40ce7238dc06de07a1986cc173f7b16b35b5e7a8] | committer: Nicolas Pomepuy
Fix track insertion snackbar position
> https://code.videolan.org/videolan/vlc-android/commit/40ce7238dc06de07a1986cc173f7b16b35b5e7a8
---
.../src/org/videolan/vlc/media/MediaUtils.kt | 40 ++++++++++++++++------
1 file changed, 30 insertions(+), 10 deletions(-)
diff --git a/application/vlc-android/src/org/videolan/vlc/media/MediaUtils.kt b/application/vlc-android/src/org/videolan/vlc/media/MediaUtils.kt
index 07c4d96e55..b450c90d17 100644
--- a/application/vlc-android/src/org/videolan/vlc/media/MediaUtils.kt
+++ b/application/vlc-android/src/org/videolan/vlc/media/MediaUtils.kt
@@ -15,18 +15,35 @@ import androidx.core.content.ContextCompat
import androidx.fragment.app.FragmentActivity
import androidx.lifecycle.lifecycleScope
import com.google.android.material.snackbar.Snackbar
-import kotlinx.coroutines.*
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.Dispatchers
+import kotlinx.coroutines.Job
+import kotlinx.coroutines.ObsoleteCoroutinesApi
+import kotlinx.coroutines.Runnable
import kotlinx.coroutines.channels.Channel
import kotlinx.coroutines.channels.actor
+import kotlinx.coroutines.delay
import kotlinx.coroutines.flow.filterNotNull
import kotlinx.coroutines.flow.first
+import kotlinx.coroutines.launch
+import kotlinx.coroutines.withContext
import org.videolan.libvlc.util.AndroidUtil
import org.videolan.medialibrary.MLServiceLocator
import org.videolan.medialibrary.Tools
import org.videolan.medialibrary.interfaces.Medialibrary
-import org.videolan.medialibrary.interfaces.media.*
+import org.videolan.medialibrary.interfaces.media.Album
+import org.videolan.medialibrary.interfaces.media.Artist
+import org.videolan.medialibrary.interfaces.media.Folder
+import org.videolan.medialibrary.interfaces.media.MediaWrapper
+import org.videolan.medialibrary.interfaces.media.Playlist
+import org.videolan.medialibrary.interfaces.media.VideoGroup
import org.videolan.medialibrary.media.MediaLibraryItem
-import org.videolan.resources.*
+import org.videolan.resources.ACTION_OPEN_CONTENT
+import org.videolan.resources.AppContextProvider
+import org.videolan.resources.CONTENT_PREFIX
+import org.videolan.resources.EXTRA_CONTENT_ID
+import org.videolan.resources.MEDIALIBRARY_PAGE_SIZE
+import org.videolan.resources.VLCOptions
import org.videolan.resources.interfaces.IMediaContentResolver
import org.videolan.resources.interfaces.ResumableList
import org.videolan.resources.util.getFromMl
@@ -42,10 +59,16 @@ import org.videolan.vlc.gui.dialogs.SubtitleDownloaderDialogFragment
import org.videolan.vlc.providers.medialibrary.FoldersProvider
import org.videolan.vlc.providers.medialibrary.MedialibraryProvider
import org.videolan.vlc.providers.medialibrary.VideoGroupsProvider
-import org.videolan.vlc.util.*
+import org.videolan.vlc.util.FileUtils
+import org.videolan.vlc.util.Permissions
+import org.videolan.vlc.util.TextUtils
+import org.videolan.vlc.util.generateResolutionClass
+import org.videolan.vlc.util.isOTG
+import org.videolan.vlc.util.isSD
+import org.videolan.vlc.util.isSchemeStreaming
import java.io.File
import java.security.SecureRandom
-import java.util.*
+import java.util.LinkedList
import kotlin.math.min
private const val TAG = "VLC/MediaUtils"
@@ -127,10 +150,7 @@ object MediaUtils {
context.let {
if (it is Activity) {
val text = context.resources.getQuantityString(R.plurals.tracks_appended, media.size, media.size)
- if (it is AudioPlayerContainerActivity) {
- Snackbar.make(it.appBarLayout, text, Snackbar.LENGTH_LONG).show()
- } else
- Snackbar.make(it.findViewById(android.R.id.content), text, Snackbar.LENGTH_LONG).show()
+ Snackbar.make(if (it is AudioPlayerContainerActivity) it.appBarLayout else it.findViewById(android.R.id.content), text, Snackbar.LENGTH_LONG).show()
}
}
}
@@ -149,7 +169,7 @@ object MediaUtils {
context.let {
if (it is Activity) {
val text = context.resources.getQuantityString(R.plurals.tracks_inserted, media.size, media.size)
- Snackbar.make(it.findViewById(android.R.id.content), text, Snackbar.LENGTH_LONG).show()
+ Snackbar.make(if (it is AudioPlayerContainerActivity) it.appBarLayout else it.findViewById(android.R.id.content), text, Snackbar.LENGTH_LONG).show()
}
}
}
More information about the Android
mailing list