all: various cleanup

This commit is contained in:
Alexander Capehart 2024-08-29 09:31:15 -06:00
parent 889713d5e0
commit bf50867b37
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47
4 changed files with 20 additions and 17 deletions

View file

@ -105,8 +105,11 @@ fun Category.toMediaItem(context: Context): MediaItem {
return MediaItem(description.build(), MediaItem.FLAG_BROWSABLE)
}
fun Song.toMediaDescription(context: Context, parent: MusicParent? = null,
vararg sugar: Sugar): MediaDescriptionCompat {
fun Song.toMediaDescription(
context: Context,
parent: MusicParent? = null,
vararg sugar: Sugar
): MediaDescriptionCompat {
val mediaSessionUID =
if (parent == null) {
MediaSessionUID.SingleItem(uid)

View file

@ -21,8 +21,6 @@ package org.oxycblt.auxio.playback.system
import android.annotation.SuppressLint
import android.content.Context
import android.graphics.Bitmap
import android.os.Bundle
import android.support.v4.media.MediaDescriptionCompat
import android.support.v4.media.MediaMetadataCompat
import android.support.v4.media.session.MediaSessionCompat
import android.support.v4.media.session.PlaybackStateCompat
@ -43,7 +41,6 @@ import org.oxycblt.auxio.music.Song
import org.oxycblt.auxio.music.resolveNames
import org.oxycblt.auxio.music.service.MediaSessionUID
import org.oxycblt.auxio.music.service.toMediaDescription
import org.oxycblt.auxio.music.service.toMediaItem
import org.oxycblt.auxio.playback.ActionMode
import org.oxycblt.auxio.playback.PlaybackSettings
import org.oxycblt.auxio.playback.service.MediaSessionInterface
@ -306,7 +303,9 @@ private constructor(
private fun updateQueue(queue: List<Song>) {
val queueItems =
queue.mapIndexed { i, song ->
val description = song.toMediaDescription(context, null, { putInt(MediaSessionInterface.KEY_QUEUE_POS, i) })
val description =
song.toMediaDescription(
context, null, { putInt(MediaSessionInterface.KEY_QUEUE_POS, i) })
// Store the item index so we can then use the analogous index in the
// playback state.
MediaSessionCompat.QueueItem(description, i.toLong())

View file

@ -102,13 +102,13 @@ constructor(
super.onAddQueueItem(description)
val deviceLibrary = musicRepository.deviceLibrary ?: return
val uid = MediaSessionUID.fromString(description.mediaId ?: return) ?: return
val song =
val songUid =
when (uid) {
is MediaSessionUID.SingleItem -> deviceLibrary.findSong(uid.uid)
is MediaSessionUID.ChildItem -> deviceLibrary.findSong(uid.childUid)
else -> null
is MediaSessionUID.SingleItem -> uid.uid
is MediaSessionUID.ChildItem -> uid.childUid
else -> return
}
?: return
val song = deviceLibrary.songs.find { it.uid == songUid } ?: return
playbackManager.addToQueue(song)
}
@ -123,7 +123,8 @@ constructor(
}
// Non-queue item or queue item lost it's extras in transit, remove the first item
val uid = MediaSessionUID.fromString(description.mediaId ?: return) ?: return
val songUid = when (uid) {
val songUid =
when (uid) {
is MediaSessionUID.SingleItem -> uid.uid
is MediaSessionUID.ChildItem -> uid.childUid
else -> return

View file

@ -1,6 +1,6 @@
/*
* Copyright (c) 2024 Auxio Project
* PlaybackActionHandler.kt is part of Auxio.
* PlaybackActions.kt is part of Auxio.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by