musikr: split off from auxio

This commit is contained in:
Alexander Capehart 2024-12-07 09:50:57 -07:00
parent 75c2d7cd16
commit abeabcb8df
No known key found for this signature in database
GPG key ID: 37DBE3621FE9AD47
157 changed files with 523 additions and 510 deletions

View file

@ -50,10 +50,10 @@ import org.oxycblt.auxio.home.HomeViewModel
import org.oxycblt.auxio.home.Outer import org.oxycblt.auxio.home.Outer
import org.oxycblt.auxio.list.ListViewModel import org.oxycblt.auxio.list.ListViewModel
import org.oxycblt.auxio.music.IndexingState import org.oxycblt.auxio.music.IndexingState
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.MusicType
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.OpenPanel import org.oxycblt.auxio.playback.OpenPanel
import org.oxycblt.auxio.playback.PlaybackBottomSheetBehavior import org.oxycblt.auxio.playback.PlaybackBottomSheetBehavior
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel

View file

@ -29,13 +29,13 @@ import org.oxycblt.auxio.detail.list.AlbumDetailListAdapter
import org.oxycblt.auxio.list.Item import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.list.ListFragment import org.oxycblt.auxio.list.ListFragment
import org.oxycblt.auxio.list.menu.Menu import org.oxycblt.auxio.list.menu.Menu
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.PlaylistDecision import org.oxycblt.auxio.music.PlaylistDecision
import org.oxycblt.auxio.music.PlaylistMessage import org.oxycblt.auxio.music.PlaylistMessage
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.playback.PlaybackDecision import org.oxycblt.auxio.playback.PlaybackDecision
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.util.collect import org.oxycblt.auxio.util.collect

View file

@ -29,14 +29,14 @@ import org.oxycblt.auxio.detail.list.ArtistDetailListAdapter
import org.oxycblt.auxio.list.Item import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.list.ListFragment import org.oxycblt.auxio.list.ListFragment
import org.oxycblt.auxio.list.menu.Menu import org.oxycblt.auxio.list.menu.Menu
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.PlaylistDecision import org.oxycblt.auxio.music.PlaylistDecision
import org.oxycblt.auxio.music.PlaylistMessage import org.oxycblt.auxio.music.PlaylistMessage
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.playback.PlaybackDecision import org.oxycblt.auxio.playback.PlaybackDecision
import org.oxycblt.auxio.util.collect import org.oxycblt.auxio.util.collect
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately

View file

@ -35,8 +35,8 @@ import org.oxycblt.auxio.list.ListFragment
import org.oxycblt.auxio.list.ListViewModel import org.oxycblt.auxio.list.ListViewModel
import org.oxycblt.auxio.list.PlainDivider import org.oxycblt.auxio.list.PlainDivider
import org.oxycblt.auxio.list.PlainHeader import org.oxycblt.auxio.list.PlainHeader
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.util.getDimenPixels import org.oxycblt.auxio.util.getDimenPixels

View file

