Commit graph

345 commits

Author SHA1 Message Date
OxygenCobalt
7a2c779fe2 Add Artist item
Add the Artist item and switch LibraryFragment over to it.
2020-09-04 17:13:02 -06:00
OxygenCobalt
139cf3c089 Add basic transitions/animations
Add animations to all LoadingFragment & a transition from LoadingFragment to MainFragment.
2020-09-04 14:39:51 -06:00
OxygenCobalt
e59009a0fa Update gradle build settings
Update build settings to remove useless libraries [AppCompat], add useful libraries [LeakCanary], and also enable minifying on the release build [Which hadnt been enabled before somehow].
2020-09-04 12:19:36 -06:00
OxygenCobalt
4b3285cef0 Change RecyclerView divider color
Change the RecyclerView divider color to not require any transparency changes through ThemeUtils.
2020-09-03 19:25:11 -06:00
OxygenCobalt
d017774cef Fix bug with permission checking
Fix a bug with the permission checking where the MusicRepository would return NO_PERMS to the LoadingFragment faster than the creation of the view, causing the error message to never display. Permission checks are now handled by LoadingFragment instead.
2020-09-03 18:15:44 -06:00
OxygenCobalt
ce687cd515 Change selection ripple to accent color
Change the selection ripple so that it matches the chosen accent color.
2020-09-03 07:50:17 -06:00
OxygenCobalt
5827ca492c Add click listeners to Song/Album items
Add the ripple selection effect & the click listener to the song and album items.
2020-09-02 19:50:47 -06:00
OxygenCobalt
af26aed735 Add permission dialog for file reading
Add a permission dialog for the apps READ_EXTERNAL_STORAGE permission.
2020-09-02 18:00:52 -06:00
OxygenCobalt
5e6917f11c Update LoadingFragment layout
Update the layout of LoadingFragment with a new error icon/text style.
2020-09-02 16:50:33 -06:00
OxygenCobalt
8f850f2288 Add theming system
Standardize theming across the app into ThemeUtils.
2020-09-01 07:37:49 -06:00
OxygenCobalt
d5e6b813a9 Add bottom menu
Add a tab menu on the bottom of the screen that can switch between all fragments on the ViewPager.
2020-08-31 18:55:25 -06:00
OxygenCobalt
736e335ccf Add Genre sorting & better placeholders
* Add Genre sorting to MusicSorter.

