Commit graph

255 commits

Author SHA1 Message Date
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
97816e349a
build: update deps
Media3 -> 1.1.0. Update project info accordingly to use Media3
ExoPlayer instead of standalone ExoPlayer.
Nav -> 2.6.0 once again, probably without the absurd bugs now
Kotlin -> 1.9.0
Kotlin Coroutines -> 1.7.2
LeakCanary -> 2.12
2023-07-11 10:30:41 -06:00
Alexander Capehart
640c01a257
Merge branch 'master' into dev 2023-07-04 22:39:58 -06:00
Alexander Capehart
9aafcda599
build: bump to 3.1.4
Bump Auxio to version 3.1.4 (34).
2023-07-04 21:54:37 -06:00
Alexander Capehart
0cd59ce4e0
all: redocument navigation system
Add documentation for the new navigation system, which largely
completes this change.
2023-07-04 21:44:34 -06:00
Alexander Capehart
fcbce0fb98
ui: fix issues from new nav
Fix miscellanious issues from the flattened nav graph system.

Nowhere near enough, largely counting on the planned bottom sheet menus
to eventually be able to ignore most of these issues.
2023-06-27 20:05:04 -06:00
Alexander Capehart
4840742c4e
build: bump to 3.1.3
Bump to version 3.1.3 (33).
2023-06-26 18:01:35 -06:00
Alexander Capehart
8bcc86c972
build: fix redundant recipes 2023-06-20 22:17:08 -06:00
Alexander Capehart
0042f42ced
playback: fix queue sheet scroll behavior
Fix an issue where an upwards nested scroll past the top of the queue
list would not actually collapse the sheet.

This was apparently caused by something introduced in recyclerview
1.3.0-alpha01. No idea why. Roll back to the working version.
2023-06-20 21:51:18 -06:00
Alexander Capehart
8c604dae68
Merge branch 'api34' into dev 2023-06-20 16:58:48 -06:00
Alexander Capehart
c580d44466
build: bump to version 3.1.2
Bump the build version to 3.1.2 (32).
2023-06-15 19:33:47 -06:00
Alexander Capehart
321bbcf03f
all: fix api 34 crashes
Fix general API 34 crashes that I could notice immediately.

Can really test any further since the API 34 AVDs are currently potatos
running at 3 FPS for some reason.
2023-06-15 13:32:05 -06:00
Alexander Capehart
6b43a65e56
build: update to api 34
Update the app to target API 34, alongside all dependencies that expect
such.

This finally fixes some long-standing issues in newer version of MDC,
thus allowing me to remove the divider backport as well.

More work is required for predictive back (don't even know where I
start with that...), but this is a good start.
2023-06-15 13:06:17 -06:00
Alexander Capehart
5ab46ba5d1
music: add userlibrary error returns
Make UserLibrary return some kind of error indicator if something
fails.

I don't have the framework for how the app will display these errors
just yet.
2023-06-07 20:10:07 -06:00
Alexander Capehart
c59074a4fe
build: bump to 3.1.1
Bump to version 3.1.1 (31).
2023-06-02 14:56:05 -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
bf40516ddd
build: update deps
ViewPager -> 1.1.0-beta02
Activity -> 1.7.2
2023-05-28 20:14:22 -06:00
Alexander Capehart
21a6b97bfa
build: update deps
AGP -> 8.0.2
Coil -> 2.4.0
2023-05-25 12:59:45 -06:00
Alexander Capehart
1e9604be54
build: bump to 3.1.0
Bump Auxio to version 3.1.0.
2023-05-21 19:48:32 -06:00
Alexander Capehart
049d2bc152
build: update deps 2023-05-20 20:14:00 -06:00
Alexander Capehart
5bf5687ccf
build: update agp to 8.0.1 2023-05-12 16:30:18 -06:00
Alexander Capehart
e68cc4d620
build: update deps
Update a huge amount of dependencies. Forgot specifically what I
did.
2023-05-11 15:42:47 -06:00
Alexander Capehart
c1e4d0f10e
all: switch to media3
Move everything over to the media3 library instead of ExoPlayer.

Media3 is worse in every way. It labels half of ExoPlayer as "unsafe"
because it thinks that it's garbage uwu "helpful" abstractions are
perfectly servicable when in reality they are a pile of garbage filled
with insane performance issues, race conditions, and a seeming lack
of awareness to the sheer absurdity of android's media APIs. It is
absolutely horrible, but ExoPlayer will stop being maintained soon
and I will have to move over for further maintenance.
2023-05-10 17:47:31 -06:00
Alexander Capehart
c6c3816bfc
Merge branch 'master' into dev 2023-05-10 17:09:06 -06:00
Alexander Capehart
04ef09dd94
build: update deps
Time to catch up on dependency updates after working non-stop for a
month and a half.
2023-05-10 14:00:36 -06:00
Alexander Capehart
e6b00b1025
build: bump to 3.0.5
Bump the version to 3.0.5.
2023-04-16 17:30:51 -06:00
Alexander Capehart
41653a6d8a
build: bump to 3.0.4
Bump to version 3.0.4.
2023-03-24 08:30:13 -06:00
Alexander Capehart
abeac90735
image: use asdeferred
Use asDeferred with the ExoPlayer image parser.

