search: fix mismatched filter ids
Fix an issue were (at some point) the filter ID for display modes was swapped out for drawable IDs.
This commit is contained in:
parent
217ced8ade
commit
8b8eebdd95
5 changed files with 19 additions and 17 deletions
|
@ -4,13 +4,14 @@
|
||||||
|
|
||||||
#### What's New
|
#### What's New
|
||||||
- Added a shuffle shortcut
|
- Added a shuffle shortcut
|
||||||
- Reworked the button appearance on widgets
|
- Widgets now have a more sleek and consistent button layout
|
||||||
|
- "Rounded album covers" is now "Round mode"
|
||||||
- You can now customize what occurs when a song is played from an album/artist/genre [#164]
|
- You can now customize what occurs when a song is played from an album/artist/genre [#164]
|
||||||
|
|
||||||
#### What's Improved
|
#### What's Improved
|
||||||
- Made "timeline" elements (like playback controls) always left-to-right
|
- Made "timeline" elements (like playback controls) always left-to-right
|
||||||
- Improved performance when ReplayGain is not enabled
|
- Improved performance when ReplayGain is not enabled
|
||||||
- Playback bar now has rounded corners (when rounded covers is enabled)
|
- Playback bar now has rounded corners (when round mode is enabled)
|
||||||
- Massively improved main layout performance
|
- Massively improved main layout performance
|
||||||
|
|
||||||
#### What's Fixed
|
#### What's Fixed
|
||||||
|
@ -21,7 +22,8 @@
|
||||||
- Fixed crash if settings was navigated away before playback state
|
- Fixed crash if settings was navigated away before playback state
|
||||||
finished saving
|
finished saving
|
||||||
- Fixed broken album menu
|
- Fixed broken album menu
|
||||||
- Fixed crash that would occur when opening a file on some devices #176
|
- Fixed crash that would occur when opening a file on some devices [#176]
|
||||||
|
- Fixed issue where the search filter menu would not display the correct mode
|
||||||
|
|
||||||
#### What's Changed
|
#### What's Changed
|
||||||
- Reworked typography and iconography to be more aligned with material design guidelines
|
- Reworked typography and iconography to be more aligned with material design guidelines
|
||||||
|
|
|
@ -25,6 +25,13 @@ import com.google.android.material.button.MaterialButton
|
||||||
import org.oxycblt.auxio.R
|
import org.oxycblt.auxio.R
|
||||||
import org.oxycblt.auxio.util.getDrawableSafe
|
import org.oxycblt.auxio.util.getDrawableSafe
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Extends [MaterialButton] to add a dot indicator to the bottom of the view.
|
||||||
|
*
|
||||||
|
* TODO: Experiment with the "grade" attribute on Material Icons so that I can replace this
|
||||||
|
*
|
||||||
|
* @author OxygenCobalt
|
||||||
|
*/
|
||||||
class IndicatorMaterialButton
|
class IndicatorMaterialButton
|
||||||
@JvmOverloads
|
@JvmOverloads
|
||||||
constructor(context: Context, attrs: AttributeSet? = null, @AttrRes defStyleAttr: Int = 0) :
|
constructor(context: Context, attrs: AttributeSet? = null, @AttrRes defStyleAttr: Int = 0) :
|
||||||
|
|
|
@ -57,8 +57,6 @@ constructor(
|
||||||
private val binding = ViewSeekBarBinding.inflate(context.inflater, this, true)
|
private val binding = ViewSeekBarBinding.inflate(context.inflater, this, true)
|
||||||
|
|
||||||
init {
|
init {
|
||||||
// As per the Material Design guidelines, timeline elements like SeekBars and Controls
|
|
||||||
// should always be LTR.
|
|
||||||
binding.seekBarSlider.addOnSliderTouchListener(this)
|
binding.seekBarSlider.addOnSliderTouchListener(this)
|
||||||
binding.seekBarSlider.addOnChangeListener(this)
|
binding.seekBarSlider.addOnChangeListener(this)
|
||||||
}
|
}
|
||||||
|
|
|
@ -53,10 +53,10 @@ enum class DisplayMode {
|
||||||
val itemId: Int
|
val itemId: Int
|
||||||
get() =
|
get() =
|
||||||
when (this) {
|
when (this) {
|
||||||
SHOW_SONGS -> R.drawable.ic_song_24
|
SHOW_SONGS -> R.id.option_filter_songs
|
||||||
SHOW_ALBUMS -> R.drawable.ic_album_24
|
SHOW_ALBUMS -> R.id.option_filter_albums
|
||||||
SHOW_ARTISTS -> R.drawable.ic_artist_24
|
SHOW_ARTISTS -> R.id.option_filter_artists
|
||||||
SHOW_GENRES -> R.drawable.ic_genre_24
|
SHOW_GENRES -> R.id.option_filter_genres
|
||||||
}
|
}
|
||||||
|
|
||||||
val intCode: Int
|
val intCode: Int
|
||||||
|
|
|
@ -60,8 +60,6 @@ class WidgetComponent(private val context: Context) :
|
||||||
* Force-update the widget.
|
* Force-update the widget.
|
||||||
*/
|
*/
|
||||||
fun update() {
|
fun update() {
|
||||||
// TODO: Respond to rounded covers
|
|
||||||
|
|
||||||
// Updating Auxio's widget is unlike the rest of Auxio for a few reasons:
|
// Updating Auxio's widget is unlike the rest of Auxio for a few reasons:
|
||||||
// 1. We can't use the typical primitives like ViewModels
|
// 1. We can't use the typical primitives like ViewModels
|
||||||
// 2. The component range is far smaller, so we have to do some odd hacks to get
|
// 2. The component range is far smaller, so we have to do some odd hacks to get
|
||||||
|
@ -86,19 +84,16 @@ class WidgetComponent(private val context: Context) :
|
||||||
override fun onConfigRequest(builder: ImageRequest.Builder): ImageRequest.Builder {
|
override fun onConfigRequest(builder: ImageRequest.Builder): ImageRequest.Builder {
|
||||||
val cornerRadius =
|
val cornerRadius =
|
||||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) {
|
||||||
|
// Android 12, always round the cover with the app widget's inner radius
|
||||||
context.getDimenSizeSafe(android.R.dimen.system_app_widget_inner_radius)
|
context.getDimenSizeSafe(android.R.dimen.system_app_widget_inner_radius)
|
||||||
} else if (settings.roundMode) {
|
} else if (settings.roundMode) {
|
||||||
|
// < Android 12, but the user still enabled round mode.
|
||||||
context.getDimenSizeSafe(R.dimen.size_corners_large)
|
context.getDimenSizeSafe(R.dimen.size_corners_large)
|
||||||
} else {
|
} else {
|
||||||
|
// User did not enable round mode.
|
||||||
0
|
0
|
||||||
}
|
}
|
||||||
|
|
||||||
// The widget has two distinct styles that we must transform the album art to
|
|
||||||
// accommodate:
|
|
||||||
// - Before Android 12, the widget has hard edges, so we don't need to round
|
|
||||||
// out the album art.
|
|
||||||
// - After Android 12, the widget has round edges, so we need to round out
|
|
||||||
// the album art. I dislike this, but it's mainly for stylistic cohesion.
|
|
||||||
return if (cornerRadius > 0) {
|
return if (cornerRadius > 0) {
|
||||||
this@WidgetComponent.logD("Loading round covers: $cornerRadius")
|
this@WidgetComponent.logD("Loading round covers: $cornerRadius")
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue