Normalize volume (#53)

This commit is contained in:
vfsfitvnm
2022-06-21 19:37:01 +02:00
parent 0ab184cd85
commit 8a94c7e714
10 changed files with 399 additions and 28 deletions

View File

@@ -236,9 +236,7 @@ fun BaseMediaItemMenu(
coroutineScope.launch(Dispatchers.IO) {
val playlistId = Database.playlist(playlist.id)?.id ?: Database.insert(playlist)
if (Database.song(mediaItem.mediaId) == null) {
Database.insert(mediaItem)
}
Database.insert(mediaItem)
Database.insert(
SongInPlaylist(

View File

@@ -111,9 +111,7 @@ fun IntentUriScreen(uri: Uri) {
items.valueOrNull
?.map(YouTube.Item.Song::asMediaItem)
?.forEachIndexed { index, mediaItem ->
if (Database.song(mediaItem.mediaId) == null) {
Database.insert(mediaItem)
}
Database.insert(mediaItem)
Database.insert(
SongInPlaylist(

View File

@@ -175,11 +175,7 @@ fun PlaylistOrAlbumScreen(
song
.toMediaItem(browseId, album)
?.let { mediaItem ->
if (Database.song(mediaItem.mediaId) == null) {
Database.insert(
mediaItem
)
}
Database.insert(mediaItem)
Database.insert(
SongInPlaylist(

View File

@@ -17,7 +17,6 @@ import androidx.compose.material.ripple.rememberRipple
import androidx.compose.runtime.*
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.alpha
import androidx.compose.ui.draw.scale
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.unit.dp
@@ -29,7 +28,6 @@ import it.vfsfitvnm.vimusic.Database
import it.vfsfitvnm.vimusic.models.Song
import it.vfsfitvnm.vimusic.ui.components.BottomSheet
import it.vfsfitvnm.vimusic.ui.components.BottomSheetState
import it.vfsfitvnm.vimusic.ui.components.themed.TextPlaceholder
import it.vfsfitvnm.vimusic.ui.screens.rememberLyricsRoute
import it.vfsfitvnm.vimusic.ui.styling.LocalColorPalette
import it.vfsfitvnm.vimusic.ui.styling.LocalTypography
@@ -198,13 +196,15 @@ fun PlayerBottomSheet(
lyricsOutcome = nextOutcome.flatMap {
it.lyrics?.text().toNotNull()
}.map {
it ?: ""
}.map {
}.map { lyrics ->
lyrics ?: ""
}.map { lyrics ->
withContext(Dispatchers.IO) {
Database.update((song ?: Database.insert(player.mediaItem!!)).copy(lyrics = it))
(song ?: player.mediaItem?.let(Database::insert))?.let {
Database.update(it.copy(lyrics = lyrics))
}
}
it
lyrics
}
}
},
@@ -218,9 +218,11 @@ fun PlayerBottomSheet(
})
}
},
onLyricsUpdate = {
onLyricsUpdate = { lyrics ->
coroutineScope.launch(Dispatchers.IO) {
Database.update((song ?: Database.insert(player.mediaItem!!)).copy(lyrics = it))
(song ?: player.mediaItem?.let(Database::insert))?.let {
Database.update(it.copy(lyrics = lyrics))
}
}
}
)

View File

@@ -342,9 +342,9 @@ fun PlayerView(
modifier = Modifier
.clickable {
coroutineScope.launch(Dispatchers.IO) {
Database.update(
(song ?: Database.insert(player.mediaItem!!)).toggleLike()
)
(song ?: player.mediaItem?.let(Database::insert))?.let {
Database.update(it.toggleLike())
}
}
}
.padding(horizontal = 16.dp)