From e59b26cb0e231478899c23e13b84fd725db6761b Mon Sep 17 00:00:00 2001 From: LagradOst Date: Wed, 4 Aug 2021 16:28:36 +0200 Subject: [PATCH] speed UI --- app/build.gradle | 6 +-- .../cloudstream3/ui/player/PlayerFragment.kt | 42 +++++++++++++++++-- .../main/res/layout/player_select_speed.xml | 33 +++++++++++++++ app/src/main/res/values/strings.xml | 1 + 4 files changed, 75 insertions(+), 7 deletions(-) create mode 100644 app/src/main/res/layout/player_select_speed.xml diff --git a/app/build.gradle b/app/build.gradle index 66d38ebd..97638d39 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -13,8 +13,8 @@ android { applicationId "com.lagradost.cloudstream3" minSdkVersion 21 targetSdkVersion 30 - versionCode 9 - versionName "1.1.7" + versionCode 10 + versionName "1.1.8" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" @@ -50,7 +50,7 @@ repositories { dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" implementation 'androidx.core:core-ktx:1.6.0' - implementation 'androidx.appcompat:appcompat:1.3.0' + implementation 'androidx.appcompat:appcompat:1.3.1' implementation 'com.google.android.material:material:1.4.0' implementation 'androidx.constraintlayout:constraintlayout:2.0.4' implementation 'androidx.navigation:navigation-fragment-ktx:2.3.5' diff --git a/app/src/main/java/com/lagradost/cloudstream3/ui/player/PlayerFragment.kt b/app/src/main/java/com/lagradost/cloudstream3/ui/player/PlayerFragment.kt index 3bc7f80e..54ed49e8 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/ui/player/PlayerFragment.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/ui/player/PlayerFragment.kt @@ -799,6 +799,7 @@ class PlayerFragment : Fragment() { Typeface.SANS_SERIF ) ) + subs.translationY = -10.toPx.toFloat() settingsManager = PreferenceManager.getDefaultSharedPreferences(activity) swipeEnabled = settingsManager.getBoolean("swipe_enabled", true) @@ -1116,9 +1117,41 @@ class PlayerFragment : Fragment() { playback_speed_btt.setOnClickListener { lateinit var dialog: AlertDialog // Lmao kind bad - val speedsText = arrayOf("0.5x", "0.75x", "1x", "1.25x", "1.5x", "1.75x", "2x") - val speedsNumbers = arrayOf(0.5f, 0.75f, 1f, 1.25f, 1.5f, 1.75f, 2f) - val builder = AlertDialog.Builder(requireContext(), R.style.AlertDialogCustom) + val speedsText = listOf("0.5x", "0.75x", "1x", "1.25x", "1.5x", "1.75x", "2x") + val speedsNumbers = listOf(0.5f, 0.75f, 1f, 1.25f, 1.5f, 1.75f, 2f) + val builder = + AlertDialog.Builder(requireContext(), R.style.AlertDialogCustom).setView(R.layout.player_select_speed) + + val speedDialog = builder.create() + speedDialog.show() + + val speedList = speedDialog.findViewById(R.id.sort_speed)!! + // val applyButton = speedDialog.findViewById(R.id.pick_source_apply)!! + // val cancelButton = speedDialog.findViewById(R.id.pick_source_cancel)!! + + val arrayAdapter = ArrayAdapter(view.context, R.layout.sort_bottom_single_choice) + arrayAdapter.addAll(speedsText) + + speedList.adapter = arrayAdapter + speedList.choiceMode = AbsListView.CHOICE_MODE_SINGLE + + val speedIndex = speedsNumbers.indexOf(playbackSpeed) + + speedList.setSelection(speedIndex) + speedList.setItemChecked(speedIndex, true) + + speedList.setOnItemClickListener { _, _, which, _ -> + playbackSpeed = speedsNumbers[which] + requireContext().setKey(PLAYBACK_SPEED_KEY, playbackSpeed) + val param = PlaybackParameters(playbackSpeed) + exoPlayer.playbackParameters = param + player_speed_text.text = "Speed (${playbackSpeed}x)".replace(".0x", "x") + + speedDialog.dismiss() + activity?.hideSystemUI() + } + + /* builder.setTitle("Pick playback speed") builder.setOnDismissListener { activity?.hideSystemUI() @@ -1137,8 +1170,9 @@ class PlayerFragment : Fragment() { dialog.dismiss() activity?.hideSystemUI() } + dialog = builder.create() - dialog.show() + dialog.show()*/ } sources_btt.setOnClickListener { diff --git a/app/src/main/res/layout/player_select_speed.xml b/app/src/main/res/layout/player_select_speed.xml new file mode 100644 index 00000000..c0c65718 --- /dev/null +++ b/app/src/main/res/layout/player_select_speed.xml @@ -0,0 +1,33 @@ + + + + + + + diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 260b2173..70358787 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -69,4 +69,5 @@ Play Episode Apply Cancel + Player Speed \ No newline at end of file