Browse Source

Improve the equalizer selected state

merge-requests/2314/head
Nicolas Pomepuy 7 months ago
parent
commit
3d92464dd5
  1. 1
      application/resources/src/main/res/values/attrs.xml
  2. 2
      application/vlc-android/res/layout/equalizer_setting_item.xml
  3. 2
      application/vlc-android/res/values/styles.xml
  4. 14
      application/vlc-android/src/org/videolan/vlc/gui/EqualizerSettingsActivity.kt

1
application/resources/src/main/res/values/attrs.xml

@ -30,6 +30,7 @@
<attr name="audio_header_background" format="reference|color" />
<attr name="audio_header_divider" format="color" />
<attr name="default_divider" format="color" />
<attr name="subtle_selection" format="color" />
<attr name="audio_menu_icon" format="color" />
<attr name="audio_list_background" format="reference|color" />
<attr name="bottom_sheet_background" format="reference|color" />

2
application/vlc-android/res/layout/equalizer_setting_item.xml

@ -26,7 +26,7 @@
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:clickable="true"
android:background="@{current ? @color/orange_500_transparent_20 : @color/transparent}"
app:equalizerBackgroundColor="@{current}"
android:orientation="vertical"
android:focusable="true">

2
application/vlc-android/res/values/styles.xml

@ -43,6 +43,7 @@
<item name="audio_header_background">@color/white</item>
<item name="audio_header_divider">@color/grey400</item>
<item name="default_divider">@color/black_transparent_20</item>
<item name="subtle_selection">@color/black_transparent_10</item>
<item name="audio_menu_icon">@color/black_transparent_50</item>
<item name="audio_list_background">@drawable/audio_list_background</item>
<item name="audio_seek_bar">@drawable/audio_seekbar</item>
@ -236,6 +237,7 @@
<item name="audio_header_background">@color/mini_player_dark</item>
<item name="audio_header_divider">@color/black</item>
<item name="default_divider">@color/white_transparent_20</item>
<item name="subtle_selection">@color/white_transparent_10</item>
<item name="audio_menu_icon">@color/white_transparent_50</item>
<item name="audio_list_background">@drawable/audio_list_background_black</item>
<item name="audio_seek_bar">@drawable/audio_seekbar_black</item>

14
application/vlc-android/src/org/videolan/vlc/gui/EqualizerSettingsActivity.kt

@ -8,6 +8,7 @@ import android.graphics.Paint
import android.graphics.Path
import android.graphics.Rect
import android.graphics.RectF
import android.graphics.drawable.ColorDrawable
import android.os.Bundle
import android.util.Log
import android.util.TypedValue
@ -52,6 +53,7 @@ import org.videolan.vlc.util.FileUtils
import org.videolan.vlc.util.JsonUtil
import org.videolan.vlc.viewmodels.EqualizerViewModel
import org.videolan.vlc.viewmodels.EqualizerViewModelFactory
import androidx.core.graphics.drawable.toDrawable
private const val FILE_PICKER_RESULT_CODE = 10000
private const val FILE_PICKER_ALL_RESULT_CODE = 10001
@ -326,4 +328,16 @@ fun equalizerNameColor(view: TextView, item: EqualizerWithBands) {
view.setTextColor(color)
}
@BindingAdapter("equalizerBackgroundColor")
fun equalizerBackgroundColor(view: View, current: Boolean) {
if (current) {
val typedValue = TypedValue()
val theme = view.context.theme
theme.resolveAttribute(R.attr.subtle_selection, typedValue, true)
@ColorInt val color: Int = typedValue.data
view.background = color.toDrawable()
} else view.background = null
}

Loading…
Cancel
Save