From 744a650a911ce8e35b5789013c0a7768e0ef18a7 Mon Sep 17 00:00:00 2001 From: Michatec Date: Sat, 18 Apr 2026 17:53:52 +0200 Subject: [PATCH] feat(ui): use checkbox to indicate reordering station status --- .../radio/collection/CollectionAdapter.kt | 16 +++++++--------- .../res/color/selector_card_station_stroke.xml | 2 ++ app/src/main/res/layout/card_station.xml | 12 +++++++++++- 3 files changed, 20 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/michatec/radio/collection/CollectionAdapter.kt b/app/src/main/java/com/michatec/radio/collection/CollectionAdapter.kt index b4205be..7b32fa9 100644 --- a/app/src/main/java/com/michatec/radio/collection/CollectionAdapter.kt +++ b/app/src/main/java/com/michatec/radio/collection/CollectionAdapter.kt @@ -3,7 +3,6 @@ package com.michatec.radio.collection import android.annotation.SuppressLint import android.content.Context import android.content.SharedPreferences -import android.content.res.ColorStateList import android.text.Editable import android.text.TextWatcher import android.view.KeyEvent @@ -11,12 +10,12 @@ import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.view.inputmethod.EditorInfo +import android.widget.CheckBox import android.widget.ImageView import android.widget.ProgressBar import android.widget.TextView import androidx.appcompat.app.AppCompatActivity import androidx.constraintlayout.widget.Group -import androidx.core.content.ContextCompat import androidx.core.net.toUri import androidx.core.view.isGone import androidx.core.view.isVisible @@ -180,7 +179,6 @@ class CollectionAdapter( // get reference to StationViewHolder val stationViewHolder: StationViewHolder = holder - // set up station views setStarredIcon(stationViewHolder, station) setStationName(stationViewHolder, station) @@ -190,13 +188,12 @@ class CollectionAdapter( setPlaybackProgress(stationViewHolder, station) setDownloadProgress(stationViewHolder, station) - // highlight if reordering if (reorderStationUuid == station.uuid) { - stationViewHolder.stationCardView.setStrokeColor( - ColorStateList.valueOf( - ContextCompat.getColor(context, R.color.cardview_reordering) - ) - ) + stationViewHolder.reorderCheckbox.isVisible = true + stationViewHolder.reorderCheckbox.isChecked = true + } else { + stationViewHolder.reorderCheckbox.isGone = true + stationViewHolder.reorderCheckbox.isChecked = false } // show / hide edit views @@ -774,6 +771,7 @@ class CollectionAdapter( val stationImageView: ImageView = stationCardLayout.findViewById(R.id.station_icon) val stationNameView: TextView = stationCardLayout.findViewById(R.id.station_name) val stationStarredView: ImageView = stationCardLayout.findViewById(R.id.starred_icon) + val reorderCheckbox: CheckBox = stationCardLayout.findViewById(R.id.reorder_checkbox) val bufferingProgress: ProgressBar = stationCardLayout.findViewById(R.id.buffering_progress) val downloadProgress: ProgressBar = stationCardLayout.findViewById(R.id.download_progress) diff --git a/app/src/main/res/color/selector_card_station_stroke.xml b/app/src/main/res/color/selector_card_station_stroke.xml index 8099fff..a79e9b3 100644 --- a/app/src/main/res/color/selector_card_station_stroke.xml +++ b/app/src/main/res/color/selector_card_station_stroke.xml @@ -1,5 +1,7 @@ + + \ No newline at end of file diff --git a/app/src/main/res/layout/card_station.xml b/app/src/main/res/layout/card_station.xml index b15c571..4f83822 100644 --- a/app/src/main/res/layout/card_station.xml +++ b/app/src/main/res/layout/card_station.xml @@ -61,6 +61,16 @@ app:shapeAppearanceOverlay="@style/RoundedCorners" app:srcCompat="@drawable/ic_image_white_36dp" /> + +