From 44ff39f3721c205a9d2370efdc3537a38b56d67a Mon Sep 17 00:00:00 2001 From: Syed Ibrahim Date: Fri, 13 Jun 2025 20:32:40 +0530 Subject: [PATCH 1/5] ui enhancement --- .../player/DownloadActionBottomSheet.kt | 26 +++-- .../com/tpstreams/player/DownloadActions.kt | 6 +- .../src/main/res/drawable/ic_delete.xml | 5 + .../main/res/drawable/ic_pause_download.xml | 5 + .../main/res/drawable/ic_resume_download.xml | 5 + .../layout_download_action_bottom_sheet.xml | 104 ++++++++++++------ .../src/main/res/values/strings.xml | 8 +- 7 files changed, 110 insertions(+), 49 deletions(-) create mode 100644 tpstreams-android-player/src/main/res/drawable/ic_delete.xml create mode 100644 tpstreams-android-player/src/main/res/drawable/ic_pause_download.xml create mode 100644 tpstreams-android-player/src/main/res/drawable/ic_resume_download.xml diff --git a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt index 8775047..cb5dc7a 100644 --- a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt +++ b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt @@ -15,6 +15,7 @@ import com.google.android.material.bottomsheet.BottomSheetDialogFragment import com.google.android.material.button.MaterialButton import com.tpstreams.player.download.DownloadTracker import androidx.media3.exoplayer.offline.Download +import android.widget.ImageView class DownloadActionBottomSheet : BottomSheetDialogFragment() { @@ -63,9 +64,13 @@ class DownloadActionBottomSheet : BottomSheetDialogFragment() { downloadedLayout.visibility = View.GONE downloadingLayout.visibility = View.VISIBLE - val pauseResumeButton = view.findViewById(R.id.pause_resume_button) - pauseResumeButton.text = getString(R.string.pause_download) - pauseResumeButton.setOnClickListener { + val pauseResumeContainer = view.findViewById(R.id.pause_resume_container) + val pauseResumeIcon = view.findViewById(R.id.pause_resume_icon) + val pauseResumeText = view.findViewById(R.id.pause_resume_text) + + pauseResumeIcon.setImageResource(R.drawable.ic_pause_download) + pauseResumeText.text = getString(R.string.pause_download) + pauseResumeContainer.setOnClickListener { listener?.onPauseDownloadConfirmed() dismiss() } @@ -76,9 +81,13 @@ class DownloadActionBottomSheet : BottomSheetDialogFragment() { downloadedLayout.visibility = View.GONE downloadingLayout.visibility = View.VISIBLE - val pauseResumeButton = view.findViewById(R.id.pause_resume_button) - pauseResumeButton.text = getString(R.string.resume_download) - pauseResumeButton.setOnClickListener { + val pauseResumeContainer = view.findViewById(R.id.pause_resume_container) + val pauseResumeIcon = view.findViewById(R.id.pause_resume_icon) + val pauseResumeText = view.findViewById(R.id.pause_resume_text) + + pauseResumeIcon.setImageResource(R.drawable.ic_resume_download) + pauseResumeText.text = getString(R.string.resume_download) + pauseResumeContainer.setOnClickListener { listener?.onResumeDownloadConfirmed() dismiss() } @@ -129,9 +138,8 @@ class DownloadActionBottomSheet : BottomSheetDialogFragment() { dismiss() } - // Setup cancel button for downloading content - val cancelButton = view.findViewById(R.id.cancel_button) - cancelButton.setOnClickListener { + val deleteContainer = view.findViewById(R.id.delete_container) + deleteContainer.setOnClickListener { listener?.onCancelDownloadConfirmed() dismiss() } diff --git a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActions.kt b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActions.kt index 2a8ba14..4f9de28 100644 --- a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActions.kt +++ b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActions.kt @@ -111,9 +111,9 @@ class DownloadActions(private val view: TPStreamsPlayerView) { val downloadTracker = DownloadTracker.getInstance(view.context) return when { - downloadTracker.isDownloaded(assetId) -> "Downloaded" - downloadTracker.isDownloading(assetId) -> "Downloading" - downloadTracker.isPaused(assetId) -> "Paused" + downloadTracker.isDownloaded(uri) -> "Downloaded" + downloadTracker.isDownloading(uri) -> "Downloading" + downloadTracker.isPaused(uri) -> "Downloading Paused" else -> "Download" } } diff --git a/tpstreams-android-player/src/main/res/drawable/ic_delete.xml b/tpstreams-android-player/src/main/res/drawable/ic_delete.xml new file mode 100644 index 0000000..527568c --- /dev/null +++ b/tpstreams-android-player/src/main/res/drawable/ic_delete.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/tpstreams-android-player/src/main/res/drawable/ic_pause_download.xml b/tpstreams-android-player/src/main/res/drawable/ic_pause_download.xml new file mode 100644 index 0000000..e374cdb --- /dev/null +++ b/tpstreams-android-player/src/main/res/drawable/ic_pause_download.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/tpstreams-android-player/src/main/res/drawable/ic_resume_download.xml b/tpstreams-android-player/src/main/res/drawable/ic_resume_download.xml new file mode 100644 index 0000000..50d2cce --- /dev/null +++ b/tpstreams-android-player/src/main/res/drawable/ic_resume_download.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml b/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml index a19c740..1b31869 100644 --- a/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml +++ b/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml @@ -3,8 +3,8 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" - android:orientation="vertical" android:background="@drawable/bg_bottom_sheet" + android:orientation="vertical" android:paddingBottom="24dp"> @@ -21,25 +21,25 @@ android:id="@+id/title_text" android:layout_width="match_parent" android:layout_height="wrap_content" - android:text="@string/download_status_title" - android:textSize="18sp" - android:textStyle="bold" - android:textColor="#212121" android:layout_marginStart="16dp" android:layout_marginEnd="16dp" - android:layout_marginBottom="16dp" /> + android:layout_marginBottom="16dp" + android:text="@string/download_status_title" + android:textColor="#212121" + android:textSize="18sp" + android:textStyle="bold" /> + android:layout_marginBottom="24dp" + android:text="@string/download_status_message" + android:textColor="#757575" + android:textSize="14sp" /> - + - + android:layout_marginEnd="16dp" + android:orientation="vertical" + android:visibility="gone"> + - - - - + + + + + + + + + android:background="?attr/selectableItemBackground" + android:clickable="true" + android:focusable="true" + android:orientation="horizontal" + android:paddingTop="10dp" + android:paddingBottom="10dp"> + + + + + \ No newline at end of file diff --git a/tpstreams-android-player/src/main/res/values/strings.xml b/tpstreams-android-player/src/main/res/values/strings.xml index d9f8e93..535a3cb 100644 --- a/tpstreams-android-player/src/main/res/values/strings.xml +++ b/tpstreams-android-player/src/main/res/values/strings.xml @@ -28,16 +28,16 @@ Video download notifications Delete Download Are you sure you want to delete this downloaded video? - DELETE + Delete Downloading Your video is currently downloading Download Paused Your download has been paused Download Status Manage your download - PAUSE - RESUME - CANCEL + Pause + Resume + Cancel Playback speed From 3ff5f556182028127e52c8ee496477bbd53e8d20 Mon Sep 17 00:00:00 2001 From: Syed Ibrahim Date: Fri, 13 Jun 2025 20:38:49 +0530 Subject: [PATCH 2/5] ui enhance ment in downloaded action bottom sheet --- .../player/DownloadActionBottomSheet.kt | 7 ++-- .../layout_download_action_bottom_sheet.xml | 34 +++++++++++++++---- 2 files changed, 31 insertions(+), 10 deletions(-) diff --git a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt index cb5dc7a..441b7a9 100644 --- a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt +++ b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt @@ -131,13 +131,14 @@ class DownloadActionBottomSheet : BottomSheetDialogFragment() { override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) - // Setup delete button for downloaded content - val deleteButton = view.findViewById(R.id.delete_button) - deleteButton.setOnClickListener { + // Setup delete container for downloaded content + val downloadedDeleteContainer = view.findViewById(R.id.downloaded_delete_container) + downloadedDeleteContainer.setOnClickListener { listener?.onDeleteDownloadConfirmed() dismiss() } + // Setup delete container for downloading content val deleteContainer = view.findViewById(R.id.delete_container) deleteContainer.setOnClickListener { listener?.onCancelDownloadConfirmed() diff --git a/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml b/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml index 1b31869..09a818a 100644 --- a/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml +++ b/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml @@ -46,19 +46,39 @@ android:id="@+id/downloaded_layout" android:layout_width="match_parent" android:layout_height="wrap_content" + android:layout_marginStart="16dp" + android:layout_marginEnd="16dp" android:orientation="vertical" android:visibility="gone"> - + android:background="?attr/selectableItemBackground" + android:clickable="true" + android:focusable="true" + android:orientation="horizontal" + android:paddingTop="10dp" + android:paddingBottom="10dp"> + + + + + From 0607e104b6971d7431cee96e4caff611fe4a7d42 Mon Sep 17 00:00:00 2001 From: Syed Ibrahim Date: Sat, 14 Jun 2025 17:44:47 +0530 Subject: [PATCH 3/5] remove help text in the Download action bottom sheet --- .../player/DownloadActionBottomSheet.kt | 10 -------- .../layout_download_action_bottom_sheet.xml | 25 ------------------- 2 files changed, 35 deletions(-) diff --git a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt index 441b7a9..d2962e0 100644 --- a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt +++ b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActionBottomSheet.kt @@ -46,21 +46,15 @@ class DownloadActionBottomSheet : BottomSheetDialogFragment() { private fun updateUI() { val view = view ?: return - val titleTextView = view.findViewById(R.id.title_text) - val messageTextView = view.findViewById(R.id.message_text) val downloadedLayout = view.findViewById(R.id.downloaded_layout) val downloadingLayout = view.findViewById(R.id.downloading_layout) when (downloadState) { Download.STATE_COMPLETED -> { - titleTextView.text = getString(R.string.delete_download_title) - messageTextView.text = getString(R.string.delete_download_message) downloadedLayout.visibility = View.VISIBLE downloadingLayout.visibility = View.GONE } Download.STATE_DOWNLOADING -> { - titleTextView.text = getString(R.string.downloading_title) - messageTextView.text = getString(R.string.downloading_message) downloadedLayout.visibility = View.GONE downloadingLayout.visibility = View.VISIBLE @@ -76,8 +70,6 @@ class DownloadActionBottomSheet : BottomSheetDialogFragment() { } } Download.STATE_STOPPED -> { - titleTextView.text = getString(R.string.paused_download_title) - messageTextView.text = getString(R.string.paused_download_message) downloadedLayout.visibility = View.GONE downloadingLayout.visibility = View.VISIBLE @@ -93,8 +85,6 @@ class DownloadActionBottomSheet : BottomSheetDialogFragment() { } } else -> { - titleTextView.text = getString(R.string.download_status_title) - messageTextView.text = getString(R.string.download_status_message) downloadedLayout.visibility = View.GONE downloadingLayout.visibility = View.VISIBLE } diff --git a/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml b/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml index 09a818a..f24f5a5 100644 --- a/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml +++ b/tpstreams-android-player/src/main/res/layout/layout_download_action_bottom_sheet.xml @@ -16,31 +16,6 @@ android:layout_marginBottom="16dp" android:background="#CCCCCC" /> - - - - - - Date: Sat, 14 Jun 2025 17:51:46 +0530 Subject: [PATCH 4/5] improvements in action text --- tpstreams-android-player/src/main/res/drawable/ic_delete.xml | 4 ++-- tpstreams-android-player/src/main/res/values/strings.xml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/tpstreams-android-player/src/main/res/drawable/ic_delete.xml b/tpstreams-android-player/src/main/res/drawable/ic_delete.xml index 527568c..0d2e7fc 100644 --- a/tpstreams-android-player/src/main/res/drawable/ic_delete.xml +++ b/tpstreams-android-player/src/main/res/drawable/ic_delete.xml @@ -1,5 +1,5 @@ - + - + diff --git a/tpstreams-android-player/src/main/res/values/strings.xml b/tpstreams-android-player/src/main/res/values/strings.xml index 535a3cb..c61b2d5 100644 --- a/tpstreams-android-player/src/main/res/values/strings.xml +++ b/tpstreams-android-player/src/main/res/values/strings.xml @@ -28,7 +28,7 @@ Video download notifications Delete Download Are you sure you want to delete this downloaded video? - Delete + Delete from downloads Downloading Your video is currently downloading Download Paused From 2981aaffd264030f58fe51737761a957586a0a07 Mon Sep 17 00:00:00 2001 From: Syed Ibrahim Date: Mon, 16 Jun 2025 17:42:54 +0530 Subject: [PATCH 5/5] remove rebase references --- .../src/main/java/com/tpstreams/player/DownloadActions.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActions.kt b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActions.kt index 4f9de28..249254c 100644 --- a/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActions.kt +++ b/tpstreams-android-player/src/main/java/com/tpstreams/player/DownloadActions.kt @@ -111,9 +111,9 @@ class DownloadActions(private val view: TPStreamsPlayerView) { val downloadTracker = DownloadTracker.getInstance(view.context) return when { - downloadTracker.isDownloaded(uri) -> "Downloaded" - downloadTracker.isDownloading(uri) -> "Downloading" - downloadTracker.isPaused(uri) -> "Downloading Paused" + downloadTracker.isDownloaded(assetId) -> "Downloaded" + downloadTracker.isDownloading(assetId) -> "Downloading" + downloadTracker.isPaused(assetId) -> "Downloading Paused" else -> "Download" } }