@ -23,17 +23,17 @@ import javax.inject.Inject
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.list.ListSettings import org.oxycblt.auxio.list.ListSettings
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.MusicType
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.musikr.tag.Disc import org.oxycblt.musikr.tag.Disc
import org.oxycblt.auxio.musikr.tag.ReleaseType import org.oxycblt.musikr.tag.ReleaseType
import timber.log.Timber as L import timber.log.Timber as L
interface DetailGenerator { interface DetailGenerator {

View file

@ -40,16 +40,16 @@ import org.oxycblt.auxio.list.PlainDivider
import org.oxycblt.auxio.list.PlainHeader import org.oxycblt.auxio.list.PlainHeader
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.MusicType
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.musikr.metadata.AudioProperties import org.oxycblt.musikr.metadata.AudioProperties
import org.oxycblt.auxio.playback.PlaySong import org.oxycblt.auxio.playback.PlaySong
import org.oxycblt.auxio.playback.PlaybackSettings import org.oxycblt.auxio.playback.PlaybackSettings
import org.oxycblt.auxio.util.Event import org.oxycblt.auxio.util.Event

View file

@ -29,13 +29,13 @@ import org.oxycblt.auxio.detail.list.GenreDetailListAdapter
import org.oxycblt.auxio.list.Item import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.list.ListFragment import org.oxycblt.auxio.list.ListFragment
import org.oxycblt.auxio.list.menu.Menu import org.oxycblt.auxio.list.menu.Menu
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.PlaylistDecision import org.oxycblt.auxio.music.PlaylistDecision
import org.oxycblt.auxio.music.PlaylistMessage import org.oxycblt.auxio.music.PlaylistMessage
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackDecision import org.oxycblt.auxio.playback.PlaybackDecision
import org.oxycblt.auxio.util.collect import org.oxycblt.auxio.util.collect
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately

View file

@ -35,13 +35,13 @@ import org.oxycblt.auxio.detail.list.PlaylistDragCallback
import org.oxycblt.auxio.list.Item import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.list.ListFragment import org.oxycblt.auxio.list.ListFragment
import org.oxycblt.auxio.list.menu.Menu import org.oxycblt.auxio.list.menu.Menu
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.PlaylistDecision import org.oxycblt.auxio.music.PlaylistDecision
import org.oxycblt.auxio.music.PlaylistMessage import org.oxycblt.auxio.music.PlaylistMessage
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.musikr.playlist.m3u.M3U import org.oxycblt.musikr.playlist.m3u.M3U
import org.oxycblt.auxio.playback.PlaybackDecision import org.oxycblt.auxio.playback.PlaybackDecision
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.ui.DialogAwareNavigationListener import org.oxycblt.auxio.ui.DialogAwareNavigationListener

View file

@ -32,11 +32,11 @@ import org.oxycblt.auxio.databinding.DialogSongDetailBinding
import org.oxycblt.auxio.detail.list.SongProperty import org.oxycblt.auxio.detail.list.SongProperty
import org.oxycblt.auxio.detail.list.SongPropertyAdapter import org.oxycblt.auxio.detail.list.SongPropertyAdapter
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.musikr.metadata.AudioProperties import org.oxycblt.musikr.metadata.AudioProperties
import org.oxycblt.auxio.musikr.tag.Name import org.oxycblt.musikr.tag.Name
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.playback.replaygain.formatDb import org.oxycblt.auxio.playback.replaygain.formatDb
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment

View file

@ -25,7 +25,7 @@ import org.oxycblt.auxio.list.ClickableListListener
import org.oxycblt.auxio.list.adapter.FlexibleListAdapter import org.oxycblt.auxio.list.adapter.FlexibleListAdapter
import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.list.adapter.SimpleDiffCallback
import org.oxycblt.auxio.list.recycler.DialogRecyclerView import org.oxycblt.auxio.list.recycler.DialogRecyclerView
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater

View file

@ -23,12 +23,12 @@ import dagger.hilt.android.lifecycle.HiltViewModel
import javax.inject.Inject import javax.inject.Inject
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Library import org.oxycblt.musikr.Library
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import timber.log.Timber as L import timber.log.Timber as L
/** /**

View file

@ -32,7 +32,7 @@ import org.oxycblt.auxio.databinding.DialogMusicChoicesBinding
import org.oxycblt.auxio.detail.DetailViewModel import org.oxycblt.auxio.detail.DetailViewModel
import org.oxycblt.auxio.list.ClickableListListener import org.oxycblt.auxio.list.ClickableListListener
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -35,10 +35,10 @@ import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.list.SelectableListListener import org.oxycblt.auxio.list.SelectableListListener
import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter
import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.list.adapter.SimpleDiffCallback
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.musikr.tag.Disc import org.oxycblt.musikr.tag.Disc
import org.oxycblt.auxio.musikr.tag.resolveNumber import org.oxycblt.musikr.tag.resolveNumber
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.getAttrColorCompat import org.oxycblt.auxio.util.getAttrColorCompat

View file

@ -29,10 +29,10 @@ import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.list.SelectableListListener import org.oxycblt.auxio.list.SelectableListListener
import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter
import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.list.adapter.SimpleDiffCallback
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater

View file

@ -35,7 +35,7 @@ import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter
import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.list.adapter.SimpleDiffCallback
import org.oxycblt.auxio.list.recycler.BasicHeaderViewHolder import org.oxycblt.auxio.list.recycler.BasicHeaderViewHolder
import org.oxycblt.auxio.list.recycler.DividerViewHolder import org.oxycblt.auxio.list.recycler.DividerViewHolder
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater

View file

@ -24,10 +24,10 @@ import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.list.adapter.SimpleDiffCallback
import org.oxycblt.auxio.list.recycler.ArtistViewHolder import org.oxycblt.auxio.list.recycler.ArtistViewHolder
import org.oxycblt.auxio.list.recycler.SongViewHolder import org.oxycblt.auxio.list.recycler.SongViewHolder
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
/** /**
* A [DetailListAdapter] implementing the header and sub-items for the [Genre] detail view. * A [DetailListAdapter] implementing the header and sub-items for the [Genre] detail view.

View file

@ -40,9 +40,9 @@ import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter
import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.list.adapter.SimpleDiffCallback
import org.oxycblt.auxio.list.recycler.MaterialDragCallback import org.oxycblt.auxio.list.recycler.MaterialDragCallback
import org.oxycblt.auxio.list.recycler.SongViewHolder import org.oxycblt.auxio.list.recycler.SongViewHolder
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.getAttrColorCompat import org.oxycblt.auxio.util.getAttrColorCompat
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater

View file

@ -26,7 +26,7 @@ import org.oxycblt.auxio.databinding.DialogSortBinding
import org.oxycblt.auxio.detail.DetailViewModel import org.oxycblt.auxio.detail.DetailViewModel
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.list.sort.SortDialog import org.oxycblt.auxio.list.sort.SortDialog
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -26,7 +26,7 @@ import org.oxycblt.auxio.databinding.DialogSortBinding
import org.oxycblt.auxio.detail.DetailViewModel import org.oxycblt.auxio.detail.DetailViewModel
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.list.sort.SortDialog import org.oxycblt.auxio.list.sort.SortDialog
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -26,7 +26,7 @@ import org.oxycblt.auxio.databinding.DialogSortBinding
import org.oxycblt.auxio.detail.DetailViewModel import org.oxycblt.auxio.detail.DetailViewModel
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.list.sort.SortDialog import org.oxycblt.auxio.list.sort.SortDialog
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -26,7 +26,7 @@ import org.oxycblt.auxio.databinding.DialogSortBinding
import org.oxycblt.auxio.detail.DetailViewModel import org.oxycblt.auxio.detail.DetailViewModel
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.list.sort.SortDialog import org.oxycblt.auxio.list.sort.SortDialog
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -59,14 +59,14 @@ import org.oxycblt.auxio.list.ListViewModel
import org.oxycblt.auxio.list.SelectionFragment import org.oxycblt.auxio.list.SelectionFragment
import org.oxycblt.auxio.list.menu.Menu import org.oxycblt.auxio.list.menu.Menu
import org.oxycblt.auxio.music.IndexingState import org.oxycblt.auxio.music.IndexingState
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.MusicType
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.PlaylistDecision import org.oxycblt.auxio.music.PlaylistDecision
import org.oxycblt.auxio.music.PlaylistMessage import org.oxycblt.auxio.music.PlaylistMessage
import org.oxycblt.auxio.musikr.IndexingProgress import org.oxycblt.musikr.IndexingProgress
import org.oxycblt.auxio.musikr.playlist.m3u.M3U import org.oxycblt.musikr.playlist.m3u.M3U
import org.oxycblt.auxio.playback.PlaybackDecision import org.oxycblt.auxio.playback.PlaybackDecision
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.util.collect import org.oxycblt.auxio.util.collect

View file

@ -22,13 +22,13 @@ import javax.inject.Inject
import org.oxycblt.auxio.home.tabs.Tab import org.oxycblt.auxio.home.tabs.Tab
import org.oxycblt.auxio.list.ListSettings import org.oxycblt.auxio.list.ListSettings
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.MusicType
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import timber.log.Timber as L import timber.log.Timber as L
interface HomeGenerator { interface HomeGenerator {

View file

@ -27,12 +27,12 @@ import org.oxycblt.auxio.home.tabs.Tab
import org.oxycblt.auxio.list.ListSettings import org.oxycblt.auxio.list.ListSettings
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.MusicType
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaySong import org.oxycblt.auxio.playback.PlaySong
import org.oxycblt.auxio.playback.PlaybackSettings import org.oxycblt.auxio.playback.PlaybackSettings
import org.oxycblt.auxio.util.Event import org.oxycblt.auxio.util.Event

View file

@ -37,12 +37,12 @@ import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter
import org.oxycblt.auxio.list.recycler.AlbumViewHolder import org.oxycblt.auxio.list.recycler.AlbumViewHolder
import org.oxycblt.auxio.list.recycler.FastScrollRecyclerView import org.oxycblt.auxio.list.recycler.FastScrollRecyclerView
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.IndexingState import org.oxycblt.auxio.music.IndexingState
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.playback.secsToMs import org.oxycblt.auxio.playback.secsToMs

View file

@ -35,12 +35,12 @@ import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter
import org.oxycblt.auxio.list.recycler.ArtistViewHolder import org.oxycblt.auxio.list.recycler.ArtistViewHolder
import org.oxycblt.auxio.list.recycler.FastScrollRecyclerView import org.oxycblt.auxio.list.recycler.FastScrollRecyclerView
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.IndexingState import org.oxycblt.auxio.music.IndexingState
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately

View file

@ -35,12 +35,12 @@ import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter
import org.oxycblt.auxio.list.recycler.FastScrollRecyclerView import org.oxycblt.auxio.list.recycler.FastScrollRecyclerView
import org.oxycblt.auxio.list.recycler.GenreViewHolder import org.oxycblt.auxio.list.recycler.GenreViewHolder
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.IndexingState import org.oxycblt.auxio.music.IndexingState
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately

View file

@ -35,11 +35,11 @@ import org.oxycblt.auxio.list.recycler.FastScrollRecyclerView
import org.oxycblt.auxio.list.recycler.PlaylistViewHolder import org.oxycblt.auxio.list.recycler.PlaylistViewHolder
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.IndexingState import org.oxycblt.auxio.music.IndexingState
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately

View file

@ -37,10 +37,10 @@ import org.oxycblt.auxio.list.recycler.FastScrollRecyclerView
import org.oxycblt.auxio.list.recycler.SongViewHolder import org.oxycblt.auxio.list.recycler.SongViewHolder
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.IndexingState import org.oxycblt.auxio.music.IndexingState
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.playback.secsToMs import org.oxycblt.auxio.playback.secsToMs

View file

@ -20,7 +20,6 @@ package org.oxycblt.auxio.image
import android.content.Context import android.content.Context
import android.graphics.Bitmap import android.graphics.Bitmap
import androidx.core.graphics.drawable.toBitmap
import coil3.ImageLoader import coil3.ImageLoader
import coil3.request.Disposable import coil3.request.Disposable
import coil3.request.ImageRequest import coil3.request.ImageRequest
@ -28,7 +27,7 @@ import coil3.size.Size
import coil3.toBitmap import coil3.toBitmap
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
/** /**
* A utility to provide bitmaps in a race-less manner. * A utility to provide bitmaps in a race-less manner.

View file

@ -53,12 +53,12 @@ import javax.inject.Inject
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.image.coil.RoundedRectTransformation import org.oxycblt.auxio.image.coil.RoundedRectTransformation
import org.oxycblt.auxio.image.coil.SquareCropTransformation import org.oxycblt.auxio.image.coil.SquareCropTransformation
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.musikr.cover.Cover import org.oxycblt.musikr.cover.Cover
import org.oxycblt.auxio.ui.MaterialFader import org.oxycblt.auxio.ui.MaterialFader
import org.oxycblt.auxio.ui.UISettings import org.oxycblt.auxio.ui.UISettings
import org.oxycblt.auxio.util.getAttrColorCompat import org.oxycblt.auxio.util.getAttrColorCompat

View file

@ -44,7 +44,7 @@ import okio.FileSystem
import okio.buffer import okio.buffer
import okio.source import okio.source
import org.oxycblt.auxio.image.stack.CoverRetriever import org.oxycblt.auxio.image.stack.CoverRetriever
import org.oxycblt.auxio.musikr.cover.Cover import org.oxycblt.musikr.cover.Cover
class CoverKeyer @Inject constructor() : Keyer<Cover> { class CoverKeyer @Inject constructor() : Keyer<Cover> {
override fun key(data: Cover, options: Options) = "${data.key}&${options.size}" override fun key(data: Cover, options: Options) = "${data.key}&${options.size}"

View file

@ -21,8 +21,8 @@ package org.oxycblt.auxio.image.stack
import java.io.InputStream import java.io.InputStream
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.image.stack.extractor.CoverExtractor import org.oxycblt.auxio.image.stack.extractor.CoverExtractor
import org.oxycblt.auxio.musikr.cover.Cover import org.oxycblt.musikr.cover.Cover
import org.oxycblt.auxio.musikr.cover.CoverCache import org.oxycblt.musikr.cover.CoverCache
import timber.log.Timber import timber.log.Timber
interface CoverRetriever { interface CoverRetriever {

View file

@ -20,7 +20,7 @@ package org.oxycblt.auxio.image.stack.extractor
import android.net.Uri import android.net.Uri
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.musikr.cover.Cover import org.oxycblt.musikr.cover.Cover
interface CoverExtractor { interface CoverExtractor {
suspend fun extract(cover: Cover.Single): ByteArray? suspend fun extract(cover: Cover.Single): ByteArray?

View file

@ -20,7 +20,7 @@ package org.oxycblt.auxio.list
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import androidx.viewbinding.ViewBinding import androidx.viewbinding.ViewBinding
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
/** /**
* A Fragment containing a selectable list. * A Fragment containing a selectable list.

View file

@ -25,14 +25,14 @@ import javax.inject.Inject
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow
import org.oxycblt.auxio.list.menu.Menu import org.oxycblt.auxio.list.menu.Menu
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaySong import org.oxycblt.auxio.playback.PlaySong
import org.oxycblt.auxio.util.Event import org.oxycblt.auxio.util.Event
import org.oxycblt.auxio.util.MutableEvent import org.oxycblt.auxio.util.MutableEvent

View file

@ -21,7 +21,7 @@ package org.oxycblt.auxio.list.adapter
import android.view.View import android.view.View
import androidx.recyclerview.widget.DiffUtil import androidx.recyclerview.widget.DiffUtil
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import timber.log.Timber as L import timber.log.Timber as L
/** /**

View file

@ -21,12 +21,12 @@ package org.oxycblt.auxio.list.menu
import android.os.Parcelable import android.os.Parcelable
import androidx.annotation.MenuRes import androidx.annotation.MenuRes
import kotlinx.parcelize.Parcelize import kotlinx.parcelize.Parcelize
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaySong import org.oxycblt.auxio.playback.PlaySong
/** /**

View file

@ -27,12 +27,12 @@ import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.DialogMenuBinding import org.oxycblt.auxio.databinding.DialogMenuBinding
import org.oxycblt.auxio.detail.DetailViewModel import org.oxycblt.auxio.detail.DetailViewModel
import org.oxycblt.auxio.list.ListViewModel import org.oxycblt.auxio.list.ListViewModel
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.playback.formatDurationMs import org.oxycblt.auxio.playback.formatDurationMs
import org.oxycblt.auxio.util.getPlural import org.oxycblt.auxio.util.getPlural

View file

@ -23,7 +23,7 @@ import dagger.hilt.android.lifecycle.HiltViewModel
import javax.inject.Inject import javax.inject.Inject
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.playback.PlaySong import org.oxycblt.auxio.playback.PlaySong
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -32,13 +32,13 @@ import org.oxycblt.auxio.list.PlainDivider
import org.oxycblt.auxio.list.SelectableListListener import org.oxycblt.auxio.list.SelectableListListener
import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter import org.oxycblt.auxio.list.adapter.SelectionIndicatorAdapter
import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.list.adapter.SimpleDiffCallback
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.areNamesTheSame import org.oxycblt.musikr.areNamesTheSame
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.getPlural import org.oxycblt.auxio.util.getPlural
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater

View file

@ -20,11 +20,11 @@ package org.oxycblt.auxio.list.sort
import org.oxycblt.auxio.IntegerTable import org.oxycblt.auxio.IntegerTable
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
/** /**
* A sorting method. * A sorting method.

View file

@ -19,7 +19,7 @@
package org.oxycblt.auxio.music package org.oxycblt.auxio.music
import android.os.Build import android.os.Build
import org.oxycblt.auxio.musikr.IndexingProgress import org.oxycblt.musikr.IndexingProgress
/** Version-aware permission identifier for reading audio files. */ /** Version-aware permission identifier for reading audio files. */
val PERMISSION_READ_AUDIO = val PERMISSION_READ_AUDIO =

View file

@ -25,12 +25,16 @@ import kotlinx.coroutines.Job
import kotlinx.coroutines.withContext import kotlinx.coroutines.withContext
import kotlinx.coroutines.yield import kotlinx.coroutines.yield
import org.oxycblt.auxio.music.MusicRepository.IndexingWorker import org.oxycblt.auxio.music.MusicRepository.IndexingWorker
import org.oxycblt.auxio.musikr.Indexer import org.oxycblt.musikr.Indexer
import org.oxycblt.auxio.musikr.IndexingProgress import org.oxycblt.musikr.IndexingProgress
import org.oxycblt.auxio.musikr.model.MutableLibrary import org.oxycblt.musikr.Library
import org.oxycblt.auxio.musikr.tag.Interpretation import org.oxycblt.musikr.Music
import org.oxycblt.auxio.musikr.tag.Name import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.musikr.tag.interpret.Separators import org.oxycblt.musikr.Song
import org.oxycblt.musikr.model.MutableLibrary
import org.oxycblt.musikr.tag.Interpretation
import org.oxycblt.musikr.tag.Name
import org.oxycblt.musikr.tag.interpret.Separators
import timber.log.Timber as L import timber.log.Timber as L
/** /**

View file

@ -24,7 +24,7 @@ import androidx.core.content.edit
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.musikr.fs.path.DocumentPathFactory import org.oxycblt.musikr.fs.path.DocumentPathFactory
import org.oxycblt.auxio.settings.Settings import org.oxycblt.auxio.settings.Settings
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -29,10 +29,15 @@ import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.list.ListSettings import org.oxycblt.auxio.list.ListSettings
import org.oxycblt.auxio.musikr.playlist.ExportConfig import org.oxycblt.musikr.playlist.ExportConfig
import org.oxycblt.auxio.musikr.playlist.ExternalPlaylistManager import org.oxycblt.musikr.playlist.ExternalPlaylistManager
import org.oxycblt.auxio.util.Event import org.oxycblt.auxio.util.Event
import org.oxycblt.auxio.util.MutableEvent import org.oxycblt.auxio.util.MutableEvent
import org.oxycblt.musikr.Album
import org.oxycblt.musikr.Artist
import org.oxycblt.musikr.Genre
import org.oxycblt.musikr.Playlist
import org.oxycblt.musikr.Song
import timber.log.Timber as L import timber.log.Timber as L
/** /**

View file

@ -33,7 +33,7 @@ import org.oxycblt.auxio.databinding.DialogMusicChoicesBinding
import org.oxycblt.auxio.list.ClickableListListener import org.oxycblt.auxio.list.ClickableListListener
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.PlaylistDecision import org.oxycblt.auxio.music.PlaylistDecision
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately
import org.oxycblt.auxio.util.navigateSafe import org.oxycblt.auxio.util.navigateSafe

View file

@ -29,7 +29,7 @@ import dagger.hilt.android.AndroidEntryPoint
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.DialogDeletePlaylistBinding import org.oxycblt.auxio.databinding.DialogDeletePlaylistBinding
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately
import org.oxycblt.auxio.util.unlikelyToBeNull import org.oxycblt.auxio.util.unlikelyToBeNull

View file

@ -31,9 +31,9 @@ import dagger.hilt.android.AndroidEntryPoint
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.DialogPlaylistExportBinding import org.oxycblt.auxio.databinding.DialogPlaylistExportBinding
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.musikr.playlist.ExportConfig import org.oxycblt.musikr.playlist.ExportConfig
import org.oxycblt.auxio.musikr.playlist.m3u.M3U import org.oxycblt.musikr.playlist.m3u.M3U
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately
import org.oxycblt.auxio.util.unlikelyToBeNull import org.oxycblt.auxio.util.unlikelyToBeNull

View file

@ -27,12 +27,12 @@ import kotlinx.coroutines.flow.StateFlow
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.list.Item import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.PlaylistDecision import org.oxycblt.auxio.music.PlaylistDecision
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.musikr.playlist.ExportConfig import org.oxycblt.musikr.playlist.ExportConfig
import timber.log.Timber as L import timber.log.Timber as L
/** /**

View file

@ -24,7 +24,7 @@ import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import org.oxycblt.auxio.databinding.ItemMusicLocationBinding import org.oxycblt.auxio.databinding.ItemMusicLocationBinding
import org.oxycblt.auxio.list.recycler.DialogRecyclerView import org.oxycblt.auxio.list.recycler.DialogRecyclerView
import org.oxycblt.auxio.musikr.fs.Path import org.oxycblt.musikr.fs.Path
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -36,7 +36,7 @@ import org.oxycblt.auxio.BuildConfig
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.DialogMusicLocationsBinding import org.oxycblt.auxio.databinding.DialogMusicLocationsBinding
import org.oxycblt.auxio.music.MusicSettings import org.oxycblt.auxio.music.MusicSettings
import org.oxycblt.auxio.musikr.fs.path.DocumentPathFactory import org.oxycblt.musikr.fs.path.DocumentPathFactory
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment
import org.oxycblt.auxio.util.showToast import org.oxycblt.auxio.util.showToast
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -29,7 +29,7 @@ import org.oxycblt.auxio.BuildConfig
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.DialogSeparatorsBinding import org.oxycblt.auxio.databinding.DialogSeparatorsBinding
import org.oxycblt.auxio.music.MusicSettings import org.oxycblt.auxio.music.MusicSettings
import org.oxycblt.auxio.musikr.tag.interpret.Separators import org.oxycblt.musikr.tag.interpret.Separators
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -25,7 +25,7 @@ import org.oxycblt.auxio.BuildConfig
import org.oxycblt.auxio.ForegroundServiceNotification import org.oxycblt.auxio.ForegroundServiceNotification
import org.oxycblt.auxio.IntegerTable import org.oxycblt.auxio.IntegerTable
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.musikr.IndexingProgress import org.oxycblt.musikr.IndexingProgress
import org.oxycblt.auxio.util.newMainPendingIntent import org.oxycblt.auxio.util.newMainPendingIntent
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -30,7 +30,7 @@ import org.oxycblt.auxio.BuildConfig
import org.oxycblt.auxio.ForegroundListener import org.oxycblt.auxio.ForegroundListener
import org.oxycblt.auxio.ForegroundServiceNotification import org.oxycblt.auxio.ForegroundServiceNotification
import org.oxycblt.auxio.music.IndexingState import org.oxycblt.auxio.music.IndexingState
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.MusicSettings import org.oxycblt.auxio.music.MusicSettings
import org.oxycblt.auxio.playback.state.PlaybackStateManager import org.oxycblt.auxio.playback.state.PlaybackStateManager

View file

@ -27,14 +27,14 @@ import androidx.annotation.StringRes
import androidx.media.utils.MediaConstants import androidx.media.utils.MediaConstants
import org.oxycblt.auxio.BuildConfig import org.oxycblt.auxio.BuildConfig
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.playback.formatDurationDs import org.oxycblt.auxio.playback.formatDurationDs
import org.oxycblt.auxio.util.getPlural import org.oxycblt.auxio.util.getPlural

View file

@ -27,15 +27,15 @@ import org.oxycblt.auxio.detail.DetailGenerator
import org.oxycblt.auxio.detail.DetailSection import org.oxycblt.auxio.detail.DetailSection
import org.oxycblt.auxio.home.HomeGenerator import org.oxycblt.auxio.home.HomeGenerator
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.MusicType
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.musikr.tag.resolveNumber import org.oxycblt.musikr.tag.resolveNumber
import org.oxycblt.auxio.search.SearchEngine import org.oxycblt.auxio.search.SearchEngine
class MusicBrowser class MusicBrowser

View file

@ -27,7 +27,7 @@ import dagger.hilt.android.qualifiers.ApplicationContext
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.MusicSettings import org.oxycblt.auxio.music.MusicSettings
import org.oxycblt.auxio.musikr.fs.contentResolverSafe import org.oxycblt.musikr.fs.contentResolverSafe
import timber.log.Timber as L import timber.log.Timber as L
/** /**

View file

@ -19,10 +19,10 @@
package org.oxycblt.auxio.playback package org.oxycblt.auxio.playback
import org.oxycblt.auxio.IntegerTable import org.oxycblt.auxio.IntegerTable
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
/** /**
* Configuration to play a song in a desired way. * Configuration to play a song in a desired way.

View file

@ -26,8 +26,8 @@ import dagger.hilt.android.AndroidEntryPoint
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.FragmentPlaybackBarBinding import org.oxycblt.auxio.databinding.FragmentPlaybackBarBinding
import org.oxycblt.auxio.detail.DetailViewModel import org.oxycblt.auxio.detail.DetailViewModel
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.playback.state.RepeatMode import org.oxycblt.auxio.playback.state.RepeatMode
import org.oxycblt.auxio.ui.ViewBindingFragment import org.oxycblt.auxio.ui.ViewBindingFragment
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately

View file

@ -35,9 +35,9 @@ import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.FragmentPlaybackPanelBinding import org.oxycblt.auxio.databinding.FragmentPlaybackPanelBinding
import org.oxycblt.auxio.detail.DetailViewModel import org.oxycblt.auxio.detail.DetailViewModel
import org.oxycblt.auxio.list.ListViewModel import org.oxycblt.auxio.list.ListViewModel
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.playback.state.RepeatMode import org.oxycblt.auxio.playback.state.RepeatMode
import org.oxycblt.auxio.playback.ui.StyledSeekBar import org.oxycblt.auxio.playback.ui.StyledSeekBar
import org.oxycblt.auxio.playback.ui.SwipeCoverView import org.oxycblt.auxio.playback.ui.SwipeCoverView

View file

@ -28,12 +28,12 @@ import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
import org.oxycblt.auxio.list.ListSettings import org.oxycblt.auxio.list.ListSettings
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.state.DeferredPlayback import org.oxycblt.auxio.playback.state.DeferredPlayback
import org.oxycblt.auxio.playback.state.PlaybackCommand import org.oxycblt.auxio.playback.state.PlaybackCommand
import org.oxycblt.auxio.playback.state.PlaybackStateManager import org.oxycblt.auxio.playback.state.PlaybackStateManager

View file

@ -25,7 +25,7 @@ import org.oxycblt.auxio.list.ClickableListListener
import org.oxycblt.auxio.list.adapter.FlexibleListAdapter import org.oxycblt.auxio.list.adapter.FlexibleListAdapter
import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.list.adapter.SimpleDiffCallback
import org.oxycblt.auxio.list.recycler.DialogRecyclerView import org.oxycblt.auxio.list.recycler.DialogRecyclerView
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater

View file

@ -25,7 +25,7 @@ import org.oxycblt.auxio.list.ClickableListListener
import org.oxycblt.auxio.list.adapter.FlexibleListAdapter import org.oxycblt.auxio.list.adapter.FlexibleListAdapter
import org.oxycblt.auxio.list.adapter.SimpleDiffCallback import org.oxycblt.auxio.list.adapter.SimpleDiffCallback
import org.oxycblt.auxio.list.recycler.DialogRecyclerView import org.oxycblt.auxio.list.recycler.DialogRecyclerView
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater

View file

@ -31,8 +31,8 @@ import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.DialogMusicChoicesBinding import org.oxycblt.auxio.databinding.DialogMusicChoicesBinding
import org.oxycblt.auxio.list.ClickableListListener import org.oxycblt.auxio.list.ClickableListListener
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately

View file

@ -31,8 +31,8 @@ import org.oxycblt.auxio.R
import org.oxycblt.auxio.databinding.DialogMusicChoicesBinding import org.oxycblt.auxio.databinding.DialogMusicChoicesBinding
import org.oxycblt.auxio.list.ClickableListListener import org.oxycblt.auxio.list.ClickableListListener
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment import org.oxycblt.auxio.ui.ViewBindingMaterialDialogFragment
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately

View file

@ -23,10 +23,10 @@ import dagger.hilt.android.lifecycle.HiltViewModel
import javax.inject.Inject import javax.inject.Inject
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import timber.log.Timber as L import timber.log.Timber as L
/** /**

View file

@ -28,7 +28,7 @@ import androidx.room.Query
import androidx.room.RoomDatabase import androidx.room.RoomDatabase
import androidx.room.TypeConverters import androidx.room.TypeConverters
import androidx.room.migration.Migration import androidx.room.migration.Migration
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.playback.state.RepeatMode import org.oxycblt.auxio.playback.state.RepeatMode
/** /**

View file

@ -19,7 +19,7 @@
package org.oxycblt.auxio.playback.persist package org.oxycblt.auxio.playback.persist
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.playback.state.PlaybackStateManager import org.oxycblt.auxio.playback.state.PlaybackStateManager
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -32,8 +32,8 @@ import org.oxycblt.auxio.list.adapter.FlexibleListAdapter
import org.oxycblt.auxio.list.adapter.PlayingIndicatorAdapter import org.oxycblt.auxio.list.adapter.PlayingIndicatorAdapter
import org.oxycblt.auxio.list.recycler.MaterialDragCallback import org.oxycblt.auxio.list.recycler.MaterialDragCallback
import org.oxycblt.auxio.list.recycler.SongViewHolder import org.oxycblt.auxio.list.recycler.SongViewHolder
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.util.context import org.oxycblt.auxio.util.context
import org.oxycblt.auxio.util.getAttrColorCompat import org.oxycblt.auxio.util.getAttrColorCompat
import org.oxycblt.auxio.util.inflater import org.oxycblt.auxio.util.inflater

View file

@ -30,7 +30,7 @@ import dagger.hilt.android.AndroidEntryPoint
import kotlin.math.min import kotlin.math.min
import org.oxycblt.auxio.databinding.FragmentQueueBinding import org.oxycblt.auxio.databinding.FragmentQueueBinding
import org.oxycblt.auxio.list.EditClickListListener import org.oxycblt.auxio.list.EditClickListListener
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.ui.ViewBindingFragment import org.oxycblt.auxio.ui.ViewBindingFragment
import org.oxycblt.auxio.util.collectImmediately import org.oxycblt.auxio.util.collectImmediately

View file

@ -24,8 +24,8 @@ import javax.inject.Inject
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.state.PlaybackStateManager import org.oxycblt.auxio.playback.state.PlaybackStateManager
import org.oxycblt.auxio.playback.state.QueueChange import org.oxycblt.auxio.playback.state.QueueChange
import org.oxycblt.auxio.util.Event import org.oxycblt.auxio.util.Event

View file

@ -26,9 +26,9 @@ import androidx.media3.common.audio.BaseAudioProcessor
import java.nio.ByteBuffer import java.nio.ByteBuffer
import javax.inject.Inject import javax.inject.Inject
import kotlin.math.pow import kotlin.math.pow
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackSettings import org.oxycblt.auxio.playback.PlaybackSettings
import org.oxycblt.auxio.playback.state.PlaybackStateManager import org.oxycblt.auxio.playback.state.PlaybackStateManager
import org.oxycblt.auxio.playback.state.QueueChange import org.oxycblt.auxio.playback.state.QueueChange

View file

@ -43,9 +43,9 @@ import kotlinx.coroutines.launch
import kotlinx.coroutines.withContext import kotlinx.coroutines.withContext
import kotlinx.coroutines.yield import kotlinx.coroutines.yield
import org.oxycblt.auxio.image.ImageSettings import org.oxycblt.auxio.image.ImageSettings
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackSettings import org.oxycblt.auxio.playback.PlaybackSettings
import org.oxycblt.auxio.playback.msToSecs import org.oxycblt.auxio.playback.msToSecs
import org.oxycblt.auxio.playback.persist.PersistenceRepository import org.oxycblt.auxio.playback.persist.PersistenceRepository

View file

@ -36,9 +36,9 @@ import org.oxycblt.auxio.IntegerTable
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.image.BitmapProvider import org.oxycblt.auxio.image.BitmapProvider
import org.oxycblt.auxio.image.ImageSettings import org.oxycblt.auxio.image.ImageSettings
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.music.service.MediaSessionUID import org.oxycblt.auxio.music.service.MediaSessionUID
import org.oxycblt.auxio.music.service.toMediaDescription import org.oxycblt.auxio.music.service.toMediaDescription
import org.oxycblt.auxio.playback.ActionMode import org.oxycblt.auxio.playback.ActionMode

View file

@ -29,18 +29,18 @@ import dagger.hilt.android.qualifiers.ApplicationContext
import javax.inject.Inject import javax.inject.Inject
import org.apache.commons.text.similarity.JaroWinklerSimilarity import org.apache.commons.text.similarity.JaroWinklerSimilarity
import org.oxycblt.auxio.BuildConfig import org.oxycblt.auxio.BuildConfig
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Library import org.oxycblt.musikr.Library
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.music.service.MediaSessionUID import org.oxycblt.auxio.music.service.MediaSessionUID
import org.oxycblt.auxio.music.service.MusicBrowser import org.oxycblt.auxio.music.service.MusicBrowser
import org.oxycblt.auxio.musikr.tag.Name import org.oxycblt.musikr.tag.Name
import org.oxycblt.auxio.playback.state.PlaybackCommand import org.oxycblt.auxio.playback.state.PlaybackCommand
import org.oxycblt.auxio.playback.state.PlaybackStateManager import org.oxycblt.auxio.playback.state.PlaybackStateManager
import org.oxycblt.auxio.playback.state.RepeatMode import org.oxycblt.auxio.playback.state.RepeatMode

View file

@ -21,13 +21,13 @@ package org.oxycblt.auxio.playback.state
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.list.ListSettings import org.oxycblt.auxio.list.ListSettings
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaybackSettings import org.oxycblt.auxio.playback.PlaybackSettings
/** /**

View file

@ -22,8 +22,8 @@ import android.net.Uri
import android.os.SystemClock import android.os.SystemClock
import android.support.v4.media.session.PlaybackStateCompat import android.support.v4.media.session.PlaybackStateCompat
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
/** /**
* The designated "source of truth" for the current playback state. Should only be used by * The designated "source of truth" for the current playback state. Should only be used by

View file

@ -21,9 +21,9 @@ package org.oxycblt.auxio.playback.state
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.BuildConfig import org.oxycblt.auxio.BuildConfig
import org.oxycblt.auxio.list.adapter.UpdateInstructions import org.oxycblt.auxio.list.adapter.UpdateInstructions
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.state.PlaybackStateManager.Listener import org.oxycblt.auxio.playback.state.PlaybackStateManager.Listener
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -33,12 +33,12 @@ import org.oxycblt.auxio.list.recycler.DividerViewHolder
import org.oxycblt.auxio.list.recycler.GenreViewHolder import org.oxycblt.auxio.list.recycler.GenreViewHolder
import org.oxycblt.auxio.list.recycler.PlaylistViewHolder import org.oxycblt.auxio.list.recycler.PlaylistViewHolder
import org.oxycblt.auxio.list.recycler.SongViewHolder import org.oxycblt.auxio.list.recycler.SongViewHolder
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
/** /**
* An adapter that displays search results. * An adapter that displays search results.

View file

@ -22,13 +22,13 @@ import android.content.Context
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import java.text.Normalizer import java.text.Normalizer
import javax.inject.Inject import javax.inject.Inject
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.musikr.tag.Name import org.oxycblt.musikr.tag.Name
import timber.log.Timber as L import timber.log.Timber as L
/** /**

View file

@ -44,17 +44,17 @@ import org.oxycblt.auxio.list.ListViewModel
import org.oxycblt.auxio.list.PlainDivider import org.oxycblt.auxio.list.PlainDivider
import org.oxycblt.auxio.list.PlainHeader import org.oxycblt.auxio.list.PlainHeader
import org.oxycblt.auxio.list.menu.Menu import org.oxycblt.auxio.list.menu.Menu
import org.oxycblt.auxio.music.Album import org.oxycblt.musikr.Album
import org.oxycblt.auxio.music.Artist import org.oxycblt.musikr.Artist
import org.oxycblt.auxio.music.Genre import org.oxycblt.musikr.Genre
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.MusicViewModel import org.oxycblt.auxio.music.MusicViewModel
import org.oxycblt.auxio.music.Playlist import org.oxycblt.musikr.Playlist
import org.oxycblt.auxio.music.PlaylistDecision import org.oxycblt.auxio.music.PlaylistDecision
import org.oxycblt.auxio.music.PlaylistMessage import org.oxycblt.auxio.music.PlaylistMessage
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.musikr.playlist.m3u.M3U import org.oxycblt.musikr.playlist.m3u.M3U
import org.oxycblt.auxio.playback.PlaybackDecision import org.oxycblt.auxio.playback.PlaybackDecision
import org.oxycblt.auxio.playback.PlaybackViewModel import org.oxycblt.auxio.playback.PlaybackViewModel
import org.oxycblt.auxio.util.collect import org.oxycblt.auxio.util.collect

View file

@ -33,10 +33,10 @@ import org.oxycblt.auxio.list.BasicHeader
import org.oxycblt.auxio.list.Item import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.list.PlainDivider import org.oxycblt.auxio.list.PlainDivider
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Library import org.oxycblt.musikr.Library
import org.oxycblt.auxio.music.MusicRepository import org.oxycblt.auxio.music.MusicRepository
import org.oxycblt.auxio.music.MusicType import org.oxycblt.auxio.music.MusicType
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.PlaySong import org.oxycblt.auxio.playback.PlaySong
import org.oxycblt.auxio.playback.PlaybackSettings import org.oxycblt.auxio.playback.PlaybackSettings
import timber.log.Timber as L import timber.log.Timber as L

View file

@ -46,8 +46,8 @@ import androidx.viewbinding.ViewBinding
import com.google.android.material.appbar.MaterialToolbar import com.google.android.material.appbar.MaterialToolbar
import java.lang.IllegalArgumentException import java.lang.IllegalArgumentException
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import timber.log.Timber as L import timber.log.Timber as L
/** /**

View file

@ -22,7 +22,7 @@ import java.security.MessageDigest
import java.util.UUID import java.util.UUID
import kotlin.reflect.KClass import kotlin.reflect.KClass
import org.oxycblt.auxio.BuildConfig import org.oxycblt.auxio.BuildConfig
import org.oxycblt.auxio.musikr.tag.Date import org.oxycblt.musikr.tag.Date
/** /**
* Sanitizes a value that is unlikely to be null. On debug builds, this aliases to [requireNotNull], * Sanitizes a value that is unlikely to be null. On debug builds, this aliases to [requireNotNull],

View file

@ -30,8 +30,8 @@ import org.oxycblt.auxio.image.BitmapProvider
import org.oxycblt.auxio.image.ImageSettings import org.oxycblt.auxio.image.ImageSettings
import org.oxycblt.auxio.image.coil.RoundedRectTransformation import org.oxycblt.auxio.image.coil.RoundedRectTransformation
import org.oxycblt.auxio.image.coil.SquareCropTransformation import org.oxycblt.auxio.image.coil.SquareCropTransformation
import org.oxycblt.auxio.music.MusicParent import org.oxycblt.musikr.MusicParent
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
import org.oxycblt.auxio.playback.state.PlaybackStateManager import org.oxycblt.auxio.playback.state.PlaybackStateManager
import org.oxycblt.auxio.playback.state.Progression import org.oxycblt.auxio.playback.state.Progression
import org.oxycblt.auxio.playback.state.QueueChange import org.oxycblt.auxio.playback.state.QueueChange

View file

@ -30,7 +30,7 @@ import android.view.View
import android.widget.RemoteViews import android.widget.RemoteViews
import org.oxycblt.auxio.BuildConfig import org.oxycblt.auxio.BuildConfig
import org.oxycblt.auxio.R import org.oxycblt.auxio.R
import org.oxycblt.auxio.music.resolveNames import org.oxycblt.musikr.resolveNames
import org.oxycblt.auxio.playback.service.PlaybackActions import org.oxycblt.auxio.playback.service.PlaybackActions
import org.oxycblt.auxio.playback.state.RepeatMode import org.oxycblt.auxio.playback.state.RepeatMode
import org.oxycblt.auxio.ui.UISettings import org.oxycblt.auxio.ui.UISettings

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr package org.oxycblt.musikr
import android.net.Uri import android.net.Uri
import javax.inject.Inject import javax.inject.Inject
@ -26,11 +26,11 @@ import kotlinx.coroutines.flow.buffer
import kotlinx.coroutines.flow.onCompletion import kotlinx.coroutines.flow.onCompletion
import kotlinx.coroutines.flow.onEach import kotlinx.coroutines.flow.onEach
import kotlinx.coroutines.flow.onStart import kotlinx.coroutines.flow.onStart
import org.oxycblt.auxio.musikr.model.MutableLibrary import org.oxycblt.musikr.model.MutableLibrary
import org.oxycblt.auxio.musikr.pipeline.EvaluateStep import org.oxycblt.musikr.pipeline.EvaluateStep
import org.oxycblt.auxio.musikr.pipeline.ExploreStep import org.oxycblt.musikr.pipeline.ExploreStep
import org.oxycblt.auxio.musikr.pipeline.ExtractStep import org.oxycblt.musikr.pipeline.ExtractStep
import org.oxycblt.auxio.musikr.tag.Interpretation import org.oxycblt.musikr.tag.Interpretation
interface Indexer { interface Indexer {
suspend fun run( suspend fun run(

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.music package org.oxycblt.musikr
import android.content.Context import android.content.Context
import android.net.Uri import android.net.Uri
@ -28,13 +28,14 @@ import kotlin.math.max
import kotlinx.parcelize.IgnoredOnParcel import kotlinx.parcelize.IgnoredOnParcel
import kotlinx.parcelize.Parcelize import kotlinx.parcelize.Parcelize
import org.oxycblt.auxio.list.Item import org.oxycblt.auxio.list.Item
import org.oxycblt.auxio.musikr.cover.Cover import org.oxycblt.auxio.music.MusicType
import org.oxycblt.auxio.musikr.fs.MimeType import org.oxycblt.musikr.cover.Cover
import org.oxycblt.auxio.musikr.fs.Path import org.oxycblt.musikr.fs.MimeType
import org.oxycblt.auxio.musikr.tag.Date import org.oxycblt.musikr.fs.Path
import org.oxycblt.auxio.musikr.tag.Disc import org.oxycblt.musikr.tag.Date
import org.oxycblt.auxio.musikr.tag.Name import org.oxycblt.musikr.tag.Disc
import org.oxycblt.auxio.musikr.tag.ReleaseType import org.oxycblt.musikr.tag.Name
import org.oxycblt.musikr.tag.ReleaseType
import org.oxycblt.auxio.playback.replaygain.ReplayGainAdjustment import org.oxycblt.auxio.playback.replaygain.ReplayGainAdjustment
import org.oxycblt.auxio.util.concatLocalized import org.oxycblt.auxio.util.concatLocalized
import org.oxycblt.auxio.util.toUuidOrNull import org.oxycblt.auxio.util.toUuidOrNull
@ -138,7 +139,7 @@ sealed interface Music : Item {
@TypeConverter fun fromMusicUID(uid: UID?) = uid?.toString() @TypeConverter fun fromMusicUID(uid: UID?) = uid?.toString()
/** @see [Music.UID.fromString] */ /** @see [Music.UID.fromString] */
@TypeConverter fun toMusicUid(string: String?) = string?.let(UID::fromString) @TypeConverter fun toMusicUid(string: String?) = string?.let(Companion::fromString)
} }
companion object { companion object {

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr package org.oxycblt.musikr
import dagger.Binds import dagger.Binds
import dagger.Module import dagger.Module

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.cover package org.oxycblt.musikr.cover
import android.content.Context import android.content.Context
import androidx.room.Room import androidx.room.Room

View file

@ -16,10 +16,10 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.cover package org.oxycblt.musikr.cover
import org.oxycblt.auxio.list.sort.Sort import org.oxycblt.auxio.list.sort.Sort
import org.oxycblt.auxio.music.Song import org.oxycblt.musikr.Song
sealed interface Cover { sealed interface Cover {
val key: String val key: String

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.cover package org.oxycblt.musikr.cover
import java.io.InputStream import java.io.InputStream
import javax.inject.Inject import javax.inject.Inject
@ -44,7 +44,8 @@ constructor(
val id = coverIdentifier.identify(data) val id = coverIdentifier.identify(data)
coverFiles.write(id, data) coverFiles.write(id, data)
storedCoversDao.setStoredCover( storedCoversDao.setStoredCover(
StoredCover(uid = cover.uid, lastModified = cover.lastModified, coverId = id)) StoredCover(uid = cover.uid, lastModified = cover.lastModified, coverId = id)
)
return coverFiles.read(id) return coverFiles.read(id)
} }
} }

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.cover package org.oxycblt.musikr.cover
import android.content.Context import android.content.Context
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.cover package org.oxycblt.musikr.cover
import android.graphics.Bitmap import android.graphics.Bitmap
import android.graphics.BitmapFactory import android.graphics.BitmapFactory

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.cover package org.oxycblt.musikr.cover
import java.security.MessageDigest import java.security.MessageDigest
import javax.inject.Inject import javax.inject.Inject

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.cover package org.oxycblt.musikr.cover
import androidx.room.Dao import androidx.room.Dao
import androidx.room.Database import androidx.room.Database
@ -27,7 +27,7 @@ import androidx.room.PrimaryKey
import androidx.room.Query import androidx.room.Query
import androidx.room.RoomDatabase import androidx.room.RoomDatabase
import androidx.room.TypeConverters import androidx.room.TypeConverters
import org.oxycblt.auxio.music.Music import org.oxycblt.musikr.Music
@Database(entities = [StoredCover::class], version = 50, exportSchema = false) @Database(entities = [StoredCover::class], version = 50, exportSchema = false)
abstract class StoredCoversDatabase : RoomDatabase() { abstract class StoredCoversDatabase : RoomDatabase() {

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.fs package org.oxycblt.musikr.fs
import android.content.ContentResolver import android.content.ContentResolver
import android.content.Context import android.content.Context
@ -31,7 +31,7 @@ import kotlinx.coroutines.flow.emitAll
import kotlinx.coroutines.flow.flatMapMerge import kotlinx.coroutines.flow.flatMapMerge
import kotlinx.coroutines.flow.flattenMerge import kotlinx.coroutines.flow.flattenMerge
import kotlinx.coroutines.flow.flow import kotlinx.coroutines.flow.flow
import org.oxycblt.auxio.musikr.fs.path.DocumentPathFactory import org.oxycblt.musikr.fs.path.DocumentPathFactory
import timber.log.Timber import timber.log.Timber
interface DeviceFiles { interface DeviceFiles {
@ -73,7 +73,8 @@ constructor(
): Flow<DeviceFile> = flow { ): Flow<DeviceFile> = flow {
contentResolver.useQuery( contentResolver.useQuery(
DocumentsContract.buildChildDocumentsUriUsingTree(rootUri, treeDocumentId), DocumentsContract.buildChildDocumentsUriUsingTree(rootUri, treeDocumentId),
PROJECTION) { cursor -> PROJECTION
) { cursor ->
val childUriIndex = val childUriIndex =
cursor.getColumnIndexOrThrow(DocumentsContract.Document.COLUMN_DOCUMENT_ID) cursor.getColumnIndexOrThrow(DocumentsContract.Document.COLUMN_DOCUMENT_ID)
val displayNameIndex = val displayNameIndex =
@ -105,7 +106,8 @@ constructor(
mimeType, mimeType,
newPath, newPath,
size, size,
lastModified)) lastModified)
)
} }
} }
emitAll(recursive.asFlow().flattenMerge()) emitAll(recursive.asFlow().flattenMerge())

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.fs package org.oxycblt.musikr.fs
import android.content.Context import android.content.Context
import android.media.MediaFormat import android.media.MediaFormat

View file

@ -16,7 +16,7 @@
* along with this program. If not, see <https://www.gnu.org/licenses/>. * along with this program. If not, see <https://www.gnu.org/licenses/>.
*/ */
package org.oxycblt.auxio.musikr.fs package org.oxycblt.musikr.fs
import android.content.ContentResolver import android.content.ContentResolver
import android.content.Context import android.content.Context
@ -27,9 +27,9 @@ import dagger.Provides
import dagger.hilt.InstallIn import dagger.hilt.InstallIn
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import dagger.hilt.components.SingletonComponent import dagger.hilt.components.SingletonComponent
import org.oxycblt.auxio.musikr.fs.path.DocumentPathFactory import org.oxycblt.musikr.fs.path.DocumentPathFactory
import org.oxycblt.auxio.musikr.fs.path.DocumentPathFactoryImpl import org.oxycblt.musikr.fs.path.DocumentPathFactoryImpl
import org.oxycblt.auxio.musikr.fs.path.MediaStorePathInterpreter import org.oxycblt.musikr.fs.path.MediaStorePathInterpreter
import org.oxycblt.auxio.util.getSystemServiceCompat import org.oxycblt.auxio.util.getSystemServiceCompat
@Module @Module

Some files were not shown because too many files have changed in this diff Show more