Commit graph

2966 commits

Author SHA1 Message Date
Alexander Capehart
9632e06ca6
musikr: fix build problems 2025-02-10 13:44:49 -07:00
Alexander Capehart
210285b39a
home: remove adaptive tabs
More hassle than they are worth.
2025-02-10 13:43:25 -07:00
Alexander Capehart
15d2faf354
build: bump media 2025-02-10 13:36:50 -07:00
Alexander Capehart
1459498ff3
musikr.metadata: handle case w/no mp4 covers
Otherwise could have triggered an exception.
2025-02-06 14:54:43 -07:00
Alexander Capehart
ef732219d7
info: clarify taglib in readme 2025-02-06 11:41:09 -07:00
Alexander Capehart
431f541ec8
info: add slushspirit to sponsors 2025-02-06 11:27:26 -07:00
Alexander Capehart
fb2f228a97
Update README.md 2025-02-06 11:26:28 -07:00
Alexander Capehart
72ffac4209
musikr: reformat 2025-01-31 13:45:18 -07:00
Alexander Capehart
ee7e63d1dc
musikr: stop possible use-after-free in metabuild 2025-01-31 13:41:23 -07:00
Alexander Capehart
f9109b8a9c
musikr.build: enable symbols in taglibjni w/debug 2025-01-31 11:09:35 -07:00
Alexander Capehart
2e4b6681d1
build: bump to v4.0.0-dev5 2025-01-30 12:50:10 -07:00
Alexander Capehart
a0c82ac812
musikr: reformat 2025-01-30 09:38:38 -07:00
Alexander Capehart
c881a1c5b4
build: bump coroutines to 1.10.1
Fixes some more coroutine memory leaks.
2025-01-30 09:37:30 -07:00
Alexander Capehart
e78fde44e0
Revert "musikr: use channel-based pipeline"
This reverts commit 7c8863bd3a.
2025-01-30 09:30:38 -07:00
Alexander Capehart
7880c777ba
musikr: fix inputstream memory leak
Apparently allocating the bytes on the JVM side of the taglib parser
will wind up leaking memory due to a bugged cache in ByteBuffer.

Instead, allocate the bytes in native, wrap it into a ByteBuffer, and
then pass it upwards into NativeInputStream. This seems to fix the
leak.
2025-01-30 09:29:26 -07:00
Alexander Capehart
7c8863bd3a
musikr: use channel-based pipeline
Much more repeated code, but no more memory leaks.
2025-01-29 15:31:48 -07:00
Alexander Capehart
97bd259728
musikr: handle duplicate playlist songs in graph
Accidentally flattened these out during graphing.
2025-01-22 12:57:11 -07:00
Alexander Capehart
e3e19fb0ac
playback: avoid huge allocation on printing cmd 2025-01-21 13:18:23 -07:00
Alexander Capehart
9685f3cf51
musikr: fix broken jni build 2025-01-20 11:40:15 -07:00
Alexander Capehart
9d22cc37b8
musikr: report invalid songs in pipeline
Avoids the bar getting "stuck"
2025-01-20 11:39:47 -07:00
Alexander Capehart
d49286981c
musikr: improve native error handling
Not an ideal error reporting system, but for the purposes of getting
4.0.0 out as fast as possible it will do.
2025-01-20 11:26:41 -07:00
Alexander Capehart
0785711cd6
musikr.tag: handle slash positions in xiph
Resolves #965.
2025-01-18 20:32:28 -07:00
Alexander Capehart
a0e10ef8dd
musikr: implement raii jni classes
This should hopefully mitigate the memory leak problems unless I forget
to transfer over ref ownership to the corresponding class. Analyzed
memory use on load and it looks like the JVM is able to reclaim
everything extracted by the native code, so I should hopefully be fine.
2025-01-18 19:52:05 -07:00
Alexander Capehart
1bf44eba91
musikr: fix memory leaks 2025-01-18 17:21:14 -07:00
Alexander Capehart
3aae8ea534
musikr: bubblewrap nativeinputstream
Try to avoid exceptions cascading and bringing down the app.
2025-01-18 09:58:05 -07:00
Alexander Capehart
b81ecf44c0
all: reformat 2025-01-16 09:40:36 -07:00
Alexander Capehart
020c6900a5
all: fix build issues 2025-01-15 11:44:57 -07:00
Alexander Capehart
4d704e86a6
Revert "musikr: bubblewrap jvminputstream"
This reverts commit b6d80189ca.
2025-01-15 11:44:29 -07:00
Alexander Capehart
ad2ec5a655
Revert "app: remove custom edge to edge setup"
This reverts commit f134d3e11b.
2025-01-15 11:44:18 -07:00
Alexander Capehart
b0b55b5069
main: band-aid bottom sheets flipping out pre-30
Caused by busted legacy window insets behavior biting me again.
2025-01-15 11:39:59 -07:00
Alexander Capehart
c9d4b01f9f
musikr: initial root documentation 2025-01-14 08:55:44 -07:00
Alexander Capehart
b6d80189ca
musikr: bubblewrap jvminputstream
Should help me ID some error.
2025-01-14 08:53:03 -07:00
Alexander Capehart
71aa887438
musikr.cache: bump version 2025-01-13 19:35:03 -07:00
Alexander Capehart
b108970fe5
build: bump to 4.0.0-dev4 2025-01-13 19:27:24 -07:00
Alexander Capehart
f28f2dd9f7
playback: fix dropped saved state on empty lib
Since ExoPlaybackStateHolder wasn't handling the new "empty
library" case.
2025-01-13 19:24:43 -07:00
Alexander Capehart
847d5aa1fc
all: reformat 2025-01-13 12:20:10 -07:00
Alexander Capehart
e1f07def10
settings: recreate on theme change
Possibly mitigates some new edge to edge issues.
2025-01-13 12:09:19 -07:00
Alexander Capehart
f134d3e11b
app: remove custom edge to edge setup
I think this conflicts with the weird default behavior of Android 15.
2025-01-13 11:56:46 -07:00
Alexander Capehart
10aaf0afd2
all: reformat 2025-01-11 20:02:00 -07:00
Alexander Capehart
a1289ffaca
service: attempt to band-aid foreground limit 2025-01-11 20:01:33 -07:00
Alexander Capehart
ad4b9a3859
playback: re-add file playback 2025-01-11 19:52:27 -07:00
Alexander Capehart
08e09af5b3
all: reformat 2025-01-11 19:16:59 -07:00
Alexander Capehart
cc6c5084ff
playback: reduce more skipping on tight reloads 2025-01-11 19:15:18 -07:00
Alexander Capehart
2f43113ce2
ui: make brown/grey themes distinct
These would otherwise be red and blue unless I enable color match.
2025-01-11 16:24:39 -07:00
Alexander Capehart
04e871f421
all: reformat 2025-01-11 10:18:36 -07:00
Alexander Capehart
698f0bc13c
detail: fix bouncing when navigating to song 2025-01-11 10:14:59 -07:00
Alexander Capehart
85a2952ae1
main: fix fab shadow
By reverting the previous changes to stop touch events from being
eaten?

Not sure why this works.
2025-01-11 10:14:59 -07:00
Alexander Capehart
c35902a6aa
Merge pull request #950 from dot166/dev
add android 15 to android version list in issue template
2025-01-10 11:10:57 -07:00
Alexander Capehart
1132e486ca
home: do not convert addedms to to secs 2025-01-09 19:33:14 -07:00
Alexander Capehart
e6b326a571
musikr: clarify album added timestamp api
Same reasons, should be milliseconds
2025-01-09 19:31:48 -07:00