diff --git a/app/src/main/java/com/github/libretube/ui/fragments/AudioPlayerFragment.kt b/app/src/main/java/com/github/libretube/ui/fragments/AudioPlayerFragment.kt index 3cbb74d93..5d7773fa4 100644 --- a/app/src/main/java/com/github/libretube/ui/fragments/AudioPlayerFragment.kt +++ b/app/src/main/java/com/github/libretube/ui/fragments/AudioPlayerFragment.kt @@ -168,28 +168,7 @@ class AudioPlayerFragment : Fragment(), AudioPlayerOptions { ) } - binding.download.setOnClickListener { - val videoId = PlayingQueue.getCurrent()?.url?.toID() ?: return@setOnClickListener - - val newFragment = DownloadDialog() - newFragment.arguments = bundleOf(IntentData.videoId to videoId) - newFragment.show(childFragmentManager, DownloadDialog::class.java.name) - } - - binding.share.setOnClickListener { - val currentVideo = PlayingQueue.getCurrent() ?: return@setOnClickListener - - val bundle = bundleOf( - IntentData.id to currentVideo.url!!.toID(), - IntentData.shareObjectType to ShareObjectType.VIDEO, - IntentData.shareData to ShareData(currentVideo = currentVideo.title) - ) - val newShareDialog = ShareDialog() - newShareDialog.arguments = bundle - newShareDialog.show(childFragmentManager, null) - } - - binding.chapters.setOnClickListener { + binding.openChapters.setOnClickListener { val playerService = playerService ?: return@setOnClickListener viewModel.chaptersLiveData.value = playerService.streams?.chapters.orEmpty() @@ -197,6 +176,12 @@ class AudioPlayerFragment : Fragment(), AudioPlayerOptions { .show(childFragmentManager) } + binding.close.setOnClickListener { + activity?.unbindService(connection) + BackgroundHelper.stopBackgroundPlay(requireContext()) + killFragment() + } + binding.miniPlayerClose.setOnClickListener { activity?.unbindService(connection) BackgroundHelper.stopBackgroundPlay(requireContext()) @@ -214,6 +199,10 @@ class AudioPlayerFragment : Fragment(), AudioPlayerOptions { if (isPaused) playerService?.play() else playerService?.pause() } + binding.showMore.setOnClickListener { + onLongTap() + } + // load the stream info into the UI updateStreamInfo() @@ -371,7 +360,7 @@ class AudioPlayerFragment : Fragment(), AudioPlayerOptions { } playerService?.onNewVideo = { streams, videoId -> updateStreamInfo(streams.toStreamItem(videoId)) - _binding?.chapters?.isVisible = streams.chapters.isNotEmpty() + _binding?.openChapters?.isVisible = streams.chapters.isNotEmpty() } initializeSeekBar() } @@ -400,7 +389,7 @@ class AudioPlayerFragment : Fragment(), AudioPlayerOptions { override fun onLongTap() { val current = PlayingQueue.getCurrent() ?: return VideoOptionsBottomSheet() - .apply { arguments = bundleOf(IntentData.shareData to current) } + .apply { arguments = bundleOf(IntentData.streamItem to current) } .show(childFragmentManager) } diff --git a/app/src/main/res/layout/fragment_audio_player.xml b/app/src/main/res/layout/fragment_audio_player.xml index f6ef5bdb4..7e550131f 100644 --- a/app/src/main/res/layout/fragment_audio_player.xml +++ b/app/src/main/res/layout/fragment_audio_player.xml @@ -56,6 +56,22 @@ app:track="@drawable/player_switch_track" app:trackTint="?colorControlNormal" /> + + + + + android:layout_marginTop="30dp" + app:shapeAppearanceOverlay="@style/CardOnlyBottomCorners"> - - - - + + + + + + + + android:id="@+id/show_more" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="end|center_vertical" + android:background="?attr/selectableItemBackgroundBorderless" + android:scaleX="0.9" + android:scaleY="0.9" + android:src="@drawable/ic_three_dots" /> - - - - - + diff --git a/app/src/main/res/values/style.xml b/app/src/main/res/values/style.xml index eb3c36cf1..ec3fa839d 100644 --- a/app/src/main/res/values/style.xml +++ b/app/src/main/res/values/style.xml @@ -196,6 +196,14 @@ ?android:attr/textColorPrimary + + - -