diff --git a/app/src/main/java/org/oxycblt/auxio/MainFragment.kt b/app/src/main/java/org/oxycblt/auxio/MainFragment.kt
index 7e3fb4084..cc7f8f29f 100644
--- a/app/src/main/java/org/oxycblt/auxio/MainFragment.kt
+++ b/app/src/main/java/org/oxycblt/auxio/MainFragment.kt
@@ -21,7 +21,6 @@ import org.oxycblt.auxio.music.MusicStore
import org.oxycblt.auxio.music.Song
import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.ui.accent
-import org.oxycblt.auxio.ui.getInactiveAlpha
import org.oxycblt.auxio.ui.getTransparentAccent
import org.oxycblt.auxio.ui.toColor
import kotlin.IllegalArgumentException
@@ -48,9 +47,7 @@ class MainFragment : Fragment() {
val colorActive = accent.first.toColor(requireContext())
val colorInactive = getTransparentAccent(
- requireContext(),
- accent.first,
- getInactiveAlpha(accent.first)
+ requireContext(), accent.first, 150
)
// Set up the tints for the navigation icons + text
diff --git a/app/src/main/java/org/oxycblt/auxio/playback/queue/QueueFragment.kt b/app/src/main/java/org/oxycblt/auxio/playback/queue/QueueFragment.kt
index 2c74bc049..88c541c44 100644
--- a/app/src/main/java/org/oxycblt/auxio/playback/queue/QueueFragment.kt
+++ b/app/src/main/java/org/oxycblt/auxio/playback/queue/QueueFragment.kt
@@ -50,6 +50,9 @@ class QueueFragment : Fragment() {
findNavController().navigateUp()
}
+ // Since QueueFragment doesn't fit system windows, inset padding needs to be
+ // artificially applied to the Toolbar so that it fits on the main window AND
+ // so that the elevation doesn't show on the top.
setOnApplyWindowInsetsListener { _, insets ->
val top = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
insets.getInsets(WindowInsets.Type.systemBars()).top
diff --git a/app/src/main/java/org/oxycblt/auxio/playback/state/PlaybackStateManager.kt b/app/src/main/java/org/oxycblt/auxio/playback/state/PlaybackStateManager.kt
index dc8750294..b5973b950 100644
--- a/app/src/main/java/org/oxycblt/auxio/playback/state/PlaybackStateManager.kt
+++ b/app/src/main/java/org/oxycblt/auxio/playback/state/PlaybackStateManager.kt
@@ -285,31 +285,35 @@ class PlaybackStateManager private constructor() {
forceQueueUpdate()
}
- fun removeQueueItem(index: Int) {
+ fun removeQueueItem(index: Int): Boolean {
Log.d(this::class.simpleName, "Removing item ${mQueue[index].name}.")
if (index > mQueue.size || index < 0) {
Log.e(this::class.simpleName, "Index is out of bounds, did not remove queue item.")
- return
+ return false
}
mQueue.removeAt(index)
forceQueueUpdate()
+
+ return true
}
- fun moveQueueItems(from: Int, to: Int) {
+ fun moveQueueItems(from: Int, to: Int): Boolean {
try {
val item = mQueue.removeAt(from)
mQueue.add(to, item)
} catch (exception: IndexOutOfBoundsException) {
Log.e(this::class.simpleName, "Indices were out of bounds, did not move queue item")
- return
+ return false
}
forceQueueUpdate()
+
+ return true
}
fun addToUserQueue(song: Song) {
diff --git a/app/src/main/java/org/oxycblt/auxio/settings/SettingUtils.kt b/app/src/main/java/org/oxycblt/auxio/settings/SettingUtils.kt
index 5b1e89909..9453b02e1 100644
--- a/app/src/main/java/org/oxycblt/auxio/settings/SettingUtils.kt
+++ b/app/src/main/java/org/oxycblt/auxio/settings/SettingUtils.kt
@@ -6,7 +6,7 @@ import org.oxycblt.auxio.R
/**
* Convert a string representing a theme entry name to an actual theme int that can be used.
- * This is only done because PreferenceFragment does not like int arrays.
+ * This is only done because PreferenceFragment does not like int arrays for some...reason.
*/
fun String.toThemeInt(): Int {
return when (this) {
diff --git a/app/src/main/java/org/oxycblt/auxio/ui/ThemeUtils.kt b/app/src/main/java/org/oxycblt/auxio/ui/ThemeUtils.kt
index 03829da0c..4c9c2289a 100644
--- a/app/src/main/java/org/oxycblt/auxio/ui/ThemeUtils.kt
+++ b/app/src/main/java/org/oxycblt/auxio/ui/ThemeUtils.kt
@@ -38,7 +38,8 @@ val ACCENTS = arrayOf(
Pair(R.color.deep_orange, R.style.Theme_DeepOrange), // 15
Pair(R.color.brown, R.style.Theme_Brown), // 16
Pair(R.color.grey, R.style.Theme_Gray), // 17
- Pair(R.color.blue_grey, R.style.Theme_BlueGrey) // 18
+ Pair(R.color.blue_grey, R.style.Theme_BlueGrey), // 18
+ Pair(R.color.control_color, R.style.Theme_Neutral)
)
/**
@@ -55,7 +56,7 @@ private val ACCENT_NAMES = arrayOf(
R.string.color_label_yellow, R.string.color_label_amber,
R.string.color_label_orange, R.string.color_label_deep_orange,
R.string.color_label_brown, R.string.color_label_grey,
- R.string.color_label_blue_grey
+ R.string.color_label_blue_grey, R.string.color_label_neutral
)
/**
@@ -78,14 +79,6 @@ fun getTransparentAccent(context: Context, @ColorRes color: Int, alpha: Int): In
)
}
-/**
- * Get the inactive alpha of an accent.
- */
-@ColorInt
-fun getInactiveAlpha(@ColorRes color: Int): Int {
- return if (color == R.color.yellow) 100 else 150
-}
-
/**
* Resolve a color.
* @param context [Context] required
diff --git a/app/src/main/res/layout/item_artist_album.xml b/app/src/main/res/layout/item_artist_album.xml
index 62ae3fec8..c93b11ac2 100644
--- a/app/src/main/res/layout/item_artist_album.xml
+++ b/app/src/main/res/layout/item_artist_album.xml
@@ -40,6 +40,7 @@
style="@style/ItemText.Secondary"
app:albumYear="@{album}"
app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/album_cover"
app:layout_constraintTop_toBottomOf="@+id/album_name"
tools:text="2020" />
diff --git a/app/src/main/res/layout/item_genre.xml b/app/src/main/res/layout/item_genre.xml
index d2171644d..c047860f0 100644
--- a/app/src/main/res/layout/item_genre.xml
+++ b/app/src/main/res/layout/item_genre.xml
@@ -40,6 +40,7 @@
style="@style/ItemText.Secondary"
app:genreCounts="@{genre}"
app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/genre_image"
app:layout_constraintTop_toBottomOf="@+id/genre_name"
tools:text="2 Artists, 4 Albums" />
diff --git a/app/src/main/res/layout/item_genre_artist.xml b/app/src/main/res/layout/item_genre_artist.xml
index d6e0666c5..108ad7ce2 100644
--- a/app/src/main/res/layout/item_genre_artist.xml
+++ b/app/src/main/res/layout/item_genre_artist.xml
@@ -40,6 +40,7 @@
style='@style/ItemText.Secondary'
app:artistCounts="@{artist}"
app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/artist_image"
app:layout_constraintTop_toBottomOf="@+id/artist_name"
tools:text="2 Albums, 20 Songs" />
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index fceb8b28f..668bf341f 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -23,7 +23,7 @@
#4caf50
#8bc34a
#cddc39
- #ffeb3b
+ #F1CA00
#ffc107
#ff9800
#ff5722
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index e201bfd9c..6f2312480 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -119,6 +119,7 @@
Brown
Grey
Blue Grey
+ Neutral
%1$s / %2$s
diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml
index 3d2fb38ac..1afd231c2 100644
--- a/app/src/main/res/values/themes.xml
+++ b/app/src/main/res/values/themes.xml
@@ -97,4 +97,9 @@
- @color/blue_grey
- @color/blue_grey
+
+
\ No newline at end of file