This is much better compared to using withContext.
2023-03-19 16:19:29 -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
6226b0a830
build: remove junk files in apk
Remove build junk from the APK.

Removes another ~100kb or so.
2023-03-04 22:11:55 -07:00
Alexander Capehart
4f7ed359ae
deps: update
kotlin -> 1.8.10
AGP -> 7.4.2
2023-03-04 22:11:35 -07:00
Alexander Capehart
83c5b85424
deps: update
Spotless -> 6.15.0
Core -> 1.9.0
2023-02-24 21:57:01 -07:00
Alexander Capehart
f190e6455a
Revert "build: use split apks"
Honestly, changing the version code schema is far too much of a hassle
for these to be reasonable.

This reverts commit 055d25e3e1.
2023-02-20 22:02:15 -07:00
Alexander Capehart
055d25e3e1
build: use split apks
Build multiple architecture-specfic APKs alongside the single "fat"
APK.
2023-02-20 20:53:54 -07:00
Alexander Capehart
3b43c3ea5c
release: bump to 3.0.3
Bump to version 3.0.3 (27).
2023-02-20 18:47:32 -07:00
Alexander Capehart
192b917904
music: actually remove dependence on dcoders
Actually remove dependence on the non-audio decoders in the music
(and image) modules.
2023-02-19 13:08:44 -07:00
Alexander Capehart
e515534023
deps: fix stripping of ffmpeg extension
Fix an issue where stripping of the FFMpeg extension would not occur,
as AGP would try to default to an entirely different NDK version.

Eventually I'm considering just vendoring the FFMpeg extension outright
once I can upstream some of the ExoPlayer patches.
2023-02-19 12:04:15 -07:00
Alexander Capehart
8b6545ca10
playback: specify audio extractors only
Only specify audio extractors to reduce APK size.
2023-02-19 10:59:28 -07:00
Alexander Capehart
458f2a5d84
deps: upgrade deps
ExoPlayer -> 2.18.3
Dagger -> 2.45
Coil -> 2.2.2
AGP -> 7.4.1
Gradle -> 8.0
2023-02-19 10:24:54 -07:00
Alexander Capehart
9b7494798a
deps: delegate ndk to ffmpeg ext
Delegate the NDK to the FFMpeg extension.

Should finally make this usable with github actions.
2023-02-14 20:44:16 -07:00
Alexander Capehart
efe03cac8c
actions: try to fix workflow
Try to fix workflow to no avail. Will need to do more testing later.
2023-02-13 22:27:07 -07:00
Alexander Capehart
399942e7e5
deps: move exoplayer build into gradle/submodules
Move the ExoPlayer build process into gradle by leveraging some shell
scripting and submodule magic.

This more or less kills all windows compatibility, but that is fine.
Who even develops on windows?
2023-02-13 21:40:17 -07:00
Alexander Capehart
213409924b
playback: switch to ffmpeg extension
Switch to the FFMpeg ExoPlayer extension, which should enable support
for ALAC while also retaining support for FLAC below Android 8.
2023-02-13 09:06:45 -07:00
Alexander Capehart
1826ae3215
deps: update to mdc 1.8.0-alpha01
FINALLY update to MDC 1.7.0. After over half a year.

I have been continually blocked by doing this due to this absurd ripple
bug that was so continually frustrating. Today, I finally figred out
how to hack a fix in by using R E F L E C T I O N and manually
disabling the bugged code path since google apparently can't be bothered
to fix it.

Now, you might wonder why I didn't update to 1.8.0. That is because
there is ANOTHER RIPPLE BUG. THIS TIME WITH THE TAB LAYOUT. AND ONLY IF
IT'S IN A COLLAPSING TOOLBAR LAYOUT. Can't wait to finally use the new
1.8.0 features in December!
2023-02-12 21:45:47 -07:00
Alexander Capehart
dd2017c510
image: use di w/coil
Use dependency injection with Coil.

This allows me to use the coil-base artifact which should remove a bit
of superfluous dexcode, assuming dagger uses less. It probably doesn't.
2023-02-12 19:07:00 -07:00
Alexander Capehart
ccbd77918b
all: add di framework
Add dagger/hilt dependency injection.

Does nothing right now, will actually add modules later.
2023-01-29 19:55:53 -07:00
Alexander Capehart
2413edfd5e
deps: update to java 11
Update to Java 11 instead of Java 8.

Seems to work fine.
2023-01-29 17:58:41 -07:00
Alexander Capehart
f8d1a880d4
all: post-refactor cleanup 2023-01-29 17:45:51 -07:00
Alexander Capehart
f27215a4be
playback: use room for persistence
Finally give up and use Room to persist the playback state.

This should make dependency injection much easier, and the
implementation isn't exactly the *worst*, as I was already using
"raw" data structures for the old queue database.
2023-01-23 12:45:55 -07:00
Alexander Capehart
691eed344e
release: bump to 3.0.2
Bump the app version to 3.0.2 (26).
2023-01-21 16:03:30 -07:00