diff --git a/detekt-baseline.xml b/detekt-baseline.xml index 779abc17..8c94cff6 100644 --- a/detekt-baseline.xml +++ b/detekt-baseline.xml @@ -73,7 +73,6 @@ TooGenericExceptionCaught:MediaPlayerService.kt$MediaPlayerService$e: Exception TooGenericExceptionCaught:SongView.kt$SongView$e: Exception TooGenericExceptionCaught:SubsonicUncaughtExceptionHandler.kt$SubsonicUncaughtExceptionHandler$x: Throwable - TooGenericExceptionCaught:VideoPlayer.kt$VideoPlayer$e: Exception TooGenericExceptionThrown:DownloadFile.kt$DownloadFile.DownloadTask$throw Exception(String.format("Download of '%s' was cancelled", song)) TooManyFunctions:LocalMediaPlayer.kt$LocalMediaPlayer TooManyFunctions:MediaPlayerService.kt$MediaPlayerService : Service diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/BookmarksFragment.java b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/BookmarksFragment.java index 74cdbfb8..41a4c814 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/BookmarksFragment.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/BookmarksFragment.java @@ -52,7 +52,6 @@ public class BookmarksFragment extends Fragment { private ImageView downloadButton; private ImageView deleteButton; - private final Lazy videoPlayer = inject(VideoPlayer.class); private final Lazy mediaPlayerController = inject(MediaPlayerController.class); private final Lazy imageLoader = inject(ImageLoaderProvider.class); private final Lazy 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 { diff --git a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SearchFragment.java b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SearchFragment.java index a3cd9b4a..76761f5b 100644 --- a/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SearchFragment.java +++ b/ultrasonic/src/main/java/org/moire/ultrasonic/fragment/SearchFragment.java @@ -85,7 +85,6 @@ public class SearchFragment extends Fragment { private EntryAdapter songAdapter; private SwipeRefreshLayout searchRefresh; - private final Lazy videoPlayer = inject(VideoPlayer.class); private final Lazy mediaPlayerControllerLazy = inject(MediaPlayerController.class); private final Lazy imageLoaderProvider = inject(ImageLoaderProvider.class); private final Lazy 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() diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/di/MusicServiceModule.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/di/MusicServiceModule.kt index 39c3fe91..7751557c 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/di/MusicServiceModule.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/di/MusicServiceModule.kt @@ -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()) } } diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/TrackCollectionFragment.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/TrackCollectionFragment.kt index c9d7affb..f370ab9f 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/TrackCollectionFragment.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/fragment/TrackCollectionFragment.kt @@ -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() } diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/subsonic/VideoPlayer.kt b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/subsonic/VideoPlayer.kt index 152aa89a..a310bd84 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/subsonic/VideoPlayer.kt +++ b/ultrasonic/src/main/kotlin/org/moire/ultrasonic/subsonic/VideoPlayer.kt @@ -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) + } } } }