Merge pull request #558 from ultrasonic/video-cleanup
Video call can be static
This commit is contained in:
commit
bd34345c12
|
@ -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>
|
||||||
|
|
|
@ -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
|
||||||
{
|
{
|
||||||
|
|
|
@ -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()
|
||||||
|
|
|
@ -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()) }
|
||||||
}
|
}
|
||||||
|
|
|
@ -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()
|
||||||
}
|
}
|
||||||
|
|
|
@ -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)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue