Video call can be static

This commit is contained in:
tzugen 2021-06-29 23:09:27 +02:00
parent 6e6cf3a86a
commit 3afb86c22c
No known key found for this signature in database
GPG Key ID: 61E9C34BC10EC930
6 changed files with 22 additions and 24 deletions

View File

@ -73,7 +73,7 @@
<ID>TooGenericExceptionCaught:MediaPlayerService.kt$MediaPlayerService$e: Exception</ID>
<ID>TooGenericExceptionCaught:SongView.kt$SongView$e: Exception</ID>
<ID>TooGenericExceptionCaught:SubsonicUncaughtExceptionHandler.kt$SubsonicUncaughtExceptionHandler$x: Throwable</ID>
<ID>TooGenericExceptionCaught:VideoPlayer.kt$VideoPlayer$e: Exception</ID>
<ID>TooGenericExceptionCaught:VideoPlayer.kt$VideoPlayer.Companion$e: Exception</ID>
<ID>TooGenericExceptionThrown:DownloadFile.kt$DownloadFile.DownloadTask$throw Exception(String.format("Download of '%s' was cancelled", song))</ID>
<ID>TooManyFunctions:LocalMediaPlayer.kt$LocalMediaPlayer</ID>
<ID>TooManyFunctions:MediaPlayerService.kt$MediaPlayerService : Service</ID>

View File

@ -52,7 +52,6 @@ public class BookmarksFragment extends Fragment {
private ImageView downloadButton;
private ImageView deleteButton;
private final Lazy<VideoPlayer> videoPlayer = inject(VideoPlayer.class);
private final Lazy<MediaPlayerController> mediaPlayerController = inject(MediaPlayerController.class);
private final Lazy<ImageLoaderProvider> imageLoader = inject(ImageLoaderProvider.class);
private final Lazy<NetworkAndStorageChecker> networkAndStorageChecker = inject(NetworkAndStorageChecker.class);
@ -104,7 +103,7 @@ public class BookmarksFragment extends Fragment {
{
if (entry.isVideo())
{
videoPlayer.getValue().playVideo(getContext(), entry);
VideoPlayer.Companion.playVideo(getContext(), entry);
}
else
{

View File

@ -85,7 +85,6 @@ public class SearchFragment extends Fragment {
private EntryAdapter songAdapter;
private SwipeRefreshLayout searchRefresh;
private final Lazy<VideoPlayer> videoPlayer = inject(VideoPlayer.class);
private final Lazy<MediaPlayerController> mediaPlayerControllerLazy = inject(MediaPlayerController.class);
private final Lazy<ImageLoaderProvider> imageLoaderProvider = inject(ImageLoaderProvider.class);
private final Lazy<DownloadHandler> downloadHandler = inject(DownloadHandler.class);
@ -576,7 +575,7 @@ public class SearchFragment extends Fragment {
private void onVideoSelected(MusicDirectory.Entry entry)
{
videoPlayer.getValue().playVideo(getContext(), entry);
VideoPlayer.Companion.playVideo(getContext(), entry);
}
private void autoplay()

View File

@ -21,7 +21,6 @@ import org.moire.ultrasonic.subsonic.DownloadHandler
import org.moire.ultrasonic.subsonic.ImageLoaderProvider
import org.moire.ultrasonic.subsonic.NetworkAndStorageChecker
import org.moire.ultrasonic.subsonic.ShareHandler
import org.moire.ultrasonic.subsonic.VideoPlayer
import org.moire.ultrasonic.util.Constants
/**
@ -76,6 +75,5 @@ val musicServiceModule = module {
single { DownloadHandler(get(), get()) }
single { NetworkAndStorageChecker(androidContext()) }
single { VideoPlayer() }
single { ShareHandler(androidContext()) }
}

View File

@ -81,7 +81,6 @@ class TrackCollectionFragment : Fragment() {
private var shareButton: MenuItem? = null
private val mediaPlayerController: MediaPlayerController by inject()
private val videoPlayer: VideoPlayer by inject()
private val downloadHandler: DownloadHandler by inject()
private val networkAndStorageChecker: NetworkAndStorageChecker by inject()
private val imageLoaderProvider: ImageLoaderProvider by inject()
@ -140,7 +139,7 @@ class TrackCollectionFragment : Fragment() {
bundle
)
} else if (entry != null && entry.isVideo) {
videoPlayer.playVideo(requireContext(), entry)
VideoPlayer.playVideo(requireContext(), entry)
} else {
enableButtons()
}

View File

@ -11,22 +11,25 @@ import org.moire.ultrasonic.util.Util
/**
* This utility class helps starting video playback
*/
@Suppress("UtilityClassWithPublicConstructor")
class VideoPlayer {
fun playVideo(context: Context, entry: MusicDirectory.Entry?) {
if (!Util.isNetworkConnected() || entry == null) {
Util.toast(context, R.string.select_album_no_network)
return
}
try {
val intent = Intent(Intent.ACTION_VIEW)
val url = MusicServiceFactory.getMusicService().getVideoUrl(entry.id)
intent.setDataAndType(
Uri.parse(url),
"video/*"
)
context.startActivity(intent)
} catch (e: Exception) {
Util.toast(context, e.toString(), false)
companion object {
fun playVideo(context: Context, entry: MusicDirectory.Entry?) {
if (!Util.isNetworkConnected() || entry == null) {
Util.toast(context, R.string.select_album_no_network)
return
}
try {
val intent = Intent(Intent.ACTION_VIEW)
val url = MusicServiceFactory.getMusicService().getVideoUrl(entry.id)
intent.setDataAndType(
Uri.parse(url),
"video/*"
)
context.startActivity(intent)
} catch (e: Exception) {
Util.toast(context, e.toString(), false)
}
}
}
}