Alexander Capehart
de1c091517
musikr: remove trivial auxio dependence
...
There's still some thorny resource use left over, but this is a good
starting point to start breaking off musikr from auxio.
2024-12-13 20:08:58 -07:00
Alexander Capehart
9ab4dc5595
musikr: replace mimetype w/format
...
First property now derived from taglib.
2024-12-13 19:23:42 -07:00
Alexander Capehart
abeabcb8df
musikr: split off from auxio
2024-12-07 09:51:16 -07:00
Alexander Capehart
7582c8c9cf
music: reorganize metadata/tag/model structure
2024-12-02 14:22:38 -07:00
Alexander Capehart
dfff01bd28
music: move other metadata into model
2024-11-30 17:24:17 -07:00
Alexander Capehart
d06dd59386
about: add feedback options
2024-10-31 15:31:23 -06:00
Alexander Capehart
0f4702c4dd
all: fix logging & anim unification
...
Can't bisect this without spending way too much time on it.
2024-10-18 16:10:08 -06:00
Alexander Capehart
7dfaea3a4b
all: cleanup
2024-10-18 15:41:06 -06:00
Alexander Capehart
c1514d6029
log: re-add copyleft notice
2024-10-18 08:43:53 -06:00
Alexander Capehart
6d72240336
all: fully use timber for logging
2024-10-17 20:15:57 -06:00
Alexander Capehart
d540d6f14c
build: initial android 15 upgrade
2024-10-14 14:35:33 -06:00
Alexander Capehart
a2d4b6e50b
all: cleanup
2024-07-20 21:39:32 -06:00
Alexander Capehart
5707aa1d31
Merge branch 'dev' of github.com:OxygenCobalt/Auxio into dev
2024-06-20 22:00:24 -06:00
Alexander Capehart
5a36cfee67
music: disable timeouts
...
This isn't working right now due to how LONG it takes to actually load
images.
2024-06-12 19:12:20 -06:00
Martin K
5767094519
ui: disable swiping on overridden overflow menus
2024-06-05 21:54:52 +03:00
Alexander Capehart
6730766504
music: increase music load timeout
...
TagExtractor can take longer than 10 seconds to load, increase it to 60
seconds.
2024-01-28 21:38:45 -07:00
Alexander Capehart
538533bf3f
music: discard songs w/o volumes
2024-01-01 13:38:26 -07:00
Alexander Capehart
77f0bbe614
util: correctly throw channel errors
...
Wasn't being properly handled before, leading to weird behavior.
2024-01-01 12:02:38 -07:00
Alexander Capehart
d3de34ed5e
music: throw on deadlocks
...
Attempt to throw an exception when any part of the loading routine
times out.
2023-12-18 18:36:09 -07:00
Alexander Capehart
d926e19819
all: cleanup
2023-11-11 23:22:46 -07:00
Alexander Capehart
ce5b9e35c7
util: inline log functions
...
A bit of a stupid workaround now that I use Timber and not my
self-rolled logging solution. Timber uses some weird heuristics for
names that I don't.
2023-11-11 23:14:50 -07:00
Alexander Capehart
9a67a0d539
util: use timber for logging
...
This will make testing app components a lot easier since it removes the
logging dependency used in most shared objects.
2023-08-18 15:55:20 -06:00
Alexander Capehart
f5c7f25cdf
home: add music loading error dialog
...
Add a dialog that shows the stack trace of a music loading error.
This is an MVP that is only available to music loading to resolve some
immediate issues.
Resolves #527 .
2023-08-14 17:46:01 -06:00
Alexander Capehart
ada29b2f7a
ui: improve bottom sheet edge-to-edge support
...
Don't disable bottom sheet inset calculations and use the expanded
state hack to mitigate for the peek height calculation, instead,
just clobber the window inset routine to fix the peek height while
not applying the padding. The expanded hack still remains, but is
now relegated to the cases where the 16:9 keyline breaks down.
2023-08-14 17:46:01 -06:00
Alexander Capehart
151b69bedb
list: add selection menu
...
Add a menu dialog for selections. This more or less completes the
bottom sheet menu functionality.
Resolves #454 .
2023-08-03 11:52:43 -06:00
Alexander Capehart
6d342325ea
list: open menu dialogs from toolbars
...
Make it so that toolbars now open menu dialogs as items do.
This excludes the selection menu currently since there's no dialog for
such.
2023-07-28 08:44:31 -06:00
Alexander Capehart
68a9ce7b09
build: update deps
...
I didn't fully keep track of what I did this time, mostly since I was
busy wrangling some of the insane build issues from this gradle update.
2023-07-25 14:35:26 -06:00
Alexander Capehart
b4394c3a4a
util: fix horrible numeric function naming
...
"nonZeroOrNull" is actuallly more apt as "positiveOrNull".
2023-07-04 15:16:08 -06:00
Alexander Capehart
7adf7f7beb
music: index negative replaygain tags
...
Caused by an absurd error stemming from absurd helper function naming.
2023-07-04 15:09:47 -06:00
Alexander Capehart
31d647123f
music: use set for child information
...
Use sets for all child music information.
Unlike parent information, which usually has an ordering derived from
file information, child music information more or less doesn't, and
will be consistently re-interpreted by the app to apply user-configured
sorts.
2023-06-13 10:44:53 -06:00
Alexander Capehart
bce03a5833
playback: do not dynamically extract adjustments
...
Do not extract ReplayGain adjustments on the fly, instead doing them as
we go along.
This prevents an issue where the ReplayGain information would only be
applied a short period after playback start, which is heavily jarring.
2023-06-08 10:03:54 -06:00
Alexander Capehart
46fb33de59
image: optimize grouping routine
...
Turns out the image grouping routine runs on the main thread and is
slow enough to cause massive freezing. Attempt to resolve this.
2023-06-01 12:39:19 -06:00
Alexander Capehart
5f70ce8870
build: drop api 21-23 support
...
Drop support for Lollipop and Marshmallow.
I legit cannot build for them anymore. There's some insane dependency
tangle between Kapt and Room that makes it impossible to use anything
BUT Java 17 (maybe Java 11). If I use Java 17 or Java 11, suddenly the
whole app crashes since Lollipop and Marshmallow only support some weird
Java 8/11 chimera abomination. This issue has persisted probably since
the move to Java 11, making it basically unusable anyway, so at this point
just cut the charade and officially drop support.
2023-06-01 10:52:44 -06:00
Alexander Capehart
699227c1a8
all: relog project
...
Fill in a lot of code paths in the project with log statements in order
to improve the debugging experience.
2023-05-26 16:36:06 -06:00
Alexander Capehart
4210a8d247
ui: disable some options w/empty parents
...
Disable most playback and playlisting operations when an artist or
playlist is empty.
2023-05-25 11:55:49 -06:00
Alexander Capehart
2d0a74122f
ui: clean up share impl
...
Clean up the sharing implementation to be more in-line with how I
would write it.
2023-05-25 11:37:15 -06:00
Alexander Capehart
41cab82523
Merge branch 'dev' into feature/share
2023-05-18 23:20:53 +00:00
Alexander Capehart
08d36df905
list: rework item arragement
...
Fix two issues with the ways items are laid out:
1. Remove the automatic span size lookup. Now that ConcatAdpater is
used, this basically becomes impossible to really leverage.
2. Use a divider item instead of a divider item decoration. The
latter is too buggy in many contexts, like the search view.
Resolves #426
Resolves #444
2023-05-18 14:54:13 -06:00
Koitharu
e48916fb27
Fix style issues
2023-05-18 19:27:50 +03:00
Koitharu
7f11e886f7
Sharing albums, artists, genres and playlists
2023-05-18 12:19:17 +03:00
Koitharu
7915655c78
Songs sharing
2023-05-18 10:23:34 +03:00
Alexander Capehart
4fe91c25e3
music: streamline new playlist implementation
...
Make the implementation of the playlist creation dialog signifigantly
simpler by removing some aspects that don't really need implementation
yet.
2023-05-13 11:40:35 -06:00
Alexander Capehart
763061c352
music: automatically number new playlists
...
Automatically number new playlists, from Playlist 1, Playlist 2, etc.
This comes with the additional requirement that all playlists have
unique names.
2023-05-12 13:43:18 -06:00
Alexander Capehart
a5176d6209
all: do not do work on static initialization
...
Try to lazily initialize certain static variables that do work (like
Regex) to speed up initialization time.
2023-05-11 13:10:47 -06:00
Alexander Capehart
c98ca8712f
music: re-add fallible async execution
...
Re-add the tryAsync wrapper function to the loading process to properly
handle music loading errors.
Turns out there is basically no other way to properly do this except for
the insane exception -> Result -> exception hack.
2023-05-11 12:57:43 -06:00
Alexander Capehart
f57b5dfc81
playback: fix flickering with album/artist info
...
Forgot to move these TextViews into the hacky FrameLayout to make their
new marquee states work correctly.
Resolves #376 .
2023-03-18 11:47:11 -06:00
Alexander Capehart
5e0059fdba
ui: avoid crashes with simultanious navigation
...
If navigation occurs with more than one destination at once, just drop
the slower one rather than crashing.
Resolves #374 .
2023-03-17 15:47:18 -06:00
Alexander Capehart
1df15a32cd
ui: use event everywhere
...
Replace all prior uses of the StateFlow + finish method pattern with
the new event class.
2023-03-17 15:29:36 -06:00
Alexander Capehart
f0d62e8176
deps: update deps
...
Lifecycle -> 2.6.0
Spotless -> 6.17.0 (Allows file name field to be used)
2023-03-17 15:13:11 -06:00
Alexander Capehart
86ca6d577e
list: re-add fine-grained updates
...
Re-add the fine-grained updates that were removed prior due to state
concerns.
This time they should be safe enough to use, as the differ has been
fully vendored. The change is not complete enough however, as the queue
view has not been properly ported to use these updates just yet.
2023-03-04 23:08:03 -07:00