Merge pull request #558 from ultrasonic/video-cleanup

Video call can be static
This commit is contained in:
Nite 2021-08-25 16:28:22 +02:00 committed by GitHub
commit bd34345c12
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 21 additions and 24 deletions

View File

@ -73,7 +73,6 @@
<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>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 (all: Exception) {
Util.toast(context, all.toString(), false)
}
}
}
}