OxygenCobalt
887868ff9c
Remove custom title UIs from dialogs
...
Replace the custom title TextViews in AccentDialog/BlacklistDialog with the built-in title text.
2021-04-04 09:46:58 -06:00
OxygenCobalt
03aa2d4579
Migrate to material theming
...
Finally move the app from AppCompat the Material Bridge theme. This does a couple things:
- Removes need for runtime styling of material widgets used before
- Allows for a better dialog style [But only after a ton of tinkering and weird hacks]
- Makes theming slightly easier [After all the dumb migration bugs and technicalities are fixed]
I never want to do something like this again. UI styling on android is a nightmare.
2021-04-04 09:20:56 -06:00
OxygenCobalt
f2445e56f2
Update loop behavior [ Resolves #13 ]
...
Change the loop behavior to something that is actually sensible,
with [ ] looping the whole playlist and [ 1 ] looping the song.
This also removes the "Do on end" setting. A new stop option may
be reintroduced, however.
This resolves issue #13 .
2021-04-03 14:56:50 -06:00
OxygenCobalt
2b047f0d2c
Cleanup settings code
...
Do some post-setting refactor cleanup:
- Make some extension functions for SettingsManager for convienence
- Remove dead code from before the int migration
- Update semantics here and there
2021-04-03 11:43:23 -06:00
OxygenCobalt
eb56068f80
Fix database issues
...
Fix some problems where PlaybackStateDatabase wouldn't downgrade [Problem when hopping between dev builds with db changes] and with assertBackgroundThread being public.
2021-04-03 11:08:27 -06:00
OxygenCobalt
0305eb0beb
Standardize settings entirely
...
Update the structure of the settings system to do several things:
- Finally use int preferences everywhere instead of the mix of strings & ints from before
- Create a new preference named `IntListPreference` that enables the use of integers in list preferences
- Actually centralize array values and default values into a single integers xml
- Isolate all the new migration code into a single file
- Refreshed the int tables used by data objects [DB version has been updated, will not update when other changes]
The only preference not migrated is doAtEnd since that is being planned to be retired in a future LoopMode update.
2021-04-03 10:53:16 -06:00
OxygenCobalt
355b3885e3
Use androidx transaction in databases
...
Replace the redundant SQLiteDatabase.execute() extension with the AndroidX SQLiteDatabase.transaction() extension, which does the same thing.
2021-03-29 06:41:36 -06:00
OxygenCobalt
4d92df7896
Heavily improve dialogs
...
Both improve and use dialogs
- The AlertDialog style now properly colors dialogs with the primary coler
- The accent & blacklist dialogs are now based on AlertDialog for their buttons, reducing layout complexity
2021-03-28 18:47:53 -06:00
OxygenCobalt
53ec1aa8a5
Improve dialog layouts
...
Improve the dialog layouts so that only the recyclerview scrolls when it cannot fit instead of the entire layout being forced to scroll.
2021-03-26 15:24:04 -06:00
OxygenCobalt
076d2b3d7e
Update build configuration
...
Update the build config to further optimize the app
- Removed the browser dependency [-10k]
- Enabled resource minification [-100k]
2021-03-26 10:54:21 -06:00
OxygenCobalt
b65814fdbd
Redo blacklist dialog
...
Completely refactor the blacklist dialog to not only use the Storage Access Framework, but also to completely eliminate the material dialogs dependency.
2021-03-26 09:54:48 -06:00
OxygenCobalt
ac1e686704
Update accent dialog
...
Completely redo the accent dialog to remove its dependence on MaterialDialogs and also to make it more ergonomic.
2021-03-25 19:21:05 -06:00
OxygenCobalt
194bcfcd05
Fix more fast-scroll issues
...
Fix two more fast scrolling issues:
- Fixed size of the view would cut off larger fonts
- Thumb would briefly show when the view would initially start
This custom view was a mistake, but anything for less kbs.
2021-03-25 09:24:40 -06:00
OxygenCobalt
6d5ed6dd7b
Update fast scroll behavior
...
Update the behavior of the fast scroller so that the scroll only begins when the pointer is in the indicator box itself, instead of the general view.
2021-03-24 08:47:14 -06:00
OxygenCobalt
54efad3fdf
Fix crash with fast scroller
...
Fix an issue where the app would crash if the fast scroller is scrolled above the indicators. This change will be backported to 1.3.3.
2021-03-23 20:20:22 -06:00
OxygenCobalt
d0280fffb2
Fix crash on PlaybackService destruction
...
Fix a destructive crash when PlaybackService attempted to release a wakelock that wasn't being held.
2021-03-23 19:21:44 -06:00
OxygenCobalt
688f9d3a52
Fix fast-scroll bugs
...
Fix some behavior issues with the new fast scroll view.
2021-03-23 17:06:06 -06:00
OxygenCobalt
0a18108419
Unify fast-scroller
...
Completely unify the fast scroll indicators and the fast scroll thumb into a single view.
2021-03-23 14:35:32 -06:00
OxygenCobalt
cc3d4fb9c6
Explitly declare dependencies
...
Explicitly declare some dependencies that were originally implicit, resolving some future build issues.
2021-03-23 10:12:24 -06:00
OxygenCobalt
ffd3275ca5
Resolve fast-scroll resource issues
...
Accidentally forgot to move the resources from the fast scroll library, so here it is.
2021-03-22 16:17:16 -06:00
OxygenCobalt
02fed16c31
Roll custom fast scroller
...
Drop the old IndicatorFastScroll library from Auxio and replace it with a hyper-specialized variant designed specifically for Auxio.
This not only eliminates a source of hacks/problems/bloat, it also removes a dependency on jcenter (Which is shutting down soon)
2021-03-22 16:00:12 -06:00
OxygenCobalt
3484b8a0bf
Update markdown
...
Update markdown in preperation for 1.3.2
2021-03-22 09:41:09 -06:00
OxygenCobalt
f1c40d2539
Add wakelock
...
Actually add a wakelock to the music load process to prevent it from stopping the CPU mid-load.
2021-03-21 11:12:48 -06:00
OxygenCobalt
ba79ac0001
Cleanup code
...
Do some code cleanup.
2021-03-21 09:56:20 -06:00
OxygenCobalt
824ac56bfa
Update libraries
...
Update libs to new versions, including the nav framework from 1.0.0 -> 2.3.4.
2021-03-20 19:54:41 -06:00
OxygenCobalt
66685350cb
Update blacklist strings
...
Update the strings related to the blacklist functionality, also adding german translations.
2021-03-20 17:22:36 -06:00
OxygenCobalt
72a7aa6744
Fix song restore issue
...
Fix an issue where the playback restore process would only search the list of songs for the currently playing song, running the risk of picking the wrong song with the same name.
2021-03-20 16:14:36 -06:00
OxygenCobalt
a55b42a3da
Fix blacklist dialog bug
...
Fix a problem where the blacklist dialog wouldn't properly detect when there were no changes made to the list of paths.
2021-03-20 16:12:06 -06:00
OxygenCobalt
68887ffb64
Add blacklist restart functionality
...
When the user selects the "Save" button in the blacklist dialog, the app will now restart to reload the music library with the new directories.
2021-03-15 15:55:52 -06:00
OxygenCobalt
787212ee59
Minor improvements
...
Fix some more blacklist UI issues alongside some problems with formatting/audio focus.
2021-03-14 09:33:15 -06:00
OxygenCobalt
632e39f2e2
Update blacklist UI
...
Update new functionality/streamline the blacklist UI.
2021-03-13 19:47:36 -07:00
OxygenCobalt
aa0c978a65
Add blacklist UI
...
Add a UI for the blacklist functionality.
2021-03-13 17:07:42 -07:00
OxygenCobalt
9d83619811
Unify system service calls
...
Unify the calls to getSystemService to a custom function that uses the ContextCompat getSystemService instead of the clunky vanilla getSystemService code.
2021-03-13 10:50:39 -07:00
OxygenCobalt
2f5a6984d9
Possibly fix AudioFocus bug
...
(Maybe) fix an issue where AudioFocus might cause the playback to start again after being paused by the user, possibly caused by a audiofocus loss being labeled transient even if it wasnt.
2021-03-13 10:32:47 -07:00
OxygenCobalt
9a02eadc95
Refactor database code
...
Simplify and refactor alot of the database code, along with extracting some pieces of code into actual utilities.
2021-03-09 10:14:47 -07:00
OxygenCobalt
72877f77ee
Fix parent restore bug
...
Fix a bug where PlaybackStateManager would try to restore the parent from a full list of items, which raises the possibility for the incorrect parent to be chosen.
2021-03-09 09:04:48 -07:00
OxygenCobalt
5d72bfa09b
Move accent dialog to object
...
Move the dialog created in showAccentDialog to a dedicated object.
2021-03-09 08:01:49 -07:00
OxygenCobalt
f5f67a0b76
Add blacklist functionality
...
Add the ability to block directories from indexing. Will add a UI interface for this later.
2021-03-07 11:56:20 -07:00
OxygenCobalt
8de09cd880
Update PlaybackStateDatabase
...
Update PlaybackStateDatabase to use a new filename and the TEXT type whenever storing strings.
2021-03-07 11:18:36 -07:00
OxygenCobalt
a750100aff
Fix queue edge-to-edge issue
...
Fix a problem where the last queue item would display behind the navigation bar when edge to edge is on.
2021-03-07 08:26:15 -07:00
OxygenCobalt
391ca70822
Update playback system
...
Tweak some things in PlaybackService and PlaybackStateManager to make them more elegant.
2021-03-05 14:58:30 -07:00
OxygenCobalt
466629e43d
Update music loading init process
...
Change the loading process so that LoadingViewModel no longer requires an application instance to start. Also move the main music loading code to an internal function.
2021-03-05 13:45:43 -07:00
OxygenCobalt
2c93e3f362
Update code style
...
Heavily tweak the code style across the app, doing things such as fixing returns and giving names to lambda values.
2021-03-05 12:56:04 -07:00
OxygenCobalt
fab377eba4
Improve genre compatibility
...
Add a new range of Winamp 5.6+ genres to further improve compatibility with old genres.
2021-03-05 11:20:22 -07:00
OxygenCobalt
58ec1ce293
Improve mosaic quality
...
Change the mosaic bitmap config to ARGB_8888, which greatly improves quality.
2021-03-05 10:11:53 -07:00
OxygenCobalt
a4dc35c50d
Update music loading system
...
Do some simplification and optimizations to the music loading system in preperation for the blacklisting system.
2021-03-03 19:46:34 -07:00
OxygenCobalt
c9f86436c8
Fix scroll thumb visibility issue
...
Fix a problem where the scroll thumb would briefly show up when SongsFragment is first shown.
2021-03-03 16:02:45 -07:00
OxygenCobalt
fefe2d244d
Add tooltips to accent picker
...
Add tooltips to the accent picker that align with the content description.
2021-03-01 19:24:37 -07:00
OxygenCobalt
3f0331f1c9
Redo accents
...
Collapse amber and yellow into a single accent [Yellow], remove the neutral accent due to UI isuses, and darken light-mode accents across the board to be more visible.
2021-02-28 16:07:46 -07:00
OxygenCobalt
abd5b3ca8d
Remove NoLeakThumbView
...
Remove the old NoLeakThumbView class, apparently I didnt remove it before?
2021-02-28 15:01:38 -07:00
OxygenCobalt
917540e626
Refactor fast scroll
...
Completely write my own fast scroller thumb and also redo how the fast scroller is configured in SongsFragment.
2021-02-27 13:00:46 -07:00
OxygenCobalt
a9765d2ad6
Remove debug statement
...
Remove a frustrated logD call I made sometime last night. Why do I keep doing this.
2021-02-26 07:42:51 -07:00
OxygenCobalt
891d64b459
Fix service startup bug
...
Fix a problem where if playback was started by a file intent the ExoPlayer instance wouldn't actually begin playing.
2021-02-25 19:08:45 -07:00
OxygenCobalt
af9fac7de2
Fix play/pause bug
...
Possibly fix a bug where the play/pause button would get stuck in the play position when playing from a file intent.
2021-02-25 17:55:20 -07:00
OxygenCobalt
e9abee9f64
Update documentation
...
Completely update the documentation throughout the app.
2021-02-25 11:36:47 -07:00
OxygenCobalt
b9720286c3
Move play/pause animation code
...
Move the code responsible for the play/pause animation to the onCreateView function instead of onResume.
2021-02-23 15:16:15 -07:00
OxygenCobalt
7f0042fd2f
Refactor file intent system
...
Finally find a way to handle file intents without having to coordinate it across three different fragments in onResume.
2021-02-23 14:04:45 -07:00
OxygenCobalt
f04ffdb59b
Update codebase
...
Do a variety of small things across the codebase.
2021-02-23 13:22:09 -07:00
OxygenCobalt
8c107d66a0
Stop RecyclerView momentum on fast scroll
...
Prevent any unnessecary scrolling when using the fast scroll bar in SongsFragment.
2021-02-21 15:14:55 -07:00
OxygenCobalt
299c47e9c3
Scroll QueueFragment on shuffle toggle
...
Scroll QueueFragment to the top when shuffle is toggled so that it does not flip out as much as it would otherwise.
2021-02-21 15:03:17 -07:00
OxygenCobalt
5de45eea0e
Version 1.3.1
...
Ready for version 1.3.1 of Auxio.
2021-02-21 08:19:05 -07:00
OxygenCobalt
044f74b45b
Fix file intent crash
...
Keep tweaking this buggy system to fix another bug I caused where the app would crash if selecting a song while the app was inactive.
2021-02-20 21:29:20 -07:00
OxygenCobalt
89174b8011
Clean code
...
Do some codebase cleaning.
2021-02-20 16:35:36 -07:00
OxygenCobalt
4efbab8b05
Change file intent navigation structure
...
When a file intent is given, navigate to PlaybackFragment directly.
2021-02-20 13:47:06 -07:00
OxygenCobalt
cca80c65eb
Improve music loading system
...
Heavily improve the music loading system, hopefully fixing some edge-cases that people have been reporting.
2021-02-20 11:56:31 -07:00
OxygenCobalt
00e7af8f3d
Fix another file intent bug
...
Fix another bug where PlaybackService wouldn't show its notification/go into foreground if a song was played by a file intent.
2021-02-20 10:05:20 -07:00
OxygenCobalt
cc14648099
Fix file intent issue
...
Fix a problem where the file intent wouldnt work on any fragment that wasnt MainFragment.
2021-02-20 09:46:29 -07:00
OxygenCobalt
7a4b654222
Clean up PlaybackService
...
Clean up the code in PlaybackService.
2021-02-19 19:25:03 -07:00
OxygenCobalt
7524589969
Unify notification
...
Unify the notification extensions into a single PlaybackNotification object that does not rely on PlaybackStateManager and SettingsManager.
2021-02-19 15:54:58 -07:00
OxygenCobalt
ca4cabedbc
Change file intent to play
...
Change the file intent to play instead of view. I may add the view option back in at some point however if the play functionality angers me enough.
2021-02-19 14:47:00 -07:00
OxygenCobalt
2dfd916736
Add file intent
...
Add the ability to view a music file in auxio when selecting the file from another app. The ability to play it will be added later.
2021-02-19 14:22:58 -07:00
OxygenCobalt
e631ddd730
Make save playback state setting public
...
Make the ability to force-save the playback state public in the settings menu instead of in the debug menu.
2021-02-19 11:19:45 -07:00
OxygenCobalt
0a7fbeca6d
Fix music load failure [ Resolves #4 ]
...
Remove the `check` statements from `applyAlbum` and `applyGenre` that could cause the music loading to fail on some devices. Now only the first album/genre applied will stick. This resolves issue #4 .
2021-02-19 10:12:58 -07:00
OxygenCobalt
e3e0015237
Rewrite loading UI
...
Completely rewrite the loading UI to be far more understandable.
2021-02-19 09:33:49 -07:00
OxygenCobalt
2f8916117e
Update compact controls animation
...
Make the slide animation on the compact controls look better.
2021-02-18 19:08:49 -07:00
OxygenCobalt
1d1da1fac2
Update exoplayer
...
Bump exoplayer to 2.12.3
2021-02-17 10:39:15 -07:00
OxygenCobalt
cccf6ba9f8
Fix memory leak with PlayPauseButton
...
Fix a memory leak in PlayPauseButton that occured from not clearing an animation listener when done with it.
2021-02-16 20:41:55 -07:00
OxygenCobalt
2203018947
Fix issue where seams should show up on play icon
...
Fix a bug where a seam would display on the play icon on certain displays.
2021-02-16 20:31:37 -07:00
OxygenCobalt
1d8aeb16c2
Further streamline coil usage
...
Simplify how coil is used even further.
2021-02-16 09:27:41 -07:00
OxygenCobalt
6fa698d7eb
Prevent search box from scrolling the toolbar
...
Prevent the search TextView from being able to scroll the toolbar when there are no results.
2021-02-15 15:07:39 -07:00
OxygenCobalt
118172b7c8
Fix song selection bug
...
Fix a bug where if a song is selected while shuffling it would not move that song to the beginning of the queue.
2021-02-15 14:27:03 -07:00
OxygenCobalt
b6ac897314
Add ko [Korean] translations
...
Add partial translations for korean.
2021-02-14 10:35:22 -07:00
OxygenCobalt
62572e7e52
Add po [Polish] translations
...
Add partial translations for Polish
2021-02-13 16:41:03 -07:00
OxygenCobalt
a4801bdf2f
Redo controls view
...
Redo the controls view to support a slide enter/exit animation, along with fixes to elevation problems on certain devices.
2021-02-13 14:49:57 -07:00
OxygenCobalt
f1245d7d40
Improve layout responsiveness
...
Make layouts better on all screen sizes.
2021-02-13 10:20:48 -07:00
OxygenCobalt
e0485ebad9
Refactor coil
...
Completely refactor coil and how its used so that it centers around data objects instead of a hodgepodge of URIs and Song data.
2021-02-12 22:28:41 -07:00
OxygenCobalt
ed10bd1898
Rewrite ARCHITECTURE.md
...
Redo the structure of ARCHITECTURE.md to make more sense with its intended purpose.
2021-02-07 19:57:52 -07:00
OxygenCobalt
26dd1036ec
Add actionmenu extension function
...
Simplify menu creation by using a Fragment extension to create a new ActionMenu.
2021-02-07 18:54:04 -07:00
OxygenCobalt
eb5292d083
Add architecture document
...
Add a document describing the high-level auxio architecture.
2021-02-07 16:07:16 -07:00
OxygenCobalt
cef4cb68da
Update BaseViewHolder
...
Change the name of BaseViewHolder to BaseHolder and make the click listener arguments optional.
2021-02-07 14:00:48 -07:00
OxygenCobalt
a34850b9cb
Update codebase
...
Do a bunch of minor codebase changes that have accumulated.
2021-02-04 16:10:12 -07:00
OxygenCobalt
7fc0bcc56d
Update tablet detail layouts
...
Update the tablet detail layouts to look better.
2021-01-30 13:26:49 -07:00
OxygenCobalt
67c177ccf3
Create parent abstraction
...
Create a BaseModel variant for albums, artists, and genres to simplify on alot of code that should only run on those.
2021-01-30 11:18:29 -07:00
OxygenCobalt
ec310a5b93
Fix playing album display bug
...
Fix an issue where an album will not immediately show up as playing if you play it from the artist UI.
2021-01-30 10:29:46 -07:00
OxygenCobalt
15dbe59db5
Minor fixes
...
Fix some ordering & display issues. Also slightly increased the play/pause icons size on PlaybackFragment.
2021-01-29 21:21:57 -07:00
OxygenCobalt
d98d41102d
Add ru [Russian] translations
...
Add partial translations for Russian, along with some new translations for other languages.
2021-01-27 18:58:35 -07:00
OxygenCobalt
c9d7193bd7
Use integer format strings
...
Use %d in certain format strings instead of %s
2021-01-25 19:11:04 -07:00
OxygenCobalt
35551e3dba
Improve german translations
...
Fix alot of problems with the german translations
2021-01-25 14:45:21 -07:00
OxygenCobalt
3ab5671319
Add de [German] translations
...
Add some [Likely broken] german translations using a mix of other sources, my own knowledge, and a english-deutsch dictionary. Ill try to improve these as I go along as theyre the only ones that I'm really able to translate.
2021-01-24 19:13:27 -07:00
OxygenCobalt
27d39a1364
Spin off audio focus into seperate object
...
Move the code responsible for audio focus into a seperate object to reduce the amount of code in PlaybackService.
2021-01-24 14:35:38 -07:00