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

View File

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

View File

@ -85,7 +85,6 @@ public class SearchFragment extends Fragment {
private EntryAdapter songAdapter; private EntryAdapter songAdapter;
private SwipeRefreshLayout searchRefresh; private SwipeRefreshLayout searchRefresh;
private final Lazy<VideoPlayer> videoPlayer = inject(VideoPlayer.class);
private final Lazy<MediaPlayerController> mediaPlayerControllerLazy = inject(MediaPlayerController.class); private final Lazy<MediaPlayerController> mediaPlayerControllerLazy = inject(MediaPlayerController.class);
private final Lazy<ImageLoaderProvider> imageLoaderProvider = inject(ImageLoaderProvider.class); private final Lazy<ImageLoaderProvider> imageLoaderProvider = inject(ImageLoaderProvider.class);
private final Lazy<DownloadHandler> downloadHandler = inject(DownloadHandler.class); private final Lazy<DownloadHandler> downloadHandler = inject(DownloadHandler.class);
@ -576,7 +575,7 @@ public class SearchFragment extends Fragment {
private void onVideoSelected(MusicDirectory.Entry entry) private void onVideoSelected(MusicDirectory.Entry entry)
{ {
videoPlayer.getValue().playVideo(getContext(), entry); VideoPlayer.Companion.playVideo(getContext(), entry);
} }
private void autoplay() 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.ImageLoaderProvider
import org.moire.ultrasonic.subsonic.NetworkAndStorageChecker import org.moire.ultrasonic.subsonic.NetworkAndStorageChecker
import org.moire.ultrasonic.subsonic.ShareHandler import org.moire.ultrasonic.subsonic.ShareHandler
import org.moire.ultrasonic.subsonic.VideoPlayer
import org.moire.ultrasonic.util.Constants import org.moire.ultrasonic.util.Constants
/** /**
@ -76,6 +75,5 @@ val musicServiceModule = module {
single { DownloadHandler(get(), get()) } single { DownloadHandler(get(), get()) }
single { NetworkAndStorageChecker(androidContext()) } single { NetworkAndStorageChecker(androidContext()) }
single { VideoPlayer() }
single { ShareHandler(androidContext()) } single { ShareHandler(androidContext()) }
} }

View File

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

View File

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