Commit graph

93 commits

Author SHA1 Message Date
OxygenCobalt
6d809f4303 Implement persistence
Implement the ability for [most of] the playback state to persist even after the app's process has been killed.
2020-11-14 16:53:35 -07:00
OxygenCobalt
2ebee41ed0 Make QueueAdapter Adapter instead of ListAdapter
Fix a stupid amount of bugs by changing QueueAdapter to a normal adapter with a differ and addition/movement functions instead of a ListAdapter.
2020-11-13 14:56:06 -07:00
OxygenCobalt
2aa630948b Prevent the addition of duplicate queue items
Band-aid over a bug with DiffCallback that causes weird behavior with duplicate queue items by disallowing the addition of queue items if theyre already allowed.
2020-11-12 19:25:43 -07:00
OxygenCobalt
604145fb69 Improve code slightly
Add some documentation and remove useless code/bugs.
2020-11-11 19:27:38 -07:00
OxygenCobalt
67d10009d4 Unify Queue
Make QueueFragment contain both the user queue and the next queue, instead of having viewpager between the two.
2020-11-09 15:39:13 -07:00
OxygenCobalt
5da3fa866b Refactor notification management
Remove PlaybackNotificationHolder and replace it with a util file that is easier to work with.
2020-11-01 13:58:47 -07:00
OxygenCobalt
08bd0ece3a Add media controls to notification
Add media controls to the Playback Notification [Loop, Last, Play/Pause, Next, Shuffle]
2020-11-01 11:06:26 -07:00
OxygenCobalt
e00930cc5f Add Playback Notification
Add a MediaStyle Notification for music playback.
2020-10-31 11:50:42 -06:00
OxygenCobalt
ce96dd6e94 Extend Headset Functionality
Add callbacks for when rewind/close buttons are pressed on a headset, and when headsets are connected/disconnected.
2020-10-30 12:24:27 -06:00
OxygenCobalt
219d1c2c24 Add queue display
Add a fragment for displaying the current queue.
2020-10-20 15:16:28 -06:00
OxygenCobalt
3337747cb7 Fix empty genre bug
Bandaid MusicSorter to remove any genres that dont have anything in them, because that happens now. Also prevent a crash just in case an empty music model does get played.
2020-10-18 15:38:59 -06:00
OxygenCobalt
d01aa3ea4a Prevent animated icons from animation on startup
Make ImageButtons that use animated icons not animate when the fragment is initially created.
2020-10-18 13:45:13 -06:00
OxygenCobalt
2811c83543 Improve semantics
Remove some useless TODOs, update naming in places.
2020-10-18 09:06:16 -06:00
OxygenCobalt
c422071e93 Add shuffling
Add basic shuffling to PlaybackFragment.
2020-10-15 11:32:01 -06:00
OxygenCobalt
339100e436 Improve genre loading
Temporarily remove the ability to play from a genre, update MusicLoader to not load genres/artists simultaniously so that Artist ID's arent completely garbled. Improve PlaybackFragment slightly.
2020-10-15 08:49:32 -06:00
OxygenCobalt
96c30b3f93 Change music storage to shared object
Change MusicViewModel from a ViewModel to a shared object, so that it can be used everywhere in the app instead of just in fragments.
2020-10-13 16:44:14 -06:00
OxygenCobalt
3376b57f8e Add skipping
Add the ability to skip fowards/backwards.
2020-10-13 12:40:16 -06:00
OxygenCobalt
d8f40bfd27 Replace ClickListener with lambdas
Replace ClickListener with direct lambdas, so that adapters with multiple datatypes dont have to duplicate ClickListener for each type.
2020-10-13 11:09:48 -06:00
OxygenCobalt
a72ab10007 Improve Progress Bars on Playback Fragments
Change the Progress Bars on PlaybackFragment/CompactFragment to reflect the total seconds in a song, instead of the percentage of completion.
2020-10-12 19:36:32 -06:00
OxygenCobalt
3bafc17d0c Add durations to PlaybackFragment
Add the song duration & the current duration to PlaybackFragment, update the SeekBar in PlaybackFragment to reflect those durations.
2020-10-12 16:13:15 -06:00
OxygenCobalt
eb6839b10c Add play/pause controls
Add play/pause controls to the playback fragments.
2020-10-11 11:03:06 -06:00
OxygenCobalt
59c087d653 Update semantics slightly
Change some naming/structure somewhat, and move all TODOs from AuxioTODO to the project itself.
2020-10-09 13:57:36 -06:00
OxygenCobalt
a72cb48c71 Add playback fragment
Add a fragment to show songs that are currently being played.
2020-10-05 15:54:53 -06:00
OxygenCobalt
711d9a0b00 Add genre support to search
Add the ability for genres to show up in search, as long as the library is currently displaying them.
2020-10-04 10:22:52 -06:00
OxygenCobalt
127f700700 Change show constants to dedicated enum
Move the ShowMode constants to a dedicated ShowMode enum in /recycler/.
2020-10-04 08:36:21 -06:00
OxygenCobalt
2126b4f78f Update ViewHolder structure
Move all shared viewholders to /recycler/, and change structure of shared viewholders to prohibit direct instantiation.
2020-10-03 19:29:03 -06:00
OxygenCobalt
45f411fdd7 Change search to show all music items
Change the library search to show artists, albums, and songs.
2020-10-03 18:20:37 -06:00
OxygenCobalt
37c52d9e5c Add sorting to LibraryFragment
Add basic sorting to LibraryFragment.
2020-09-28 15:37:41 -06:00
OxygenCobalt
aad42b5201 Fix album bugs
Fix bugs with the album items & detail fragments.
2020-09-27 17:03:35 -06:00
OxygenCobalt
af4c32eb5b Update stored DetailViewModel items
Change the stored items in DetailViewModel to LiveData. Remove the need to reset the stored items when a fragment is destroyed.
2020-09-27 16:16:32 -06:00
OxygenCobalt
d9cf3772e6 Update naming
Update naming on layout files & other code.
2020-09-27 15:26:15 -06:00
OxygenCobalt
f866e77ee4 Add parent ViewHolder
Add an base ViewHolder class so that there isnt as much repeated code.
2020-09-27 11:13:24 -06:00
OxygenCobalt
d99347722e Make music models inherit base class
Make the music models inherit a base data class that contains the ID & name to reduce redundant code.
2020-09-27 10:26:14 -06:00
OxygenCobalt
9ffc194c4d Add DetailFragment for genres
Add a DetailFragment for genres.
2020-09-27 09:47:53 -06:00
OxygenCobalt
21626d8d74 Add genres to LibraryFragment
Add a genre mode to LibraryFragment.
2020-09-27 08:24:11 -06:00
OxygenCobalt
5191220bc0 Update album items/details
Update the ArtistDetailFragment album item to show the year instead of song count. Update AlbumDetailFragment to show year, song count, and total duration.
2020-09-26 13:57:15 -06:00
OxygenCobalt
fddf5e4472 Remove excess zeroes from durations
Remove excess zeroes from the formatted durations.
2020-09-26 10:58:30 -06:00
OxygenCobalt
531825465f Add back navigation to detail fragments
Add backwards navigation to the DetailFragment toolbars.
2020-09-26 09:59:18 -06:00
OxygenCobalt
35814c5b40 Add sorting to AlbumDetailFragment
Add sorting to AlbumDetailFragment. Ignore the other commit.
2020-09-24 16:31:07 -06:00
OxygenCobalt
35e186d8a9 Remove sorting modes
Remove the sorting modes from the detail fragments. They are somewhat useless there and would be better suited for LibraryFragment.
2020-09-24 16:00:47 -06:00
OxygenCobalt
ac3b3e7903 Fix sorting modes
Change the NUMERIC_DOWN sorting mode to actually sort by decending order, not ascending order.
2020-09-24 07:00:46 -06:00
OxygenCobalt
414e85153f Add sorting
Add Alphabetical/Numeric sorting to ArtistDetailFragment.
2020-09-23 20:32:42 -06:00
OxygenCobalt
b80a3596b8 Store references to items in DetailViewModel
Store references to the artist & album inside DetailViewModel to prevent an artist/album search on every re-creation.
2020-09-23 15:42:06 -06:00
OxygenCobalt
f5d007267d Remove sub-item sorting
Remove the sorting of the music models child items, its mostly redundant for now.
2020-09-22 20:18:18 -06:00
OxygenCobalt
19a9ab4098 Add backwards navigation from album to artist
Add a way for AlbumDetailFragment to return to ArtistDetailFragment.
2020-09-20 09:51:12 -06:00
OxygenCobalt
a81860bed2 Fix bug w/Artist Images
Fix a bug where the app will crash if it attempts to load the artist image for an artist that has no albums.
2020-09-19 18:02:11 -06:00
OxygenCobalt
309ed2dcff Update track number sizing
Use AppCompatTextView on the track number so that track numbers over 100 are not cut off. Sort of, track numbers over 100000 will be cut off, but I bet that will be rare in normal use.
2020-09-19 16:44:00 -06:00
OxygenCobalt
4d47dcd464 Update Accessibility
Update the content descriptions on the ImageViews.
2020-09-18 16:30:04 -06:00
OxygenCobalt
602cc2153f Fix bugs w/music loading
Fix bugs with how genres/album names are displayed.
2020-09-17 19:55:55 -06:00
OxygenCobalt
ec45a020a5 Add song list to AlbumDetailFragment
Add a list of the albums songs to AlbumDetailFragment.
2020-09-17 15:20:41 -06:00