* Revamp placeholders so that theyre assigned when loading instead of using a BindingAdapter.
2020-08-31 16:13:30 -06:00
OxygenCobalt
d158fc5786 Add proper placeholders
Add placeholders for album art, artist name, and album name if there arent any from the file itself.
2020-08-31 14:47:06 -06:00
OxygenCobalt
16038567dd Add song durations
Add song durations to the SongItem layout
2020-08-31 13:59:18 -06:00
OxygenCobalt
dc45e2973a Add ellipsizing to song/album items
Add ellipsizing to the song and album items, also modify their inflation so that the items take up the entire screen width.
2020-08-31 07:53:41 -06:00
OxygenCobalt
c8f7419833 Update RecyclerView item layouts
Update the song/album items to have the cover art be loaded by a BindingAdapter, and remove unnecessary chains.
2020-08-29 09:05:00 -06:00
OxygenCobalt
53710ca3f0 Remove useless ListAdapters
Remove unnecessary ListAdapter implementation from AlbumDataAdapter/SongDataAdapter and replace it with a normal adapter.
2020-08-27 17:27:58 -06:00
OxygenCobalt
eafc89a294 Fix RTL constraints for Album/Song items
Fix incorrect constraints when viewing an album or song item in Right-To-Left mode.
2020-08-27 07:49:32 -06:00
OxygenCobalt
c9875a03a9 Add All Songs fragment
Add an All Songs fragment, also modify the ViewPager structure.
2020-08-26 17:55:26 -06:00
OxygenCobalt
c109c3f359 Add ViewPager
Add a ViewPager, currently it has no purpose but it will eventually.
2020-08-26 16:17:04 -06:00
OxygenCobalt
d9dda08731 Move album art loading to Coil
Move the album art loading to Coil to decrease initial loading times.
2020-08-25 18:37:00 -06:00
OxygenCobalt
89398d9f4e Add RecyclerView dividers
Add divider decorations to the RecyclerView
2020-08-25 18:03:58 -06:00
OxygenCobalt
a6e8007972 Update styling/colors
Update the styling and add some colors that will be used as the base theme set in the future.
2020-08-25 17:56:19 -06:00
OxygenCobalt
f511cfd161 Add song count/Styling changes
Add a song count to the album item, along with updating the font once again to differentiate myself from Music Player GO.
2020-08-24 19:01:28 -06:00
OxygenCobalt
1e4f80b779 Change app style
Update the app style by modifying some colors & using Source Code Pro. Yes, this looks like Music Player GO but Ill probably make some more changes in the future.
2020-08-24 17:33:02 -06:00
OxygenCobalt
5662725c72 Add cover art to album list item
Add cover art to the album list item.
2020-08-24 16:46:40 -06:00
OxygenCobalt
acef9550fa Move LiveData away from MusicRepository
Change the LiveData in MusicRepository to just be a plain list, as MusicRepository isnt Lifecycle-Aware.
2020-08-24 15:07:19 -06:00
OxygenCobalt
c04a90c3fa Add RecyclerView to LibraryFragment
Add a basic RecyclerView to LibraryFragment that shows every album.
2020-08-24 14:53:13 -06:00
OxygenCobalt
37b071de0d Add album art loading
Add album art loading by decoding the album art URI into bitmaps for each album. I may use glide in the future if just using a bitmap isnt enough, but currently this works.
2020-08-21 17:47:56 -06:00
OxygenCobalt
f07542fd3a Minor Logging/Structure changes
Switch logging to templates instead of concat, move MusicLoader/MusicSorter to their own package, rename GenreCompat to MusicUtils
2020-08-21 14:53:00 -06:00
OxygenCobalt
ef9d097dc3 Minor nullability/Logging changes
Remove nullables from all the music models, just so that theyre easier to work with, also update Logging at places.
2020-08-21 12:17:15 -06:00
OxygenCobalt
b1be2802cf Rewrite Music Loading a g a i n
Rewrite the music loading for [hopefully] the final time, now with Artists/Albums/Media instead of just AudioColumns, improved genre loading, and easier to implement album-art. Hopefully this system will stick.
2020-08-21 11:51:07 -06:00
OxygenCobalt
160013bbe9 Add [Very hacky] genre support
Add a way to load genres! Except it creates duplicates. And requires creating like 20 music cursors. At least it works?
2020-08-21 09:43:22 -06:00
OxygenCobalt
f8ae5d57a5 Remove cover/genre loading
Remove the cover loading [For now] and permanently remove the genre loading, as both take too long to do in the loading screen. Will re-add album loading once more UI is added.
2020-08-19 16:38:43 -06:00
OxygenCobalt
6508280900 Break up MusicRepository into seperate files
Remove the loading/sorting functions from MusicRepository and place them into their own files.
2020-08-19 11:14:20 -06:00
OxygenCobalt
24452e8fa4 Add Loading fallback states
Add fallback states for when there is no music & if the load fails, along with a retry button if that happens.
2020-08-19 10:10:36 -06:00
OxygenCobalt
1b21552576 Add Loading Screen
Add a basic loading screen that loads the music in the background before starting the app.
2020-08-19 09:28:15 -06:00
OxygenCobalt
3134e313a3 Move MusicRepository initialization to coroutine
Move the init call to MusicRepostiory to a coroutine so that it doesnt stop the UI thread.
2020-08-18 15:33:59 -06:00
OxygenCobalt
21a110edb0 Heavily rewrite/refactor MusicRepository
Rewrite MusicRepository to perform all metadata calculations by themselves, also adding support for Genre loading & Album Art.
2020-08-18 15:22:12 -06:00
OxygenCobalt
a8b368b577 Add music sorting
Change MusicRepository so that all music is sorted into Artist/Album/Song lists.
2020-08-18 10:37:02 -06:00
OxygenCobalt
22e8049d6b Add Music Loading
Add a Music Repository/Loader, along with a boilerplate ViewModel for LibraryFragment.
2020-08-17 15:21:14 -06:00
OxygenCobalt
9961b87f47 Refactor Now Playing into Library
Turns out a dedicated Now Playing screen wont look that good, so refactor that into the Library screen. Also replace the ActionBar with a Toolbar and update the theming a bit.
2020-08-17 11:28:23 -06:00
OxygenCobalt
7c447e0296 Add basic fragment structure
Add the boilerplate fragment code.
2020-08-17 10:32:28 -06:00
OxygenCobalt
675f4af41b Add android boilerplate code
Add the Gradle/Android project structure and the boilerplate code.
2020-08-17 09:52:52 -06:00
OxygenCobalt
14741ef002
Initial commit 2020-08-17 15:35:12 +00:00