ui: remove edge-to-edge option

Remove the edge-to-edge option, as it turned out to be useless
with #149.
This commit is contained in:
OxygenCobalt 2022-06-09 17:01:46 -06:00
parent 84295dcf25
commit 1d66907862
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47
28 changed files with 107 additions and 129 deletions

View file

@ -4,15 +4,19 @@
#### What's New
- Folders on external drives can now be excluded on Android Q+ [#134]
- Added toggle for edge-to-edge mode [#149]
- Playback bar now has a skip action
#### What's Improved
- The toolbar in the home UI now collapses when scrolling
- The toolbar layout is now consistent with Material Design 3
- Genre parsing now handles multiple integer values and cover/remix indicators (May wipe playback state)
- Playback bar now picks the larger inset in case that gesture inset is missing [#149]
#### Dev/Meta
- New translations [Fjuro -> Czech]
- Moved music loading to a foreground service
- Phased out `ImageButton` for `MaterialButton`
- Unified icon sizing
## v2.3.1

View file

@ -32,8 +32,6 @@ import org.oxycblt.auxio.music.IndexerService
import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.playback.system.PlaybackService
import org.oxycblt.auxio.settings.SettingsManager
import org.oxycblt.auxio.ui.accent.Accent
import org.oxycblt.auxio.util.getColorSafe
import org.oxycblt.auxio.util.getSystemBarInsetsCompat
import org.oxycblt.auxio.util.isNight
import org.oxycblt.auxio.util.logD
@ -56,13 +54,11 @@ class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val settingsManager = SettingsManager.getInstance()
setupTheme(settingsManager.theme, settingsManager.accent, settingsManager.useBlackTheme)
setupTheme()
val binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
setupEdgeToEdge(binding.root, settingsManager.edgeToEdge)
setupEdgeToEdge(binding.root)
logD("Activity created")
}
@ -111,41 +107,30 @@ class MainActivity : AppCompatActivity() {
return null
}
private fun setupTheme(theme: Int, accent: Accent, useBlackTheme: Boolean) {
private fun setupTheme() {
val settingsManager = SettingsManager.getInstance()
// Disable theme customization above Android 12, as it's far enough in as a version to
// the point where most phones should have an automatic option for light/dark theming.
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S) {
AppCompatDelegate.setDefaultNightMode(theme)
AppCompatDelegate.setDefaultNightMode(settingsManager.theme)
} else {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM)
}
// The black theme has a completely separate set of styles since style attributes cannot
// be modified at runtime.
if (isNight && useBlackTheme) {
logD("Applying black theme [accent $accent]")
setTheme(accent.blackTheme)
if (isNight && settingsManager.useBlackTheme) {
logD("Applying black theme [accent ${settingsManager.accent}]")
setTheme(settingsManager.accent.blackTheme)
} else {
logD("Applying normal theme [accent $accent]")
setTheme(accent.theme)
logD("Applying normal theme [accent ${settingsManager.accent}]")
setTheme(settingsManager.accent.theme)
}
}
private fun setupEdgeToEdge(contentView: View, enabled: Boolean) {
val fitsSystemWindows = !enabled
WindowCompat.setDecorFitsSystemWindows(window, fitsSystemWindows)
if (fitsSystemWindows) {
// Auxio's theme is normally set up to anticipate edge to edge mode being
// enabled. In the case that it is not, we have to update the values during
// runtime.
val controller = WindowCompat.getInsetsController(window, window.decorView)
val black = getColorSafe(android.R.color.black)
window.statusBarColor = black
controller.isAppearanceLightStatusBars = false
window.navigationBarColor = black
controller.isAppearanceLightNavigationBars = false
}
private fun setupEdgeToEdge(contentView: View) {
WindowCompat.setDecorFitsSystemWindows(window, false)
contentView.setOnApplyWindowInsetsListener { view, insets ->
val bars = insets.getSystemBarInsetsCompat(view)

View file

@ -141,13 +141,6 @@ class SettingsListFragment : PreferenceFragmentCompat() {
true
}
}
SettingsManager.KEY_EDGE_TO_EDGE -> {
onPreferenceChangeListener =
Preference.OnPreferenceChangeListener { _, _ ->
requireActivity().recreate()
true
}
}
SettingsManager.KEY_LIB_TABS -> {
onPreferenceClickListener =
Preference.OnPreferenceClickListener {

View file

@ -62,10 +62,6 @@ class SettingsManager private constructor(context: Context) :
}
}
/** Whether edge-to-edge is enabled. */
val edgeToEdge: Boolean
get() = inner.getBoolean(KEY_EDGE_TO_EDGE, true)
/**
* Whether to display the RepeatMode or the shuffle status on the notification. False if repeat,
* true if shuffle.
@ -308,7 +304,6 @@ class SettingsManager private constructor(context: Context) :
const val KEY_THEME = "KEY_THEME2"
const val KEY_BLACK_THEME = "KEY_BLACK_THEME"
const val KEY_ACCENT = "auxio_accent2"
const val KEY_EDGE_TO_EDGE = "auxio_edge"
const val KEY_LIB_TABS = "auxio_lib_tabs"
const val KEY_SHOW_COVERS = "KEY_SHOW_COVERS"

View file

@ -50,7 +50,7 @@ import org.oxycblt.auxio.util.getDrawableSafe
* of the view size, and corner radius application depending on user preference.
* @author OxygenCobalt
*
* TODO: Add an activation indicator to this view too
* TODO: Rework this layout into a total ViewGroup that enables more customization + an indicator
*/
class StyledImageView
@JvmOverloads

View file

@ -2,10 +2,10 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:tint="?attr/colorControlNormal"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="?attr/colorControlNormal">
<path
android:fillColor="@android:color/white"
android:pathData="M4.2,5l-0.7,1.9L17.6,12L3,12v8h18v-8.86L4.2,5zM7,17L5,17v-2h2v2zM19,17L9,17v-2h10v2z"/>
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M4.2,5l-0.7,1.9L17.6,12L3,12v8h18v-8.86L4.2,5zM7,17L5,17v-2h2v2zM19,17L9,17v-2h10v2z" />
</vector>

View file

@ -88,23 +88,23 @@
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_repeat"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:iconTint="@color/sel_accented"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_marginStart="@dimen/spacing_medium"
android:contentDescription="@string/desc_change_repeat"
app:icon="@drawable/ic_repeat"
app:iconTint="@color/sel_accented"
app:layout_constraintBottom_toBottomOf="@+id/playback_skip_prev"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@+id/playback_skip_prev" />
<Button
android:id="@+id/playback_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/desc_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_prev"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintEnd_toStartOf="@+id/playback_play_pause"
@ -126,11 +126,11 @@
<Button
android:id="@+id/playback_skip_next"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_next"
android:contentDescription="@string/desc_skip_next"
app:icon="@drawable/ic_skip_next"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintEnd_toStartOf="@+id/playback_shuffle"
app:layout_constraintStart_toEndOf="@+id/playback_play_pause"
@ -138,13 +138,13 @@
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_shuffle"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
android:layout_marginEnd="@dimen/spacing_medium"
android:contentDescription="@string/desc_shuffle"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
app:layout_constraintBottom_toBottomOf="@+id/playback_skip_next"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/playback_skip_next"

View file

@ -86,9 +86,9 @@
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_repeat"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_marginEnd="@dimen/spacing_large"
android:contentDescription="@string/desc_change_repeat"
app:icon="@drawable/ic_repeat"
@ -100,12 +100,12 @@
<Button
android:id="@+id/playback_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/desc_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_prev"
android:layout_marginEnd="@dimen/spacing_large"
android:contentDescription="@string/desc_skip_prev"
app:icon="@drawable/ic_skip_prev"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintEnd_toStartOf="@+id/playback_play_pause"
app:layout_constraintTop_toTopOf="@+id/playback_play_pause" />
@ -125,25 +125,25 @@
<Button
android:id="@+id/playback_skip_next"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_next"
android:layout_marginStart="@dimen/spacing_large"
android:contentDescription="@string/desc_skip_next"
app:icon="@drawable/ic_skip_next"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintStart_toEndOf="@+id/playback_play_pause"
app:layout_constraintTop_toTopOf="@+id/playback_play_pause" />
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_shuffle"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
android:layout_marginStart="@dimen/spacing_large"
android:contentDescription="@string/desc_shuffle"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
app:layout_constraintBottom_toBottomOf="@+id/playback_skip_next"
app:layout_constraintStart_toEndOf="@+id/playback_skip_next"
app:layout_constraintTop_toTopOf="@+id/playback_skip_next"

View file

@ -75,9 +75,9 @@
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_repeat"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_marginEnd="@dimen/spacing_mid_large"
android:contentDescription="@string/desc_change_repeat"
app:icon="@drawable/ic_repeat"
@ -89,12 +89,12 @@
<Button
android:id="@+id/playback_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/desc_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_prev"
android:layout_marginEnd="@dimen/spacing_mid_large"
android:contentDescription="@string/desc_skip_prev"
app:icon="@drawable/ic_skip_prev"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintEnd_toStartOf="@+id/playback_play_pause"
app:layout_constraintTop_toTopOf="@+id/playback_play_pause" />
@ -114,25 +114,25 @@
<Button
android:id="@+id/playback_skip_next"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_next"
android:layout_marginStart="@dimen/spacing_mid_large"
android:contentDescription="@string/desc_skip_next"
app:icon="@drawable/ic_skip_next"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintStart_toEndOf="@+id/playback_play_pause"
app:layout_constraintTop_toTopOf="@+id/playback_play_pause" />
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_shuffle"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
android:layout_marginStart="@dimen/spacing_mid_large"
android:contentDescription="@string/desc_shuffle"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
app:layout_constraintBottom_toBottomOf="@+id/playback_skip_next"
app:layout_constraintStart_toEndOf="@+id/playback_skip_next"
app:layout_constraintTop_toTopOf="@+id/playback_skip_next"

View file

@ -18,11 +18,11 @@
<TextView
android:id="@+id/playback_song"
style="@style/Widget.Auxio.TextView.Primary.Compact"
android:textAppearance="@style/TextAppearance.Auxio.LabelLarger"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacing_small"
android:layout_marginEnd="@dimen/spacing_small"
android:textAppearance="@style/TextAppearance.Auxio.LabelLarger"
app:layout_constraintBottom_toTopOf="@+id/playback_info"
app:layout_constraintEnd_toStartOf="@+id/playback_play_pause"
app:layout_constraintStart_toEndOf="@+id/playback_cover"
@ -33,12 +33,12 @@
<TextView
android:id="@+id/playback_info"
style="@style/Widget.Auxio.TextView.Secondary.Compact"
android:textAppearance="@style/TextAppearance.Auxio.LabelLarge"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacing_small"
android:layout_marginEnd="@dimen/spacing_small"
android:ellipsize="end"
android:textAppearance="@style/TextAppearance.Auxio.LabelLarge"
app:layout_constraintBottom_toBottomOf="@+id/playback_cover"
app:layout_constraintEnd_toStartOf="@+id/playback_play_pause"
app:layout_constraintStart_toEndOf="@+id/playback_cover"
@ -58,9 +58,9 @@
<Button
android:id="@+id/playback_skip_next"
style="@style/Widget.Auxio.Button.Icon.Medium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Medium"
android:layout_marginEnd="@dimen/spacing_tiny"
android:contentDescription="@string/desc_play_pause"
app:icon="@drawable/ic_skip_next"

View file

@ -89,9 +89,9 @@
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_repeat"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_marginStart="@dimen/spacing_medium"
android:contentDescription="@string/desc_change_repeat"
app:icon="@drawable/ic_repeat"
@ -103,10 +103,10 @@
<Button
android:id="@+id/playback_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/desc_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_prev"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintEnd_toStartOf="@+id/playback_play_pause"
@ -129,11 +129,11 @@
<Button
android:id="@+id/playback_skip_next"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_next"
android:contentDescription="@string/desc_skip_next"
app:icon="@drawable/ic_skip_next"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintEnd_toStartOf="@+id/playback_shuffle"
app:layout_constraintStart_toEndOf="@+id/playback_play_pause"
@ -141,13 +141,13 @@
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_shuffle"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
android:layout_marginEnd="@dimen/spacing_medium"
android:contentDescription="@string/desc_shuffle"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
app:layout_constraintBottom_toBottomOf="@+id/playback_skip_next"
app:layout_constraintEnd_toEndOf="@+id/playback_seek_bar"
app:layout_constraintTop_toTopOf="@+id/playback_skip_next"

View file

@ -12,11 +12,11 @@
<com.google.android.material.appbar.MaterialToolbar
android:id="@+id/home_toolbar"
style="@style/Widget.Auxio.Toolbar.Actions"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Toolbar.Actions"
app:menu="@menu/menu_home"
app:layout_scrollFlags="scroll|enterAlways"
app:menu="@menu/menu_home"
app:title="@string/info_app_name" />
<com.google.android.material.tabs.TabLayout
@ -49,8 +49,8 @@
android:id="@+id/home_indexing_status"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_marginBottom="@dimen/spacing_medium"
android:gravity="center"
android:textAppearance="@style/TextAppearance.Auxio.BodyLarge"
app:layout_constraintBottom_toTopOf="@+id/home_indexing_action"
app:layout_constraintTop_toTopOf="parent"

View file

@ -56,9 +56,9 @@
<Button
android:id="@+id/playback_skip_next"
style="@style/Widget.Auxio.Button.Icon.Medium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Medium"
android:layout_marginEnd="@dimen/spacing_tiny"
android:contentDescription="@string/desc_play_pause"
app:icon="@drawable/ic_skip_next"

View file

@ -72,9 +72,9 @@
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_repeat"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_marginStart="@dimen/spacing_medium"
android:contentDescription="@string/desc_change_repeat"
app:icon="@drawable/ic_repeat"
@ -85,10 +85,10 @@
<Button
android:id="@+id/playback_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/desc_skip_prev"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_prev"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintEnd_toStartOf="@+id/playback_play_pause"
@ -110,11 +110,11 @@
<Button
android:id="@+id/playback_skip_next"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_skip_next"
android:contentDescription="@string/desc_skip_next"
app:icon="@drawable/ic_skip_next"
app:layout_constraintBottom_toBottomOf="@+id/playback_play_pause"
app:layout_constraintEnd_toStartOf="@+id/playback_shuffle"
app:layout_constraintStart_toEndOf="@+id/playback_play_pause"
@ -122,13 +122,13 @@
<org.oxycblt.auxio.ui.IndicatorMaterialButton
android:id="@+id/playback_shuffle"
style="@style/Widget.Auxio.Button.Icon.Large"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Large"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
android:layout_marginEnd="@dimen/spacing_medium"
android:contentDescription="@string/desc_shuffle"
app:icon="@drawable/ic_shuffle"
app:iconTint="@color/sel_accented"
app:layout_constraintBottom_toBottomOf="@+id/playback_skip_next"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="@+id/playback_skip_next"

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:padding="@dimen/spacing_small"
android:theme="@style/ThemeOverlay.Accent">

View file

@ -26,10 +26,10 @@
<Button
android:id="@+id/excluded_clear"
style="@style/Widget.Auxio.Button.Icon.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/spacing_button_dialog"
style="@style/Widget.Auxio.Button.Icon.Small"
android:contentDescription="@string/desc_blacklist_delete"
app:icon="@drawable/ic_delete"
app:layout_constraintBottom_toBottomOf="parent"

View file

@ -63,11 +63,11 @@
<Button
android:id="@+id/song_drag_handle"
style="@style/Widget.Auxio.Button.Icon.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.Button.Icon.Small"
android:contentDescription="@string/desc_queue_handle"
android:layout_marginEnd="@dimen/spacing_tiny"
android:contentDescription="@string/desc_queue_handle"
app:icon="@drawable/ic_handle"
app:layout_constraintBottom_toBottomOf="@+id/song_album_cover"
app:layout_constraintEnd_toEndOf="parent"

View file

@ -21,8 +21,8 @@
style="@style/Widget.Auxio.Button.Icon.Small"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:contentDescription="@string/lbl_sort"
android:layout_marginEnd="@dimen/spacing_tiny"
android:contentDescription="@string/lbl_sort"
app:icon="@drawable/ic_sort"
app:layout_constraintBottom_toTopOf="@id/header_divider"
app:layout_constraintEnd_toEndOf="parent"

View file

@ -15,8 +15,8 @@
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacing_medium"
android:layout_marginTop="@dimen/spacing_small"
android:layout_marginBottom="@dimen/spacing_small"
android:layout_marginEnd="@dimen/spacing_medium"
android:layout_marginBottom="@dimen/spacing_small"
android:clickable="false"
android:focusable="false"
android:paddingStart="@dimen/spacing_medium"
@ -31,10 +31,10 @@
<Button
android:id="@+id/tab_drag_handle"
android:layout_marginEnd="@dimen/spacing_button_dialog"
style="@style/Widget.Auxio.Button.Icon.Small"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/spacing_button_dialog"
android:contentDescription="@string/desc_tab_handle"
app:icon="@drawable/ic_handle"
app:layout_constraintBottom_toBottomOf="@+id/tab_icon"

View file

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<com.google.android.material.slider.Slider
android:id="@+id/seek_bar_slider"
@ -21,22 +21,22 @@
android:id="@+id/seek_bar_position"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|start"
android:layout_marginStart="@dimen/spacing_medium"
android:layout_marginBottom="@dimen/spacing_tiny"
android:textAppearance="@style/TextAppearance.Auxio.BodyMedium"
android:textColor="@color/sel_accented_secondary"
android:layout_marginBottom="@dimen/spacing_tiny"
android:layout_gravity="bottom|start"
tools:text="11:38" />
<TextView
android:id="@+id/seek_bar_duration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_marginEnd="@dimen/spacing_medium"
android:layout_marginBottom="@dimen/spacing_tiny"
android:textAppearance="@style/TextAppearance.Auxio.BodyMedium"
android:textColor="?android:attr/textColorSecondary"
android:layout_gravity="bottom|end"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/playback_seek_bar"
tools:text="16:16" />

View file

@ -1,24 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Widget.Auxio.Toolbar.Actions" parent="Widget.Auxio.Toolbar.Base">
<item name="android:layout_marginEnd">@dimen/spacing_tiny_inv</item>
</style>
\
\
<style name="Widget.Auxio.Toolbar.Icon" parent="Widget.Auxio.Toolbar.Base">
<item name="navigationIcon">@drawable/ic_back</item>
<item name="android:layout_marginStart">@dimen/spacing_small_inv</item>
</style>
\
\
<style name="Widget.Auxio.Toolbar.Icon.Actions" parent="Widget.Auxio.Toolbar.Actions">
<item name="navigationIcon">@drawable/ic_back</item>
<item name="android:layout_marginStart">@dimen/spacing_small_inv</item>
</style>
\
\
<style name="Widget.Auxio.Toolbar.Icon.Down" parent="Widget.Auxio.Toolbar.Base">
<item name="navigationIcon">@drawable/ic_down</item>
<item name="android:layout_marginStart">@dimen/spacing_small_inv</item>
</style>
\
\
<style name="Widget.Auxio.Toolbar.Icon.Down.Actions" parent="Widget.Auxio.Toolbar.Actions">
<item name="navigationIcon">@drawable/ic_down</item>
<item name="android:layout_marginStart">@dimen/spacing_small_inv</item>

View file

@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Widget.Auxio.RecyclerView.WithAdaptiveFab" parent="">
<item name="android:paddingBottom">@dimen/recycler_fab_space_large</item>
</style>

View file

@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.Widget" parent="@android:style/Theme.DeviceDefault.DayNight">
<item name="colorSurface">@color/widget_surface</item>
<item name="colorPrimary">?android:attr/colorAccent</item>

View file

@ -57,6 +57,6 @@
<dimen name="widget_height_min">110dp</dimen>
<dimen name="widget_width_def">@dimen/widget_width_min</dimen>
<dimen name="widget_height_def">@dimen/widget_height_min</dimen>
<dimen name="abc_action_bar_default_padding_start_material">4dp</dimen>
</resources>

View file

@ -76,8 +76,6 @@
<string name="set_accent">Color scheme</string>
<string name="set_black_mode">Black theme</string>
<string name="set_black_mode_desc">Use a pure-black dark theme</string>
<string name="set_edge_to_edge">Edge-to-edge</string>
<string name="set_edge_to_edge_desc">May not work on all devices</string>
<string name="set_display">Display</string>
<string name="set_lib_tabs">Library tabs</string>

View file

@ -82,7 +82,7 @@
Hacks around the incorrectly-sized navigation icon in the Toolbar, changing it from
56dp to 48dp.
-->
<style name="Widget.Auxio.Toolbar.Navigation" parent="@style/Widget.AppCompat.Toolbar.Button.Navigation">
<style name="Widget.Auxio.Toolbar.Navigation" parent="Widget.AppCompat.Toolbar.Button.Navigation">
<item name="android:minWidth">@dimen/size_btn_small</item>
</style>
@ -90,7 +90,7 @@
Hacks around the old overflow button that was deliberately downsized to 36dp
(presumably for compat with older devices)
-->
<style name="Widget.Auxio.Button.Overflow" parent="@style/Widget.AppCompat.ActionButton.Overflow">
<style name="Widget.Auxio.Button.Overflow" parent="Widget.AppCompat.ActionButton.Overflow">
<item name="android:minWidth">@dimen/size_btn_small</item>
<item name="android:minHeight">@dimen/size_btn_small</item>
<item name="android:paddingStart">0dp</item>

View file

@ -20,19 +20,23 @@
-->
<item name="android:layout_marginEnd">4dp</item>
</style>
\
\
<style name="Widget.Auxio.Toolbar.Icon" parent="Widget.Auxio.Toolbar.Base">
<item name="navigationIcon">@drawable/ic_back</item>
</style>
\
\
<style name="Widget.Auxio.Toolbar.Icon.Actions" parent="Widget.Auxio.Toolbar.Actions">
<item name="navigationIcon">@drawable/ic_back</item>
</style>
\
\
<style name="Widget.Auxio.Toolbar.Icon.Down" parent="Widget.Auxio.Toolbar.Base">
<item name="navigationIcon">@drawable/ic_down</item>
</style>
\
\
<style name="Widget.Auxio.Toolbar.Icon.Down.Actions" parent="Widget.Auxio.Toolbar.Actions">
<item name="navigationIcon">@drawable/ic_down</item>
</style>
@ -59,7 +63,7 @@
<item name="android:maxWidth">@dimen/size_btn_small</item>
<item name="android:maxHeight">@dimen/size_btn_small</item>
</style>
<style name="Widget.Auxio.Button.Icon.Small" parent="Widget.Auxio.Button.Icon.Base">
<item name="iconSize">@dimen/size_icon_small</item>
<item name="android:insetTop">@dimen/spacing_tiny</item>

View file

@ -27,14 +27,6 @@
app:summary="@string/set_black_mode_desc"
app:title="@string/set_black_mode" />
<org.oxycblt.auxio.settings.pref.M3SwitchPreference
app:allowDividerBelow="false"
app:defaultValue="true"
app:iconSpaceReserved="false"
app:key="auxio_edge"
app:summary="@string/set_edge_to_edge_desc"
app:title="@string/set_edge_to_edge" />
</PreferenceCategory>
<PreferenceCategory