widgets: rework button appearance

Further rework the button layout to be alike to other modern widgets.

This changeset transforms the play button into a FAB-ish thing,
makes spacing coherent between the uses of each layout, and adds
spacers to make the buttons layout in a more appealing way.
This commit is contained in:
OxygenCobalt 2022-07-01 12:25:59 -06:00
parent e883336b04
commit e41645ee28
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47
73 changed files with 407 additions and 341 deletions

View file

@ -20,10 +20,10 @@
- Fixed crash if settings was navigated away before playback state
finished saving
- Fixed broken album menu
- Fixed crash that would occur when opening a file on some devices #176
#### 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
#### Dev/Meta
- Migrated preferences from shared object to utility

View file

@ -161,7 +161,7 @@ private class IndexerNotification(private val context: Context) :
}
setSmallIcon(R.drawable.ic_indexer_32)
setCategory(NotificationCompat.CATEGORY_SERVICE)
setCategory(NotificationCompat.CATEGORY_PROGRESS)
setShowWhen(false)
setSilent(true)
setContentIntent(context.newMainPendingIntent())

View file

@ -65,7 +65,7 @@ class NotificationComponent(
}
setSmallIcon(R.drawable.ic_auxio_24)
setCategory(NotificationCompat.CATEGORY_SERVICE)
setCategory(NotificationCompat.CATEGORY_TRANSPORT)
setShowWhen(false)
setSilent(true)
setContentIntent(context.newMainPendingIntent())
@ -110,6 +110,7 @@ class NotificationComponent(
object : BitmapProvider.Target {
override fun onCompleted(bitmap: Bitmap?) {
setLargeIcon(bitmap)
build()
callback.onNotificationChanged(this@NotificationComponent)
}
})
@ -118,7 +119,6 @@ class NotificationComponent(
/** Set the playing icon on the notification */
fun updatePlaying(isPlaying: Boolean) {
mActions[2] = buildPlayPauseAction(context, isPlaying)
if (!provider.isBusy) {
callback.onNotificationChanged(this)
}
@ -127,7 +127,6 @@ class NotificationComponent(
/** Update the first action to reflect the [repeatMode] given. */
fun updateRepeatMode(repeatMode: RepeatMode) {
mActions[0] = buildRepeatAction(context, repeatMode)
if (!provider.isBusy) {
callback.onNotificationChanged(this)
}
@ -136,7 +135,6 @@ class NotificationComponent(
/** Update the first action to reflect whether the queue is shuffled or not */
fun updateShuffled(isShuffled: Boolean) {
mActions[0] = buildShuffleAction(context, isShuffled)
if (!provider.isBusy) {
callback.onNotificationChanged(this)
}

View file

@ -60,7 +60,6 @@ class WidgetComponent(private val context: Context) :
* Force-update the widget.
*/
fun update() {
// TODO: Rework margins/button layout to do the magic that other button bars do
// TODO: Respond to rounded covers
// Updating Auxio's widget is unlike the rest of Auxio for a few reasons:

View file

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:alpha="0.24" android:color="?attr/colorOnPrimary" />
</selector>

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M11,17H13V11H11ZM12,9Q12.425,9 12.713,8.712Q13,8.425 13,8Q13,7.575 12.713,7.287Q12.425,7 12,7Q11.575,7 11.288,7.287Q11,7.575 11,8Q11,8.425 11.288,8.712Q11.575,9 12,9ZM12,22Q9.925,22 8.1,21.212Q6.275,20.425 4.925,19.075Q3.575,17.725 2.788,15.9Q2,14.075 2,12Q2,9.925 2.788,8.1Q3.575,6.275 4.925,4.925Q6.275,3.575 8.1,2.787Q9.925,2 12,2Q14.075,2 15.9,2.787Q17.725,3.575 19.075,4.925Q20.425,6.275 21.212,8.1Q22,9.925 22,12Q22,14.075 21.212,15.9Q20.425,17.725 19.075,19.075Q17.725,20.425 15.9,21.212Q14.075,22 12,22ZM12,20Q15.35,20 17.675,17.675Q20,15.35 20,12Q20,8.65 17.675,6.325Q15.35,4 12,4Q8.65,4 6.325,6.325Q4,8.65 4,12Q4,15.35 6.325,17.675Q8.65,20 12,20ZM12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Z" />

View file

@ -2,9 +2,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:tint="?attr/colorPrimary"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="?attr/colorPrimary">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M12,22Q9.95,22 8.125,21.212Q6.3,20.425 4.938,19.062Q3.575,17.7 2.788,15.875Q2,14.05 2,12Q2,9.925 2.812,8.1Q3.625,6.275 5.013,4.925Q6.4,3.575 8.25,2.787Q10.1,2 12.2,2Q14.2,2 15.975,2.688Q17.75,3.375 19.087,4.588Q20.425,5.8 21.212,7.463Q22,9.125 22,11.05Q22,13.925 20.25,15.462Q18.5,17 16,17H14.15Q13.925,17 13.838,17.125Q13.75,17.25 13.75,17.4Q13.75,17.7 14.125,18.262Q14.5,18.825 14.5,19.55Q14.5,20.8 13.812,21.4Q13.125,22 12,22ZM12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12ZM6.5,13Q7.15,13 7.575,12.575Q8,12.15 8,11.5Q8,10.85 7.575,10.425Q7.15,10 6.5,10Q5.85,10 5.425,10.425Q5,10.85 5,11.5Q5,12.15 5.425,12.575Q5.85,13 6.5,13ZM9.5,9Q10.15,9 10.575,8.575Q11,8.15 11,7.5Q11,6.85 10.575,6.425Q10.15,6 9.5,6Q8.85,6 8.425,6.425Q8,6.85 8,7.5Q8,8.15 8.425,8.575Q8.85,9 9.5,9ZM14.5,9Q15.15,9 15.575,8.575Q16,8.15 16,7.5Q16,6.85 15.575,6.425Q15.15,6 14.5,6Q13.85,6 13.425,6.425Q13,6.85 13,7.5Q13,8.15 13.425,8.575Q13.85,9 14.5,9ZM17.5,13Q18.15,13 18.575,12.575Q19,12.15 19,11.5Q19,10.85 18.575,10.425Q18.15,10 17.5,10Q16.85,10 16.425,10.425Q16,10.85 16,11.5Q16,12.15 16.425,12.575Q16.85,13 17.5,13ZM12,20Q12.225,20 12.363,19.875Q12.5,19.75 12.5,19.55Q12.5,19.2 12.125,18.725Q11.75,18.25 11.75,17.3Q11.75,16.25 12.475,15.625Q13.2,15 14.25,15H16Q17.65,15 18.825,14.037Q20,13.075 20,11.05Q20,8.025 17.688,6.012Q15.375,4 12.2,4Q8.8,4 6.4,6.325Q4,8.65 4,12Q4,15.325 6.338,17.663Q8.675,20 12,20Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M12,16.5Q13.875,16.5 15.188,15.188Q16.5,13.875 16.5,12Q16.5,10.125 15.188,8.812Q13.875,7.5 12,7.5Q10.125,7.5 8.812,8.812Q7.5,10.125 7.5,12Q7.5,13.875 8.812,15.188Q10.125,16.5 12,16.5ZM12,13Q11.575,13 11.288,12.712Q11,12.425 11,12Q11,11.575 11.288,11.287Q11.575,11 12,11Q12.425,11 12.713,11.287Q13,11.575 13,12Q13,12.425 12.713,12.712Q12.425,13 12,13ZM12,22Q9.925,22 8.1,21.212Q6.275,20.425 4.925,19.075Q3.575,17.725 2.788,15.9Q2,14.075 2,12Q2,9.925 2.788,8.1Q3.575,6.275 4.925,4.925Q6.275,3.575 8.1,2.787Q9.925,2 12,2Q14.075,2 15.9,2.787Q17.725,3.575 19.075,4.925Q20.425,6.275 21.212,8.1Q22,9.925 22,12Q22,14.075 21.212,15.9Q20.425,17.725 19.075,19.075Q17.725,20.425 15.9,21.212Q14.075,22 12,22ZM12,20Q15.35,20 17.675,17.675Q20,15.35 20,12Q20,8.65 17.675,6.325Q15.35,4 12,4Q8.65,4 6.325,6.325Q4,8.65 4,12Q4,15.35 6.325,17.675Q8.65,20 12,20ZM12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M0,18V16.425Q0,15.325 1.113,14.662Q2.225,14 4,14Q4.325,14 4.625,14.012Q4.925,14.025 5.2,14.075Q4.85,14.575 4.675,15.15Q4.5,15.725 4.5,16.375V18ZM6,18V16.375Q6,14.75 7.663,13.75Q9.325,12.75 12,12.75Q14.7,12.75 16.35,13.75Q18,14.75 18,16.375V18ZM19.5,18V16.375Q19.5,15.725 19.337,15.15Q19.175,14.575 18.85,14.075Q19.125,14.025 19.413,14.012Q19.7,14 20,14Q21.8,14 22.9,14.662Q24,15.325 24,16.425V18ZM12,14.75Q10.575,14.75 9.45,15.125Q8.325,15.5 8.125,16H15.9Q15.675,15.5 14.562,15.125Q13.45,14.75 12,14.75ZM4,13Q3.175,13 2.588,12.412Q2,11.825 2,11Q2,10.15 2.588,9.575Q3.175,9 4,9Q4.85,9 5.425,9.575Q6,10.15 6,11Q6,11.825 5.425,12.412Q4.85,13 4,13ZM20,13Q19.175,13 18.587,12.412Q18,11.825 18,11Q18,10.15 18.587,9.575Q19.175,9 20,9Q20.85,9 21.425,9.575Q22,10.15 22,11Q22,11.825 21.425,12.412Q20.85,13 20,13ZM12,12Q10.75,12 9.875,11.125Q9,10.25 9,9Q9,7.725 9.875,6.862Q10.75,6 12,6Q13.275,6 14.137,6.862Q15,7.725 15,9Q15,10.25 14.137,11.125Q13.275,12 12,12ZM12,8Q11.575,8 11.288,8.287Q11,8.575 11,9Q11,9.425 11.288,9.712Q11.575,10 12,10Q12.425,10 12.713,9.712Q13,9.425 13,9Q13,8.575 12.713,8.287Q12.425,8 12,8ZM12,16Q12,16 12,16Q12,16 12,16Q12,16 12,16Q12,16 12,16ZM12,9Q12,9 12,9Q12,9 12,9Q12,9 12,9Q12,9 12,9Q12,9 12,9Q12,9 12,9Q12,9 12,9Q12,9 12,9Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M7.8,16H9.4L10.2,13.7H13.85L14.65,16H16.2L12.8,7H11.2ZM10.65,12.4 L11.95,8.65H12.05L13.35,12.4ZM12,23.3 L8.65,20H4V15.35L0.7,12L4,8.65V4H8.65L12,0.7L15.35,4H20V8.65L23.3,12L20,15.35V20H15.35ZM12,12ZM12,20.5 L14.5,18H18V14.5L20.5,12L18,9.5V6H14.5L12,3.5L9.5,6H6V9.5L3.5,12L6,14.5V18H9.5Z" />

View file

@ -1,9 +1,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M12,20 L4,12 12,4 13.425,5.4 7.825,11H20V13H7.825L13.425,18.6Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M9.55,18 L3.85,12.3 5.275,10.875 9.55,15.15 18.725,5.975 20.15,7.4Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M6.4,19 L5,17.6 10.6,12 5,6.4 6.4,5 12,10.6 17.6,5 19,6.4 13.4,12 19,17.6 17.6,19 12,13.4Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M8,18 L2,12 8,6 9.425,7.425 4.825,12.025 9.4,16.6ZM16,18 L14.575,16.575 19.175,11.975 14.6,7.4 16,6 22,12Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M4,20V12H8V20ZM10,20V4H14V20ZM16,20V9H20V20Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M12,21Q8.25,21 5.625,18.375Q3,15.75 3,12Q3,8.25 5.625,5.625Q8.25,3 12,3Q12.35,3 12.688,3.025Q13.025,3.05 13.35,3.1Q12.325,3.825 11.713,4.987Q11.1,6.15 11.1,7.5Q11.1,9.75 12.675,11.325Q14.25,12.9 16.5,12.9Q17.875,12.9 19.025,12.287Q20.175,11.675 20.9,10.65Q20.95,10.975 20.975,11.312Q21,11.65 21,12Q21,15.75 18.375,18.375Q15.75,21 12,21ZM12,19Q14.2,19 15.95,17.788Q17.7,16.575 18.5,14.625Q18,14.75 17.5,14.825Q17,14.9 16.5,14.9Q13.425,14.9 11.262,12.738Q9.1,10.575 9.1,7.5Q9.1,7 9.175,6.5Q9.25,6 9.375,5.5Q7.425,6.3 6.213,8.05Q5,9.8 5,12Q5,14.9 7.05,16.95Q9.1,19 12,19ZM11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Q11.75,12.25 11.75,12.25Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M7,21Q6.175,21 5.588,20.413Q5,19.825 5,19V6H4V4H9V3H15V4H20V6H19V19Q19,19.825 18.413,20.413Q17.825,21 17,21ZM17,6H7V19Q7,19 7,19Q7,19 7,19H17Q17,19 17,19Q17,19 17,19ZM9,17H11V8H9ZM13,17H15V8H13ZM7,6V19Q7,19 7,19Q7,19 7,19Q7,19 7,19Q7,19 7,19Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M12,15.375 L6,9.375 7.4,7.975 12,12.575 16.6,7.975 18,9.375Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M10,18V16H14V18ZM6,13V11H18V13ZM3,8V6H21V8Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M6,21Q4.875,21 3.775,20.45Q2.675,19.9 2,19Q2.65,19 3.325,18.488Q4,17.975 4,17Q4,15.75 4.875,14.875Q5.75,14 7,14Q8.25,14 9.125,14.875Q10,15.75 10,17Q10,18.65 8.825,19.825Q7.65,21 6,21ZM6,19Q6.825,19 7.412,18.413Q8,17.825 8,17Q8,16.575 7.713,16.288Q7.425,16 7,16Q6.575,16 6.287,16.288Q6,16.575 6,17Q6,17.575 5.863,18.05Q5.725,18.525 5.5,18.95Q5.625,19 5.75,19Q5.875,19 6,19ZM11.75,15 L9,12.25 17.95,3.3Q18.225,3.025 18.638,3.012Q19.05,3 19.35,3.3L20.7,4.65Q21,4.95 21,5.35Q21,5.75 20.7,6.05ZM7,17Q7,17 7,17Q7,17 7,17Q7,17 7,17Q7,17 7,17Q7,17 7,17Q7,17 7,17Q7,17 7,17Q7,17 7,17Q7,17 7,17Q7,17 7,17Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M4,15V13H20V15ZM4,11V9H20V11Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M11.95,18Q12.475,18 12.838,17.637Q13.2,17.275 13.2,16.75Q13.2,16.225 12.838,15.863Q12.475,15.5 11.95,15.5Q11.425,15.5 11.062,15.863Q10.7,16.225 10.7,16.75Q10.7,17.275 11.062,17.637Q11.425,18 11.95,18ZM11.05,14.15H12.9Q12.9,13.325 13.088,12.85Q13.275,12.375 14.15,11.55Q14.8,10.9 15.175,10.312Q15.55,9.725 15.55,8.9Q15.55,7.5 14.525,6.75Q13.5,6 12.1,6Q10.675,6 9.788,6.75Q8.9,7.5 8.55,8.55L10.2,9.2Q10.325,8.75 10.763,8.225Q11.2,7.7 12.1,7.7Q12.9,7.7 13.3,8.137Q13.7,8.575 13.7,9.1Q13.7,9.6 13.4,10.037Q13.1,10.475 12.65,10.85Q11.55,11.825 11.3,12.325Q11.05,12.825 11.05,14.15ZM12,22Q9.925,22 8.1,21.212Q6.275,20.425 4.925,19.075Q3.575,17.725 2.788,15.9Q2,14.075 2,12Q2,9.925 2.788,8.1Q3.575,6.275 4.925,4.925Q6.275,3.575 8.1,2.787Q9.925,2 12,2Q14.075,2 15.9,2.787Q17.725,3.575 19.075,4.925Q20.425,6.275 21.212,8.1Q22,9.925 22,12Q22,14.075 21.212,15.9Q20.425,17.725 19.075,19.075Q17.725,20.425 15.9,21.212Q14.075,22 12,22ZM12,20Q15.35,20 17.675,17.675Q20,15.35 20,12Q20,8.65 17.675,6.325Q15.35,4 12,4Q8.65,4 6.325,6.325Q4,8.65 4,12Q4,15.35 6.325,17.675Q8.65,20 12,20ZM12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M17.6,12 L3.5,6.9 4.2,5 19.8,10.7Q20.3,10.9 20.65,11.4Q21,11.9 21,12.5V18Q21,18.825 20.413,19.413Q19.825,20 19,20H5Q4.175,20 3.587,19.413Q3,18.825 3,18V14Q3,13.175 3.587,12.587Q4.175,12 5,12ZM19,18Q19,18 19,18Q19,18 19,18V14Q19,14 19,14Q19,14 19,14H5Q5,14 5,14Q5,14 5,14V18Q5,18 5,18Q5,18 5,18ZM10,17H18V15H10ZM7,17Q7.425,17 7.713,16.712Q8,16.425 8,16Q8,15.575 7.713,15.287Q7.425,15 7,15Q6.575,15 6.287,15.287Q6,15.575 6,16Q6,16.425 6.287,16.712Q6.575,17 7,17ZM5,18Q5,18 5,18Q5,18 5,18V14Q5,14 5,14Q5,14 5,14Q5,14 5,14Q5,14 5,14V18Q5,18 5,18Q5,18 5,18Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M4,21V19H16V21ZM9.65,16.15 L4,10.5 6.1,8.35 11.8,14ZM16,9.8 L10.35,4.1 12.5,2 18.15,7.65ZM20.6,20 L7.55,6.95 8.95,5.55 22,18.6Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M12,15Q13.25,15 14.125,14.125Q15,13.25 15,12Q15,10.75 14.125,9.875Q13.25,9 12,9Q10.75,9 9.875,9.875Q9,10.75 9,12Q9,13.25 9.875,14.125Q10.75,15 12,15ZM12,17Q9.925,17 8.463,15.537Q7,14.075 7,12Q7,9.925 8.463,8.462Q9.925,7 12,7Q14.075,7 15.538,8.462Q17,9.925 17,12Q17,14.075 15.538,15.537Q14.075,17 12,17ZM2,13Q1.575,13 1.288,12.712Q1,12.425 1,12Q1,11.575 1.288,11.287Q1.575,11 2,11H4Q4.425,11 4.713,11.287Q5,11.575 5,12Q5,12.425 4.713,12.712Q4.425,13 4,13ZM20,13Q19.575,13 19.288,12.712Q19,12.425 19,12Q19,11.575 19.288,11.287Q19.575,11 20,11H22Q22.425,11 22.712,11.287Q23,11.575 23,12Q23,12.425 22.712,12.712Q22.425,13 22,13ZM12,5Q11.575,5 11.288,4.712Q11,4.425 11,4V2Q11,1.575 11.288,1.287Q11.575,1 12,1Q12.425,1 12.713,1.287Q13,1.575 13,2V4Q13,4.425 12.713,4.712Q12.425,5 12,5ZM12,23Q11.575,23 11.288,22.712Q11,22.425 11,22V20Q11,19.575 11.288,19.288Q11.575,19 12,19Q12.425,19 12.713,19.288Q13,19.575 13,20V22Q13,22.425 12.713,22.712Q12.425,23 12,23ZM5.65,7.05 L4.575,6Q4.275,5.725 4.287,5.3Q4.3,4.875 4.575,4.575Q4.875,4.275 5.3,4.275Q5.725,4.275 6,4.575L7.05,5.65Q7.325,5.95 7.325,6.35Q7.325,6.75 7.05,7.05Q6.775,7.35 6.363,7.337Q5.95,7.325 5.65,7.05ZM18,19.425 L16.95,18.35Q16.675,18.05 16.675,17.638Q16.675,17.225 16.95,16.95Q17.225,16.65 17.638,16.663Q18.05,16.675 18.35,16.95L19.425,18Q19.725,18.275 19.713,18.7Q19.7,19.125 19.425,19.425Q19.125,19.725 18.7,19.725Q18.275,19.725 18,19.425ZM16.95,7.05Q16.65,6.775 16.663,6.362Q16.675,5.95 16.95,5.65L18,4.575Q18.275,4.275 18.7,4.287Q19.125,4.3 19.425,4.575Q19.725,4.875 19.725,5.3Q19.725,5.725 19.425,6L18.35,7.05Q18.05,7.325 17.65,7.325Q17.25,7.325 16.95,7.05ZM4.575,19.425Q4.275,19.125 4.275,18.7Q4.275,18.275 4.575,18L5.65,16.95Q5.95,16.675 6.363,16.675Q6.775,16.675 7.05,16.95Q7.35,17.225 7.338,17.638Q7.325,18.05 7.05,18.35L6,19.425Q5.725,19.725 5.3,19.712Q4.875,19.7 4.575,19.425ZM12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M14,19V5H18V19ZM6,19V5H10V19Z" />

View file

@ -2,9 +2,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="32dp"
android:height="32dp"
android:tint="?attr/colorControlNormal"
android:viewportWidth="32"
android:viewportHeight="32"
android:tint="?attr/colorControlNormal">
android:viewportHeight="32">
<path
android:fillColor="@android:color/white"
android:pathData="M 19.005724,25.685114 V 6.3148861 h 5.744275 V 25.685114 Z m -11.7557234,0 V 6.3148861 H 12.994275 V 25.685114 Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M8,19V5L19,12ZM10,12ZM10,15.35 L15.25,12 10,8.65Z" />

View file

@ -2,9 +2,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="32dp"
android:height="32dp"
android:tint="?attr/colorControlNormal"
android:viewportWidth="32"
android:viewportHeight="32"
android:tint="?attr/colorControlNormal">
android:viewportHeight="32">
<path
android:fillColor="@android:color/white"
android:pathData="M 10.399999,25.400001 V 6.6000001 L 25.233332,16 Z M 13.266666,16 Z m 0,4.133334 L 19.833332,16 13.266666,11.866667 Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M16,20Q14.75,20 13.875,19.125Q13,18.25 13,17Q13,15.75 13.875,14.875Q14.75,14 16,14Q16.275,14 16.525,14.037Q16.775,14.075 17,14.2V6H22V8H19V17Q19,18.25 18.125,19.125Q17.25,20 16,20ZM3,16V14H11V16ZM3,12V10H15V12ZM3,8V6H15V8Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@color/remote_translucent"
android:pathData="M7,22 L3,18 7,14 8.4,15.45 6.85,17H17V13H19V19H6.85L8.4,20.55ZM5,11V5H17.15L15.6,3.45L17,2L21,6L17,10L15.6,8.55L17.15,7H7V11Z" />

View file

@ -2,9 +2,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:tint="?attr/colorPrimary"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="?attr/colorPrimary">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M7,22 L3,18 7,14 8.4,15.45 6.85,17H17V13H19V19H6.85L8.4,20.55ZM5,11V5H17.15L15.6,3.45L17,2L21,6L17,10L15.6,8.55L17.15,7H7V11Z" />

View file

@ -2,9 +2,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:tint="?attr/colorPrimary"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="?attr/colorPrimary">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M11.5,15V10.5H10V9H13V15ZM7,22 L3,18 7,14 8.4,15.45 6.85,17H17V13H19V19H6.85L8.4,20.55ZM5,11V5H17.15L15.6,3.45L17,2L21,6L17,10L15.6,8.55L17.15,7H7V11Z" />

View file

@ -2,9 +2,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="32dp"
android:height="32dp"
android:tint="?attr/colorControlNormal"
android:viewportWidth="32"
android:viewportHeight="32"
android:tint="?attr/colorControlNormal">
android:viewportHeight="32">
<path
android:fillColor="@android:color/white"
android:pathData="M 9.3333328,29.333332 3.9999997,23.999999 9.3333328,18.666666 11.199999,20.599999 9.1333328,22.666666 H 22.666666 v -5.333334 h 2.666666 v 8 H 9.1333328 l 2.0666662,2.066667 z M 6.6666662,14.666666 V 6.6666662 H 22.866666 l -2.066667,-2.0666665 1.866667,-1.9333332 5.333333,5.333333 -5.333333,5.3333335 -1.866667,-1.933334 2.066667,-2.0666662 H 9.3333328 v 5.3333332 z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M11.5,15V10.5H10V9H13V15ZM7,22 L3,18 7,14 8.4,15.45 6.85,17H17V13H19V19H6.85L8.4,20.55ZM5,11V5H17.15L15.6,3.45L17,2L21,6L17,10L15.6,8.55L17.15,7H7V11Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M19.6,21 L13.3,14.7Q12.55,15.3 11.575,15.65Q10.6,16 9.5,16Q6.775,16 4.888,14.113Q3,12.225 3,9.5Q3,6.775 4.888,4.887Q6.775,3 9.5,3Q12.225,3 14.113,4.887Q16,6.775 16,9.5Q16,10.6 15.65,11.575Q15.3,12.55 14.7,13.3L21,19.6ZM9.5,14Q11.375,14 12.688,12.688Q14,11.375 14,9.5Q14,7.625 12.688,6.312Q11.375,5 9.5,5Q7.625,5 6.312,6.312Q5,7.625 5,9.5Q5,11.375 6.312,12.688Q7.625,14 9.5,14Z" />

View file

@ -2,9 +2,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:tint="#0061A6"
android:viewportWidth="24"
android:viewportHeight="24"
android:tint="#0061A6">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M9.175,10.575 L4,5.4 5.4,4 10.575,9.175ZM14,20V18H16.6L13.425,14.825L14.85,13.4L18,16.55V14H20V20ZM5.4,20 L4,18.6 16.6,6H14V4H20V10H18V7.4Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M9.175,10.575 L4,5.4 5.4,4 10.575,9.175ZM14,20V18H16.6L13.425,14.825L14.85,13.4L18,16.55V14H20V20ZM5.4,20 L4,18.6 16.6,6H14V4H20V10H18V7.4Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M16.5,18V6H18.5V18ZM5.5,18V6L14.5,12ZM7.5,12ZM7.5,14.25 L10.9,12 7.5,9.75Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M5.5,18V6H7.5V18ZM18.5,18 L9.5,12 18.5,6ZM16.5,12ZM16.5,14.25V9.75L13.1,12Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M10,21Q8.35,21 7.175,19.825Q6,18.65 6,17Q6,15.35 7.175,14.175Q8.35,13 10,13Q10.575,13 11.062,13.137Q11.55,13.275 12,13.55V3H18V7H14V17Q14,18.65 12.825,19.825Q11.65,21 10,21Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M3,18V16H9V18ZM3,13V11H15V13ZM3,8V6H21V8Z" />

View file

@ -2,9 +2,9 @@
<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">
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M15.3,16.7 L16.7,15.3 13,11.6V7H11V12.4ZM12,22Q9.925,22 8.1,21.212Q6.275,20.425 4.925,19.075Q3.575,17.725 2.788,15.9Q2,14.075 2,12Q2,9.925 2.788,8.1Q3.575,6.275 4.925,4.925Q6.275,3.575 8.1,2.787Q9.925,2 12,2Q14.075,2 15.9,2.787Q17.725,3.575 19.075,4.925Q20.425,6.275 21.212,8.1Q22,9.925 22,12Q22,14.075 21.212,15.9Q20.425,17.725 19.075,19.075Q17.725,20.425 15.9,21.212Q14.075,22 12,22ZM12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12Q12,12 12,12ZM12,20Q15.325,20 17.663,17.663Q20,15.325 20,12Q20,8.675 17.663,6.337Q15.325,4 12,4Q8.675,4 6.338,6.337Q4,8.675 4,12Q4,15.325 6.338,17.663Q8.675,20 12,20Z" />

View file

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<corners android:radius="@dimen/size_corners_large" />
<solid android:color="?attr/colorPrimary" />
</shape>
</item>
<item>
<ripple android:color="@color/sel_remote_fab_ripple">
<item android:id="@android:id/mask">
<shape android:shape="rectangle">
<solid android:color="@android:color/white" />
<corners android:radius="@dimen/size_corners_large" />
</shape>
</item>
</ripple>
</item>
</layer-list>

View file

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="?attr/colorControlHighlight"
android:radius="24dp" />
android:radius="20dp" />

View file

@ -90,9 +90,9 @@
android:id="@+id/playback_controls_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/spacing_medium"
android:layout_marginStart="@dimen/spacing_medium"
android:layout_marginEnd="@dimen/spacing_medium"
android:layout_marginBottom="@dimen/spacing_medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">

View file

@ -81,19 +81,19 @@
android:id="@+id/playback_seek_bar"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:layout_constraintBottom_toTopOf="@+id/playback_controls_container"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintStart_toEndOf="@+id/playback_cover"
app:layout_constraintTop_toBottomOf="@+id/playback_album"
app:layout_constraintBottom_toTopOf="@+id/playback_controls_container"/>
app:layout_constraintTop_toBottomOf="@+id/playback_album" />
<org.oxycblt.auxio.playback.NoRtlFrameLayout
android:id="@+id/playback_controls_container"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginStart="@dimen/spacing_medium"
android:layout_marginEnd="@dimen/spacing_medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="@+id/playback_seek_bar"
app:layout_constraintStart_toStartOf="@+id/playback_seek_bar"
app:layout_constraintTop_toBottomOf="@+id/playback_seek_bar">

View file

@ -82,10 +82,10 @@
android:id="@+id/dirs_mode_desc"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAlignment="viewStart"
android:layout_marginStart="@dimen/spacing_mid_large"
android:layout_marginTop="@dimen/spacing_small"
android:layout_marginEnd="@dimen/spacing_mid_large"
android:textAlignment="viewStart"
tools:text="Mode description" />
</LinearLayout>

View file

@ -17,7 +17,7 @@
android:layout_marginStart="@dimen/spacing_mid_large"
android:layout_marginTop="@dimen/spacing_medium"
android:text="@string/set_pre_amp_with"
android:textAppearance="@style/TextAppearance.Auxio.TitleMedium"
android:textAppearance="@style/TextAppearance.Auxio.TitleMediumLowEmphasis"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@ -54,7 +54,7 @@
android:layout_marginStart="@dimen/spacing_mid_large"
android:layout_marginTop="@dimen/spacing_medium"
android:text="@string/set_pre_amp_without"
android:textAppearance="@style/TextAppearance.Auxio.TitleMedium"
android:textAppearance="@style/TextAppearance.Auxio.TitleMediumLowEmphasis"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/with_tags_slider" />

View file

@ -54,7 +54,7 @@
android:gravity="center"
android:padding="@dimen/spacing_medium"
android:text="@string/err_too_small"
android:textAppearance="@style/TextAppearance.Auxio.TitleMedium"
android:textAppearance="@style/TextAppearance.Auxio.TitleMediumLowEmphasis"
android:textColor="?android:attr/textColorPrimary"
android:textStyle="bold" />

View file

@ -74,9 +74,9 @@
android:id="@+id/playback_controls_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/spacing_medium"
android:layout_marginStart="@dimen/spacing_medium"
android:layout_marginEnd="@dimen/spacing_medium"
android:layout_marginBottom="@dimen/spacing_medium"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent">

View file

@ -16,17 +16,17 @@
style="@style/Widget.Auxio.Image.Small"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:staticIcon="@drawable/ic_song_24"
tools:visibility="invisible">
app:staticIcon="@drawable/ic_song_24">
<TextView
android:id="@+id/song_track"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:ellipsize="end"
android:gravity="center"
android:maxLines="1"
android:textAlignment="center"
android:textAppearance="@style/TextAppearance.Auxio.BodyLarge"
android:textAppearance="@style/TextAppearance.Auxio.TitleLargeLowEmphasis"
android:textColor="@color/sel_on_cover_bg"
app:autoSizeMaxTextSize="@dimen/text_size_track_number_max"
app:autoSizeMinTextSize="@dimen/text_size_track_number_min"

View file

@ -20,9 +20,9 @@
android:clickable="false"
android:focusable="false"
android:paddingStart="@dimen/spacing_medium"
android:textAlignment="viewStart"
android:textAppearance="@style/TextAppearance.Auxio.BodyLarge"
app:buttonCompat="@null"
android:textAlignment="viewStart"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/tab_drag_handle"
app:layout_constraintStart_toStartOf="parent"

View file

@ -46,16 +46,15 @@
android:layout_alignParentBottom="true"
android:layout_gravity="center"
android:orientation="vertical"
android:paddingTop="@dimen/spacing_medium"
android:paddingBottom="@dimen/spacing_mid_small">
android:paddingTop="@dimen/spacing_medium">
<android.widget.TextView
android:id="@+id/widget_song"
style="@style/Widget.Auxio.TextView.Primary.AppWidget"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacing_medium"
android:layout_marginEnd="@dimen/spacing_medium"
android:layout_height="wrap_content"
android:text="@string/def_widget_song" />
<android.widget.TextView
@ -67,56 +66,75 @@
android:layout_marginEnd="@dimen/spacing_medium"
android:text="@string/def_widget_artist" />
<!-- See widget_small.xml for an explanation of the view layout -->
<android.widget.LinearLayout
android:id="@+id/widget_controls"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/spacing_small"
android:layout_marginStart="@dimen/spacing_mid_small"
android:layout_marginEnd="@dimen/spacing_mid_small">
android:paddingStart="@dimen/spacing_mid_small"
android:paddingEnd="@dimen/spacing_mid_small"
android:paddingTop="@dimen/spacing_mid_small"
android:paddingBottom="@dimen/spacing_medium"
android:orientation="horizontal">
<android.widget.ImageButton
android:id="@+id/widget_repeat"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_change_repeat"
android:src="@drawable/ic_remote_repeat_off_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_skip_prev"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_skip_prev"
android:src="@drawable/ic_skip_prev_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_play_pause"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
style="@style/Widget.Auxio.FloatingActionButton.AppWidget"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_play_pause"
android:src="@drawable/sel_playing_state_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_skip_next"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_skip_next"
android:src="@drawable/ic_skip_next_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_shuffle"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_shuffle"
android:src="@drawable/ic_remote_shuffle_off_24" />

View file

@ -46,8 +46,7 @@
android:layout_alignParentBottom="true"
android:layout_gravity="center"
android:orientation="vertical"
android:paddingTop="@dimen/spacing_medium"
android:paddingBottom="@dimen/spacing_mid_small">
android:paddingTop="@dimen/spacing_medium">
<android.widget.TextView
android:id="@+id/widget_song"
@ -71,35 +70,43 @@
android:id="@+id/widget_controls"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/spacing_small"
android:layout_marginStart="@dimen/spacing_mid_small"
android:layout_marginEnd="@dimen/spacing_mid_small"
android:paddingStart="@dimen/spacing_mid_small"
android:paddingEnd="@dimen/spacing_mid_small"
android:paddingTop="@dimen/spacing_mid_small"
android:paddingBottom="@dimen/spacing_medium"
android:orientation="horizontal">
<android.widget.ImageButton
android:id="@+id/widget_skip_prev"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_skip_prev"
android:src="@drawable/ic_skip_prev_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_play_pause"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
style="@style/Widget.Auxio.FloatingActionButton.AppWidget"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_play_pause"
android:src="@drawable/ic_play_24" />
android:src="@drawable/sel_playing_state_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_skip_next"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_skip_next"
android:src="@drawable/ic_skip_next_24" />

View file

@ -47,6 +47,14 @@
android:src="@drawable/ic_remote_default_cover_24"
tools:ignore="ContentDescription" />
<!--
We want to evenly space these buttons, but using a plain layout_weight system would result
in more padding being applied to the button icons than desired. Fix this by adding empty
views that respond to layout_weight and space out the fixed-size buttons.
As for why we use ImageViews, it is the only blank view that the AppWidget API will accept.
Because of course it is.
-->
<android.widget.LinearLayout
android:id="@+id/widget_controls"
android:layout_width="match_parent"
@ -56,32 +64,40 @@
android:background="@drawable/ui_widget_panel"
android:backgroundTint="?attr/colorSurface"
android:orientation="horizontal"
android:padding="@dimen/spacing_small">
android:padding="@dimen/spacing_mid_small">
<android.widget.ImageButton
android:id="@+id/widget_skip_prev"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_skip_prev"
android:src="@drawable/ic_skip_prev_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_play_pause"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
style="@style/Widget.Auxio.FloatingActionButton.AppWidget"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_play_pause"
android:src="@drawable/ic_play_24" />
android:src="@drawable/sel_playing_state_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_skip_next"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_skip_next"
android:src="@drawable/ic_skip_next_24" />

View file

@ -60,7 +60,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/spacing_medium"
android:layout_marginEnd="@dimen/spacing_small"
android:layout_marginEnd="@dimen/spacing_medium"
android:layout_marginBottom="@dimen/spacing_medium"
android:layout_weight="2"
android:orientation="horizontal">
@ -69,7 +69,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginEnd="@dimen/spacing_tiny"
android:layout_marginEnd="@dimen/spacing_medium"
android:layout_weight="1"
android:orientation="vertical">
@ -91,23 +91,11 @@
<android.widget.ImageButton
android:id="@+id/widget_play_pause"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/Widget.Auxio.FloatingActionButton.AppWidget"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_play_pause"
android:minWidth="@dimen/size_btn"
android:minHeight="@dimen/size_btn"
android:src="@drawable/ic_play_24" />
<android.widget.ImageButton
android:id="@+id/widget_skip_next"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/desc_play_pause"
android:minWidth="@dimen/size_btn"
android:minHeight="@dimen/size_btn"
android:src="@drawable/ic_skip_next_24" />
android:src="@drawable/sel_playing_state_24" />
</android.widget.LinearLayout>
</LinearLayout>

View file

@ -40,6 +40,8 @@
android:src="@drawable/ic_remote_default_cover_24"
tools:ignore="ContentDescription" />
<!-- See widget_small.xml for an explanation of the view layout -->
<android.widget.LinearLayout
android:id="@+id/widget_controls"
android:layout_width="match_parent"
@ -49,53 +51,67 @@
android:background="@drawable/ui_widget_panel"
android:backgroundTint="?attr/colorSurface"
android:orientation="horizontal"
android:padding="@dimen/spacing_small">
android:padding="@dimen/spacing_mid_small">
<android.widget.ImageButton
android:id="@+id/widget_repeat"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_change_repeat"
android:src="@drawable/ic_remote_repeat_off_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_skip_prev"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_skip_prev"
android:src="@drawable/ic_skip_prev_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_play_pause"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
style="@style/Widget.Auxio.FloatingActionButton.AppWidget"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_play_pause"
android:src="@drawable/sel_playing_state_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_skip_next"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_skip_next"
android:src="@drawable/ic_skip_next_24" />
<android.widget.ImageView
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1" />
<android.widget.ImageButton
android:id="@+id/widget_shuffle"
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_width="@dimen/size_btn"
android:layout_height="@dimen/size_btn"
android:contentDescription="@string/desc_shuffle"
android:src="@drawable/ic_remote_shuffle_off_24" />
</android.widget.LinearLayout>
</android.widget.RelativeLayout>

View file

@ -1,5 +1,6 @@
<?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>

View file

@ -1,5 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Widget.Auxio.FloatingActionButton.Adaptive" parent="Widget.Material3.FloatingActionButton.Large.Primary">
<item name="fabSize">normal</item>
</style>

View file

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Widget.Auxio.Button.AppWidget.V31" parent="Widget.AppCompat.Button.Borderless">
<item name="android:background">@drawable/ui_remote_ripple</item>
</style>
</resources>

View file

@ -4,6 +4,7 @@
<style name="Theme.Widget" parent="@android:style/Theme.DeviceDefault.DayNight">
<item name="colorSurface">@color/widget_surface</item>
<item name="colorPrimary">?android:attr/colorAccent</item>
<item name="colorOnPrimary">?attr/colorSurface</item>
<item name="colorSecondary">?android:attr/colorAccent</item>
<item name="colorControlNormal">?android:attr/colorControlNormal</item>
<item name="colorControlHighlight">?android:attr/colorControlHighlight</item>

View file

@ -31,7 +31,7 @@
<dimen name="size_pre_amp_ticker">56dp</dimen>
<dimen name="text_size_track_number_min">12sp</dimen>
<dimen name="text_size_track_number_min">14sp</dimen>
<dimen name="text_size_track_number_max">22sp</dimen>
<dimen name="text_size_track_number_step">2sp</dimen>

View file

@ -48,19 +48,17 @@
<item name="android:textAppearance">@style/TextAppearance.Material3.BodyMedium</item>
</style>
<!-- Hack to make sure that ripples work the best that they can on all Android Versions -->
<style name="Widget.Auxio.Button.AppWidget.V31" parent="Widget.AppCompat.Button.Borderless">
<!--
Can't use a normal unbounded ripple here since it causes a weird bug
where the ripples will have a fixed starting size. Default to the
uglier system ripple instead.
-->
<item name="android:background">?android:attr/selectableItemBackgroundBorderless</item>
<!-- A variant of PlaybackButton that plays along with AppWidget restrictions. -->
<style name="Widget.Auxio.PlaybackButton.AppWidget" parent="Widget.AppCompat.Button.Borderless">
<item name="android:minHeight">@dimen/size_btn</item>
<item name="android:background">@drawable/ui_remote_ripple</item>
</style>
<!-- A variant of PlaybackButton that plays along with AppWidget restrictions. -->
<style name="Widget.Auxio.PlaybackButton.AppWidget" parent="Widget.Auxio.Button.AppWidget.V31">
<item name="android:minHeight">@dimen/size_btn</item>
<!-- A variant of button that emulates a FAB-ish button that plays along with widget restrictions -->
<style name="Widget.Auxio.FloatingActionButton.AppWidget" parent="Widget.AppCompat.Button.Borderless">
<item name="android:minWidth">@dimen/size_btn</item>
<item name="android:background">@drawable/ui_remote_fab_bg</item>
<item name="android:tint">?attr/colorOnPrimary</item>
</style>
<!-- Widget panel -->

View file

@ -44,7 +44,8 @@
<item name="textAppearanceHeadlineSmall">@style/TextAppearance.Auxio.HeadlineSmall</item>
<item name="textAppearanceTitleLarge">@style/TextAppearance.Auxio.TitleLarge</item>
<item name="textAppearanceTitleMedium">@style/TextAppearance.Auxio.TitleMedium</item>
<item name="textAppearanceTitleMedium">@style/TextAppearance.Auxio.TitleMediumLowEmphasis
</item>
<item name="textAppearanceTitleSmall">@style/TextAppearance.Auxio.TitleSmall</item>
<item name="textAppearanceLabelLarge">@style/TextAppearance.Auxio.LabelLarge</item>

View file

@ -153,7 +153,8 @@
</style>
<style name="Widget.Auxio.TextView.Item.Primary" parent="Widget.Auxio.TextView.Item.Base">
<item name="android:textAppearance">@style/TextAppearance.Auxio.TitleMedium</item>
<item name="android:textAppearance">@style/TextAppearance.Auxio.TitleMediumLowEmphasis
</item>
<item name="android:textColor">?android:attr/textColorPrimary</item>
</style>
@ -197,7 +198,7 @@
<item name="android:paddingEnd">@dimen/spacing_medium</item>
<item name="android:minHeight">@dimen/size_btn</item>
<item name="android:gravity">center_vertical</item>
<item name="android:textAppearance">@style/TextAppearance.Auxio.TitleMediumEmphasis</item>
<item name="android:textAppearance">@style/TextAppearance.Auxio.TitleMedium</item>
</style>
<style name="Widget.Auxio.TextView.Detail" parent="Widget.Auxio.TextView.Base">

View file

@ -64,24 +64,27 @@
<item name="android:letterSpacing">-0.01518181818</item>
</style>
<!--
List items are better off with a non-bold TitleMedium, while header items would prefer a
bold TitleMedium. Have options for both.
-->
<style name="TextAppearance.Auxio.TitleMedium" parent="TextAppearance.Material3.TitleMedium">
<style name="TextAppearance.Auxio.TitleLargeLowEmphasis" parent="TextAppearance.Material3.TitleLarge">
<item name="fontFamily">@font/inter_regular</item>
<item name="android:fontFamily">@font/inter_regular</item>
<item name="android:textStyle">normal</item>
<item name="android:letterSpacing">-0.01125</item>
<item name="android:letterSpacing">-0.01818181818</item>
</style>
<style name="TextAppearance.Auxio.TitleMediumEmphasis" parent="TextAppearance.Material3.TitleMedium">
<style name="TextAppearance.Auxio.TitleMedium" parent="TextAppearance.Material3.TitleMedium">
<item name="fontFamily">@font/inter_semibold</item>
<item name="android:fontFamily">@font/inter_semibold</item>
<item name="android:textStyle">bold</item>
<item name="android:letterSpacing">-0.00825</item>
</style>
<style name="TextAppearance.Auxio.TitleMediumLowEmphasis" parent="TextAppearance.Material3.TitleMedium">
<item name="fontFamily">@font/inter_regular</item>
<item name="android:fontFamily">@font/inter_regular</item>
<item name="android:textStyle">normal</item>
<item name="android:letterSpacing">-0.01125</item>
</style>
<style name="TextAppearance.Auxio.TitleSmall" parent="TextAppearance.Material3.TitleSmall">
<item name="fontFamily">@font/inter_regular</item>
<item name="android:fontFamily">@font/inter_regular</item>

View file

@ -7,12 +7,12 @@
<org.oxycblt.auxio.settings.ui.IntListPreference
app:defaultValue="@integer/theme_auto"
app:entries="@array/entries_theme"
app:entryIcons="@array/icons_theme"
app:entryValues="@array/values_theme"
app:icon="@drawable/ic_light_24"
app:iconSpaceReserved="false"
app:isPreferenceVisible="@bool/enable_theme_settings"
app:key="@string/set_key_theme"
app:entryIcons="@array/icons_theme"
app:title="@string/set_theme" />
<org.oxycblt.auxio.settings.ui.WrappedDialogPreference
@ -90,8 +90,8 @@
app:entries="@array/entries_replay_gain"
app:entryValues="@array/values_replay_gain"
app:iconSpaceReserved="false"
app:offValue="@integer/replay_gain_off"
app:key="@string/set_key_replay_gain"
app:offValue="@integer/replay_gain_off"
app:title="@string/set_replay_gain" />
<org.oxycblt.auxio.settings.ui.WrappedDialogPreference