Rename MusicMode to MusicType.
The original naming was always a bit clunky given that it referred to
both settings and data configuration. I feel that "Type" is probably
better overall.
Use PlaySong modeling within settings too. This largely completes the
PlaySong refactor and fully adds the ability to play songs by
themselves as an option.
Resolves#424.
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hu/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Italian)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
* Translated using Weblate (Finnish)
Currently translated at 93.5% (262 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/fi/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (281 of 281 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (281 of 281 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (281 of 281 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Russian)
Currently translated at 100.0% (281 of 281 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Belarusian)
Currently translated at 100.0% (281 of 281 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/be/
* Translated using Weblate (Japanese)
Currently translated at 99.6% (281 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ja/
* Translated using Weblate (German)
Currently translated at 99.6% (281 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (German)
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (French)
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/fr/
* Translated using Weblate (Italian)
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hu/
* Translated using Weblate (Czech)
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Hindi)
Currently translated at 99.2% (280 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hi/
* Translated using Weblate (Hungarian)
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hu/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Punjabi)
Currently translated at 100.0% (282 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pa/
* Translated using Weblate (Hungarian)
Currently translated at 97.2% (35 of 36 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/hu/
* Added translation using Weblate (Arabic (Saudi Arabia))
* Added translation using Weblate (Arabic)
* Translated using Weblate (Arabic (ar_IQ))
Currently translated at 52.8% (149 of 282 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ar_IQ/
---------
Co-authored-by: Tibor Botfai (gidano) <gidano@gmail.com>
Co-authored-by: BMT[UA] <weblate@yopmail.com>
Co-authored-by: Enrico D'Ortenzio <enrico2588@gmail.com>
Co-authored-by: Jiri Grönroos <jiri.gronroos@iki.fi>
Co-authored-by: Eric <hamburger2048@users.noreply.hosted.weblate.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Макар Разин <makarrazin14@gmail.com>
Co-authored-by: min7-i <postly+github_min@mailbox.org>
Co-authored-by: J. Lavoie <j.lavoie@net-c.ca>
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: ShareASmile <aapshergill@gmail.com>
Co-authored-by: nitrogen <nitro.gen.5995@gmail.com>
Standardize navigation command consumption to only occur when a
navigation route has *definitively* ended. If more commands could
come, observe them. Otherwise, consume immediately.
Bit of a megapatch that:
- Adds dedicated play, shuffle, and view items to all item menus
(songs haven't been fully implemented yet)
- Adds icons to all item menus
- Re-adds enabled/disabled items to menus
- Makes menu action naming conventions more consistent with the rest
of the app
Use the new menu system in all applicable places.
More consideration is needed right now on whether the toolbars should
also have menu items, so they remain unchanged right now.
Add a dialog that shows menu information as a bottom sheet instead of as
a PopupMenu.
This did not take as much finessing of BottomSheetBehavior as the main
playback UI framework did, just some style redefinitions.
Flatten the navigation graph into a single "main" graph that links
home to both explore and preference fragments.
***This massively breaks the app in it's current state***. Further
changes and refactors are needed to get this back to working.
* Added translation using Weblate (Swedish)
* Translated using Weblate (Swedish)
Currently translated at 97.0% (33 of 34 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/sv/
* Translated using Weblate (Swedish)
Currently translated at 35.2% (98 of 278 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/sv/
* Translated using Weblate (Swedish)
Currently translated at 46.7% (130 of 278 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/sv/
* Update translation files
Updated by "Remove blank strings" hook in Weblate.
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Czech)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (German)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Polish)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Punjabi)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pa/
* Translated using Weblate (French)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/fr/
* Translated using Weblate (Russian)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Croatian)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hr/
* Translated using Weblate (Belarusian)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/be/
* Translated using Weblate (Polish)
Currently translated at 100.0% (280 of 280 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
---------
Co-authored-by: sköldpadda <weblate@turtle.garden>
Co-authored-by: Eric <hamburger2048@users.noreply.hosted.weblate.org>
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Maciej Klupp <maciej.klupp@gmail.com>
Co-authored-by: BMT[UA] <weblate@yopmail.com>
Co-authored-by: ShareASmile <aapshergill@gmail.com>
Co-authored-by: J. Lavoie <j.lavoie@net-c.ca>
Co-authored-by: Макар Разин <makarrazin14@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Add an option to restore the old 1:1 crop behavior to the app.
Some people think this looks better, some people like to have youtube
thumbnails in their APICs. Can't really be opinionated here.
Do not transfer the cache db between devices, drop it instead.
This is at best useless (timestamps and ids will be invalid) and at
worst actively detrimental (timestamps and ids are similar), so
better to reindex than try to read from the cache.
Resolves#467.
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.
Use a real mdc drag handle on the queue sheet.
The accessibility functions won't even be enabled, but that
would need to be communicated in a special way anyway.
Unify corner radius and icon size configurations under a new sizing
property. This is largely driven by a need to remove the typical
half-width icon sizing, as it results in blurry playing indicators
in some cases. This also co-incides with a change of parent image
icon sizes to 32dp over 28dp.
Resolves#415.
Make the app UI properly handle album covers that are not 1:1, instead
of just cropping them.
This required switching to Coil's rounded corners transformation
outright so that the non-1:1 image can sit inside the CoverView in a
way that actually looks good
I'm pretty confident this will work, but there might be some edge cases
since coil's transformation is really finicky.
Resolves#355.
Refactor StyledImageView and ImageGroup into a new class called
CoverView.
This new view is more sensibly designed and should be capable of
handling non-square album covers when implemented.
Group albums implicitly linked to an artist via the "artist" tag into
their own section called "Appears on".
This makes Auxio's artist model a bit more apparent to users.
Resolves#411.
Default tracks without a disc to a group called "No disc" instead of
disc 1.
This should reduce confusion on the user end, as it will make improper
taggings more apparent instead of simply degrading to a werid sort
ordering.
Resolves#405.
Move the music editing state to the toolbar.
This should be signifigantly clearer than prior, at the cost of it's
"universality" implying that renaming should be available when it
actually won't be.
Make the header information reflect changes in playlist composition as
the playlist is edited.
This should improve the editing experience to some extent.
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#426Resolves#444
Simplify picker closing navigation by avoiding weird communication via
state change and instead simply navigate twice from NewPlaylistDialog.
This is probably really stupid. But so is the other way.
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Punjabi)
Currently translated at 100.0% (30 of 30 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/pa/
* Translated using Weblate (Hindi)
Currently translated at 16.4% (43 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hi/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Malayalam)
Currently translated at 100.0% (30 of 30 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/ml/
* Translated using Weblate (Hindi)
Currently translated at 100.0% (30 of 30 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/hi/
* Translated using Weblate (French)
Currently translated at 83.9% (219 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/fr/
* Added translation using Weblate (Persian)
* Translated using Weblate (Romanian)
Currently translated at 55.5% (145 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ro/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Croatian)
Currently translated at 100.0% (30 of 30 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/hr/
* Translated using Weblate (Turkish)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/tr/
* Translated using Weblate (Persian)
Currently translated at 9.9% (26 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/fa/
* Translated using Weblate (Italian)
Currently translated at 99.6% (260 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
* Translated using Weblate (Hindi)
Currently translated at 17.6% (46 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hi/
* Translated using Weblate (Czech)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Malayalam)
Currently translated at 32.9% (86 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ml/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Czech)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Russian)
Currently translated at 100.0% (263 of 263 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (263 of 263 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Belarusian)
Currently translated at 100.0% (263 of 263 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/be/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (263 of 263 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
---------
Co-authored-by: BMN <weblate@yopmail.com>
Co-authored-by: ShareASmile <aapshergill@gmail.com>
Co-authored-by: Martin Derleth <contactmder@pm.me>
Co-authored-by: alex <hdhdhfhfbbffhhfhfjfjf@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Eren İnce <erenince@proton.me>
Co-authored-by: Alireza Najdshad <alirezanajdshad28@gmail.com>
Co-authored-by: atilluF <110931720+atilluF@users.noreply.github.com>
Co-authored-by: Projjal Moitra <moitraprojjal@disroot.org>
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: Raman <xysed@tutanota.com>
Co-authored-by: Макар Разин <makarrazin14@gmail.com>
Add a real playlist naming dialog and UX flow.
This is a bit rough at the moment since theres a good amount of nuance
here. Should improve as the playlist implementation continues to grow
more fleshed out.
Unwind the picker abstraction into smaller dialog packages.
While this increases repetition, it will make the playlist dialog
implementations much less shoddy.
Refactor the music name implementation to do the following:
1. Unify normal and sort names under a single datatype
2. Handle arbitrary-length digit strings
3. Ignore puncutation regardless of the intelligent sort
configuration, as it is trivially localizable.
Resolves#423.
Co-authored by: ChatGPT-3.5
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/
* Translated using Weblate (Czech)
Currently translated at 100.0% (260 of 260 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (German)
Currently translated at 100.0% (260 of 260 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Russian)
Currently translated at 100.0% (260 of 260 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (260 of 260 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Belarusian)
Currently translated at 100.0% (260 of 260 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/be/
* Translated using Weblate (Czech)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (German)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Korean)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ko/
* Translated using Weblate (Russian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Belarusian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/be/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Added translation using Weblate (Odia)
* Added translation using Weblate (Finnish)
* Translated using Weblate (Odia)
Currently translated at 0.7% (2 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/or/
* Translated using Weblate (Greek)
Currently translated at 45.5% (119 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/el/
* Translated using Weblate (Italian)
Currently translated at 99.6% (260 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
* Translated using Weblate (Polish)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Croatian)
Currently translated at 100.0% (30 of 30 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/hr/
* Translated using Weblate (Croatian)
Currently translated at 100.0% (261 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hr/
* Translated using Weblate (Odia)
Currently translated at 1.9% (5 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/or/
* Translated using Weblate (Finnish)
Currently translated at 90.0% (235 of 261 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/fi/
---------
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Макар Разин <makarrazin14@gmail.com>
Co-authored-by: Vaclovas Intas <vaclovas1999@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Hoseok Seo <ddinghoya@gmail.com>
Co-authored-by: BMN <weblate@yopmail.com>
Co-authored-by: Eric <hamburger2048@users.noreply.hosted.weblate.org>
Co-authored-by: Jiri Grönroos <jiri.gronroos@iki.fi>
Co-authored-by: Subham Jena <subhamjena8465@gmail.com>
Co-authored-by: Ricardo Feleque <rnfeq869w@relay.firefox.com>
Co-authored-by: atilluF <atilluF@users.noreply.hosted.weblate.org>
Co-authored-by: Maciej Klupp <maciej.klupp@gmail.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Refactor the weird picker god module into specific sub-impls in
playback and a new navigation package.
I cannot keep this unified. The needs are too different among each
picker. Better to keep it separate, especially in preparation for
the playlist dialogs.
Make the numeric sort name handling added prior dependent on a new
"Intelligent Sorting" setting that also controls the article checks.
This kind of behavior might not be desirable in all cases, and it makes
the setting more consistent anyway.
Refactor the disjoint Library and Playlist setup into two new
DeviceLibrary and UserLibrary implementations.
This makes the API surface a bit less disjoint than prior.
* Translated using Weblate (Arabic (ar_IQ))
Currently translated at 58.9% (151 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ar_IQ/
* Added translation using Weblate (Hebrew)
* Translated using Weblate (Hebrew)
Currently translated at 96.5% (28 of 29 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/he/
* Translated using Weblate (Hebrew)
Currently translated at 61.7% (158 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/he/
* Translated using Weblate (German)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Polish)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Polish)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Polish)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (German)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (German)
Currently translated at 100.0% (29 of 29 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/de/
* Translated using Weblate (Galician)
Currently translated at 98.0% (251 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/gl/
* Translated using Weblate (Polish)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Polish)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Polish)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
---------
Co-authored-by: Moayad Ahmed <meayad1728383@gmail.com>
Co-authored-by: FAYE <pl4gve@gmail.com>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Maciej Klupp <maciej.klupp@gmail.com>
Co-authored-by: Макар Разин <makarrazin14@gmail.com>
Co-authored-by: C. Rüdinger <Mail-an-CR@web.de>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Separate the header information into it's own adapter, and concatenate
it with the prior adapter.
This way, it can be updated separately without a jarring list update.
Add a setting to remove hard-coded sort names based on articles.
This feature is nice, but does not work with some non-english music.
Those individuals should have the ability to disable it.
The implementation honestly is not the greatest, primarily because it
does a 100% reload when it could just regenerate the library. Auxio's
current music model isn't really designed for that, so it will do this
until a need to that kind of "soft reload" really arises.
Resolves#359.
Fix visual clipping on the shuffle FAB's shadow.
Turns out padding, while slower, is actually the better inset handling
method, as it allows me to avoid visual clipping in some cases.
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!
* Translated using Weblate (German)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pt_BR/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Italian)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
* Translated using Weblate (Russian)
Currently translated at 99.6% (255 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Italian)
Currently translated at 100.0% (28 of 28 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/it/
* Translated using Weblate (Indonesian)
Currently translated at 70.3% (180 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/id/
* Translated using Weblate (Korean)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ko/
* Translated using Weblate (Polish)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Russian)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Russian)
Currently translated at 100.0% (28 of 28 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/ru/
* Translated using Weblate (German)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Hindi)
Currently translated at 14.4% (37 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hi/
* Translated using Weblate (Malayalam)
Currently translated at 30.4% (78 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ml/
* Translated using Weblate (Malayalam)
Currently translated at 96.4% (27 of 28 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/ml/
* Translated using Weblate (Czech)
Currently translated at 100.0% (257 of 257 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (257 of 257 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Korean)
Currently translated at 100.0% (257 of 257 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ko/
* Translated using Weblate (Russian)
Currently translated at 100.0% (257 of 257 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (257 of 257 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (257 of 257 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (257 of 257 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (257 of 257 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (28 of 28 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/uk/
---------
Co-authored-by: min7-i <postly+github_min@mailbox.org>
Co-authored-by: BMN <weblate@yopmail.com>
Co-authored-by: Edmundo Nocchi <edmundonocchii@gmail.com>
Co-authored-by: atilluF <atilluF@users.noreply.hosted.weblate.org>
Co-authored-by: Evgeniy Khramov <thejenjagamertjg@gmail.com>
Co-authored-by: liimee <alt3753.7@gmail.com>
Co-authored-by: Hoseok Seo <ddinghoya@gmail.com>
Co-authored-by: Ilya <kilimov25@gmail.com>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Raman <translations.0l5zc@simplelogin.com>
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Skrripy <rozihrash.ya6w7@simplelogin.com>
Co-authored-by: Eric <hamburger2048@users.noreply.hosted.weblate.org>
Co-authored-by: Vaclovas lntas <vaclovas1999@gmail.com>
Make sorting direction (ascending/descending) explicit in the UI and in
the code.
Instead of a boolean flag, two distinct "ascending" and "descending"
options are used instead. This should be much clearer.
Start injecting shared object instances.
This is not a 100% conversion, as certain portions of the code are not
really ready for 100% DI constructors just yet.
Split off the song property extraction code into a music package class.
This is part of an initiative to remove non-parameter uses of contexts
in ViewModels.
Manually use our own navigation graph in the new settings view.
This avoids a crash that occurs with the default preferences navigation
(on some devices) where the differing app IDs between debug and release
makes it so that the fragments cannot be found. Because you know.
Android.
* Translated using Weblate (Spanish)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Korean)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ko/
* Translated using Weblate (Russian)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Korean)
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/ko/
* Translated using Weblate (Czech)
Currently translated at 100.0% (245 of 245 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Czech)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (German)
Currently translated at 99.6% (255 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Italian)
Currently translated at 97.6% (250 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
* Translated using Weblate (German)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (256 of 256 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/uk/
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Hoseok Seo <ddinghoya@gmail.com>
Co-authored-by: kirill blaze <kirillblaze2@gmail.com>
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: Eric <hamburger2048@users.noreply.hosted.weblate.org>
Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Co-authored-by: Alessandro <alessandro.cocco@outlook.com>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: BMN <weblate@yopmail.com>
Co-authored-by: Dan <denqwerta@gmail.com>
Co-authored-by: Vaclovas lntas <vaclovas1999@gmail.com>
Switch to item decorations to manage header dividers.
This is much more reliable than encoding it in-data. Only cost comes in
that it forces me to backport yet another component since I still can't
update MDC after over half a year.
Redesign the header component to be more aligned with M3 guidelines.
This includes moving the divider to the top when reasonable, using a
smaller font size, and using a tinted coloration to separate itself
from the list contents.
Make list instructions generic in preparation for the detail list
update.
Detail views need their own instructions datatype, so this is meant to
allow that to be implemented without issue.
Split up the settings ui into four categories.
This should reduce the visual load on the user as Auxio continues to
accrue possible configuration options.
Resolves#323.
Reorganize the music folders dialog to be more visually straightforward
than prior, primarily by grouping the folder elements into the same
visual region.
Resolves#318.
Just pre-emptively add support for TXXX variations of the non-standard
vorbis artist fields to the ID3v2 parser.
I'd imagine the naming convention will be similar between them, so why
not.
Make all adapters relying on diffing unified into a DiffAdapter
superclass that can then accurately respond to the new
UpdateInstructions data.
UpdateInstructions is still not fully used everywhere, but will be
soon.
* Translated using Weblate (Spanish)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Chinese (Traditional))
Currently translated at 22.9% (56 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hant/
* Translated using Weblate (Turkish)
Currently translated at 68.4% (167 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/tr/
* Translated using Weblate (Turkish)
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/tr/
* Translated using Weblate (Chinese (Traditional))
Currently translated at 96.2% (26 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/zh_Hant/
* Translated using Weblate (German)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Turkish)
Currently translated at 70.0% (171 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/tr/
* Translated using Weblate (Portuguese (Portugal))
Currently translated at 99.5% (243 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pt_PT/
* Translated using Weblate (Turkish)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/tr/
* Translated using Weblate (French)
Currently translated at 52.8% (129 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/fr/
* Translated using Weblate (French)
Currently translated at 96.2% (26 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/fr/
* Translated using Weblate (Italian)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: BMN <weblate@yopmail.com>
Co-authored-by: p4ssen <244045932@qq.com>
Co-authored-by: Bai <batuhanakkurt000@gmail.com>
Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Co-authored-by: metezd <itoldyouthat@protonmail.com>
Co-authored-by: ssantos <ssantos@web.de>
Co-authored-by: Ömer Faruk Çakmak <omerfarukckmk@protonmail.com>
Co-authored-by: Max Vyr <maxvy@proton.me>
Co-authored-by: Translator-3000 <weblate.m1d0h@8shield.net>
Add the ability to play or shuffle a selection.
This finally allows "arbitrary" playback to be created from any
combination of songs/albums/artist/genres, rather than just from
pre-defined options.
Resolves#313.
Switch back to using settings-specific listeners rather than the
SharedPreference listener.
Again, this is due to the need to decouple android code from settings.
It also allows us to fully obscure the details of what settings we are
actually working with.
* music: allow editing past queue items
Allow past and currently playing queue items to be edited, instead of
just future queue items.
This was a somewhat requested feature that was impossible with the
prior queue system. With some fixes, the new queue system can now be
used to do this.
This even works with edge cases like removing the currently playing
song. Albeit, it's likely that more bug fixes and testing will be
needed.
Resolves#223.
* Translated using Weblate (Spanish)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Czech)
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/cs/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/es/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/lt/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/zh_Hans/
* Translated using Weblate (Czech)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Croatian)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hr/
* Translated using Weblate (Ukrainian)
Currently translated at 26.2% (64 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Russian)
Currently translated at 99.5% (243 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Ukrainian)
Currently translated at 51.6% (126 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 96.2% (26 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 70.9% (173 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 72.5% (177 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (German)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pt_BR/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pt_BR/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/uk/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (244 of 244 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pt_BR/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/pt_BR/
* Translated using Weblate (German)
Currently translated at 100.0% (27 of 27 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/de/
Co-authored-by: Alexander Capehart <alex@oxycblt.org>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Vaclovas lntas <vaclovas1999@gmail.com>
Co-authored-by: Eric <hamburger2048@users.noreply.hosted.weblate.org>
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: BMN <weblate@yopmail.com>
Co-authored-by: kirill blaze <kirillblaze2@gmail.com>
Co-authored-by: Ettore Atalan <atalanttore@googlemail.com>
Co-authored-by: Edmundo Nocchi <edmundonocchii@gmail.com>
Co-authored-by: santiago046 <comehere665@gmail.com>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Alexander Capehart <oxycblt@abstractr.net>
Add a button to reset the pre-amp to it's default setting.
This way, you don't have to specifically seek to the 0 dB value in the
dialog in order to reset it.
Refactor the internal tag management portion of MetadataExtractor into a
new "Tags" object that can now be re-used in the ReplayGain system.
This also does a minor rework to the ReplayGain object to make it
totally self-sufficient.
Split off parsing-related components from extractor into a new parsing
module.
A lot of these methods are used in non-extractor code, so it makes more
sense for them to not be part of the extractors.
The code that is really extractor-specific can remain within the
extractor files.
When resolving the names of several artists or genres, use a localized
separator instead of a comma.
This makes list values more correct in other languages, if properly
translated.
Add support for albums to have a range of dates.
Often compilation albums will have Songs released in different months
or years, so it makes some sense to show a date range rather than just
the ealiest date.
The only point at which the earliest date is still shown is in the home
view's popup, as maxiumum dates in a date range are not sorted by, and
so showing it doesn't make sense.
* Translated using Weblate (Czech)
Currently translated at 100.0% (241 of 241 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (German)
Currently translated at 100.0% (241 of 241 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (241 of 241 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (241 of 241 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (241 of 241 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Italian)
Currently translated at 100.0% (241 of 241 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
* Translated using Weblate (Croatian)
Currently translated at 100.0% (241 of 241 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hr/
* Translated using Weblate (Russian)
Currently translated at 100.0% (241 of 241 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Eric <hamburger1024@duck.com>
Co-authored-by: Vaclovas lntas <vaclovas1999@gmail.com>
Co-authored-by: Translator-3000 <weblate.m1d0h@8shield.net>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Evgeniy Khramov <thejenjagamertjg@gmail.com>
Co-authored-by: Alexander Capehart <oxycblt@abstractr.net>
Redocument the detail, home, image, and list modules.
Much of this project's documentation has drifted from actual
functionality, and newer code is pretty sparely documented.
This commit seeks to rectify that by redocumenting every source
file in this project.
Implement actions for selections in the home view.
Play selected and shuffle selected have been removed for now until the
queue can be properly reworked
* Translated using Weblate (Croatian)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hr/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 93.2% (222 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pt_BR/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 96.0% (24 of 25 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/pt_BR/
* Translated using Weblate (Russian)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Czech)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Russian)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (German)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Croatian)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hr/
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Edmundo Nocchi <edmundonocchii@gmail.com>
Co-authored-by: Evgeniy Khramov <thejenjagamertjg@gmail.com>
Co-authored-by: Eric <hamburger1024@duck.com>
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Vaclovas lntas <vaclovas1999@gmail.com>
Remove childish wording/diatribes from the codebase that were added
when I was younger.
I'm an adult now. I have to make this repository at least somewhat
professional.
More miscellanious tweaks I can't categorize since I have no time.
It's mostly attempts at improving animation visuals an failing. Really
want to switch to material animations once I can finally get the things
working.
Animate the check mark and background change when a item is selected.
This produces a nicer UX overall. If possible, I'm planning to also
port this to the other indicators in ImageGroup, albeit doing that is
signifigantly harder.
Redefine the meaning of activation across the app to align with the SDK
documentation.
According to the documentation:
- Activation -> A permanent kind of selection initiated by the user.
This means playback states, item selection, etc.
- Selection -> A transient kind of selection that can be added or
removed without user input. This includes things such as playing
indicators.
Redefine usages of selection and activation across the app to align
with this.
* Translated using Weblate (Czech)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Added translation using Weblate (Malayalam)
* Translated using Weblate (Czech)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (German)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Korean)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ko/
* Translated using Weblate (Portuguese (Portugal))
Currently translated at 85.7% (204 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pt_PT/
* Translated using Weblate (Russian)
Currently translated at 97.0% (231 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Russian)
Currently translated at 97.0% (231 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Italian)
Currently translated at 100.0% (238 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
* Translated using Weblate (Russian)
Currently translated at 99.5% (237 of 238 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Eric <hamburger1024@mailbox.org>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Sabrina <hello@cherryband.space>
Co-authored-by: ssantos <ssantos@web.de>
Co-authored-by: Is that matters? <werentyou@proton.me>
Co-authored-by: Yegor Kazantsev <wwwadmin@bk.ru>
Co-authored-by: Vaclovas lntas <vaclovas1999@gmail.com>
Co-authored-by: Translator-3000 <weblate.m1d0h@8shield.net>
Co-authored-by: Егор Ермаков <eg.ermakov2016@yandex.ru>
Rework the music picker system to be a reactive, viewmodel-based system
instead of a janky UI system.
This should make it much easier to maintain and extend in the future.
Handle errors from databases.
Either way, a crash from a database or a silent error will be equally
nightmarish to debug. May as well keep going if they fail.
Try to move multi-artist playback/navigation into a single function.
This function is really bad and is tacked onto the most convienent
location without much thought. I really wish to move this into the
ViewModel flow eventually, but I have no idea how to architecture
that. Oh well.
* Translated using Weblate (Romanian)
Currently translated at 32.1% (75 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ro/
* Translated using Weblate (German)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Romanian)
Currently translated at 47.6% (111 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ro/
* Translated using Weblate (Romanian)
Currently translated at 100.0% (24 of 24 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/ro/
* Translated using Weblate (Czech)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Italian)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/it/
* Translated using Weblate (Korean)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ko/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Russian)
Currently translated at 95.2% (222 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Czech)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Russian)
Currently translated at 96.5% (225 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
Co-authored-by: alex <hdhdhfhfbbffhhfhfjfjf@gmail.com>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: Enrico D'Ortenzio <enrico2588@gmail.com>
Co-authored-by: Hoseok Seo <ddinghoya@gmail.com>
Co-authored-by: Eric <hamburger1024@mailbox.org>
Co-authored-by: Vaclovas lntas <vaclovas1999@gmail.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Егор Ермаков <eg.ermakov2016@yandex.ru>
Co-authored-by: Yegor Kazantsev <wwwadmin@bk.ru>
Make artist images sort by count instead of by name.
I've recently added a few singles in my library that have been
cluttering the previous artist image algorithm with non-ideal
covers. Instead of sorting by name (Which was really an artifact
of the old MediaStore engine anyway), sort by the amount of songs
of each album instead, which hopefully should weight images less
towards singles and more towards albums (And especially albums
the user likes).
* Translated using Weblate (Lithuanian)
Currently translated at 78.1% (182 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 89.2% (208 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pt_BR/
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/
* Translated using Weblate (Lithuanian)
Currently translated at 79.6% (184 of 231 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (231 of 231 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (231 of 231 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (231 of 231 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (24 of 24 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/es/
* Translated using Weblate (Lithuanian)
Currently translated at 100.0% (231 of 231 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/lt/
* Translated using Weblate (Czech)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Spanish)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Romanian)
Currently translated at 31.3% (73 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ro/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Added translation using Weblate (Punjabi (Pakistan))
* Translated using Weblate (Punjabi (Pakistan))
Currently translated at 7.7% (18 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pa_PK/
* Translated using Weblate (Punjabi (Pakistan))
Currently translated at 95.8% (23 of 24 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/pa_PK/
Co-authored-by: Vaclovas lntas <vaclovas1999@gmail.com>
Co-authored-by: zaioti <zaioti@tuta.io>
Co-authored-by: Iago <translate@delthia.com>
Co-authored-by: gallegonovato <fran-carro@hotmail.es>
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: DavidRLTG <DavidRLTG@protonmail.com>
Co-authored-by: Eric <hamburger1024@mailbox.org>
Co-authored-by: bgo-eiu <huyaqoob+toolforge@gmail.com>
Add a setting to hide "collaborators", that is artists that do not show
up on any album artist tags.
This is mostly for my own use since I don't get use from useless
collaborator entries.
If a song/album date has a month value, show it in the UI.
This hopefully improves the date experience for more well-tagged
libraries. Due to date limitations however, it is limited to
Android O onwards for now.
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/
* Update translation files
Updated by "Cleanup translation files" hook in Weblate.
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/
* Translated using Weblate (Czech)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (German)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Korean)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ko/
* Translated using Weblate (Polish)
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (233 of 233 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Korean)
Currently translated at 100.0% (24 of 24 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/ko/
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Hoseok Seo <ddinghoya@gmail.com>
Co-authored-by: Maciej Klupp <maciej.klupp@gmail.com>
Co-authored-by: Eric <hamburger1024@mailbox.org>
Unify the "Show Covers" and "Ignore MediaStore Covers" settings under an
new "Album covers" setting.
This will make it easier to extend to new forms of album cover
collection.
* Translated using Weblate (Czech)
Currently translated at 100.0% (235 of 235 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (German)
Currently translated at 100.0% (235 of 235 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Polish)
Currently translated at 97.4% (229 of 235 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (235 of 235 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Polish)
Currently translated at 98.7% (232 of 235 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pl/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (235 of 235 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
Co-authored-by: Fjuro <ifjuro@proton.me>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Maciej Klupp <maciej.klupp@gmail.com>
Co-authored-by: Eric <hamburger1024@mailbox.org>
Co-authored-by: Alexander Capehart <oxycblt@abstractr.net>
Redesign the icon entirely.
Since the next release is 3.0.0, may as well refresh the icon.
- This icon is actually unique and not a reskinned material icon, which
I feel will diffentiate Auxio even more.
- While unique, it also blends into the surrounding app icons a lot
better, especially regarding using stroke/corner sizes.
Add a toggle to control the IS_MUSIC=1 selector.
This is normally used to remove non-music like podcasts and ringtones,
however some people use Auxio was a general-purpose audio player for
these files, so this setting can be used to disable that selector and
load non-music.
Resolves#246.
Add semi-complete support for multiple artists.
This changeset completely reworks the music linker to add the following
new behaviors:
1. Artists are now derived from both artist and album artist tags,
with them being linked to songs and albums respectively
2. Albums and songs can now have multiple artists that can be distinct
from eachother
3. Previous Genre picking infrastructure has been removed and replaced
with artist picking infrastructure. "Play from genre" has been retired
entirely.
This is a clean break to the previous artist model and may not work
with all libraries. Steps to migrate the music library will be added
to the changelog.
Resolves#195.
Keep changes when unshuffling and reshuffling the queue.
This quirk was a hold-over from the old queue system, and now it's
removed.
Note that sorting is still based on parent, and so sort orders might
remain somewhat wonky. I only see myself really tackling that come
gapless playback, as I have to remove that last vestige to get that
system working.
Add a dialog for picking a genre from several choices.
This basically completes multi-genre support in Auxio, save more
internal reworks.
Note that it is extremely likely that the "Play from genre" setting
will be removed soon. This feature has made me realize that such does
not many any real sense, as genres are more semantically similar to
playlists than artists or albums. This implementation only exists to
make multi-artist support an easy plug-and-play operation.
Resolves#201
Add support for compilation + live, compilation + remix,
and compilation + dj-mix release types.
This was not included due to the changes it required to the
parser. Turns out these changes are largely trivial if I do
more clever inlining.
Merge DisplayMode and PlaybackMode into a new class called MusicMode.
Both of these datatypes represented similar things, and thus it's much
easier to make them the same datatype. Moreover, it makes the
forthcoming addition of the music selector much easier if the same
datatype was tied to the representation of music.
This commit also moves around things around the project to be slightly
more coherent.
Refactor all Backend instances into a new package called extractor and
a new structure called "Layer".
Layers are no longer generalized into an interface. Instead, they build
on eachother in order to produce a correct output of raw songs.
One of these layers is a stub class to eventually implement caching.
This changeset also phases out the "Ignore MediaStore tags" setting, as
it is no longer needed.
Add a basic framework for user-customizeable separators.
This is designed to be extendable if needed, albeit the app will likely
only let the user choose between +, ;, /, &, and ,.
Completely rework the ID system to pave the way to MusicBrainz ID
support and greatly increase ID integrity in general.
This changeset removes the old ID field, an emulation of a polynomial
hash that was used in all items, and replaces it with a new type called
UID that is specific to Music. Other types just use plain equals now,
and most instances of "id" to check for equality in the app have either
been inlined into an equals override or removed outright.
The new UID format is as follows:
datatype/format:uuid
Datatype is a tag that is just the lowercase tag name. For example,
"song". Format is the program that created the UID. auxio will be an
md5 hash, and musicbrainz will the a musicbrainz ID extracted from a
file. UUID is the uuid itself.
This is much more reliable and extendable than the old ID format. This
will also be the last time I break compat with old ID formats. From now
on, a legacy UID field will not be included to enable backwards compat,
when the time comes for a breaking change.
Make the playing indicator animate when playback is ongoing.
Previously state issues stopped me from doing this, but apparently this
time I miraculously got it working. Yay.
Resolves#218.
Revert the song menu in the playback panel to being in the toolbar.
It was mostly inconsistent and cause a lot of truncation. I'll figure
out what I want to do when I implement liked songs.
Add a fast scroller to the queue view.
This is actually easy to implement without disruption. Now the detail
view is the only view without such a fast scroller, as it needs more
reworks for it to be feasible.
Make the shape of the play/pause buttons throughout the app morph from
a circle if paused to a square if playing.
Android 13 seemingly does this to their play/pause button, so we copy
it too.
Tangentally related to #162.
Migrate MediaSessionComponent to android 13.
This was primarily implementing custom actions with the media session
and adding some extra bug fixes that I was already planning. I was
really hoping that google fixes the nightmarish mess that was the
previous MediaStyle notification, where I had to update the session
and then the notification in a tight dance with clever tricks to not
get rate-limited, but nope. I still have to do exactly the same thing
as beforehand, but with even extra insanity due to the custom actions.
Auxio tried to leverage built-in android string attributes for Ok and
Cancel while still completing them for other translations that were not
supported by the OS.
Turns out this was a terrible idea when I switched to Weblate, which
has no knowledge of this trick and could lead to a misleading
translation value. Remove it.
Resolves#215.
* Translated using Weblate (Czech)
Currently translated at 100.0% (222 of 222 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 89.6% (199 of 222 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/pt_BR/
* Translated using Weblate (Russian)
Currently translated at 98.6% (219 of 222 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (222 of 222 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
Co-authored-by: Fjuro <fjuro@seznam.cz>
Co-authored-by: Luiz-bro <luiznneto1@gmail.com>
Co-authored-by: Егор Ермаков <eg.ermakov2016@yandex.ru>
Co-authored-by: Eric <alchemillatruth@purelymail.com>
Move all menu functionality from long-click to a menu button.
This is in preparation for #93, as I need to free up the long-click
for a selection option. The spacing isn't really consistent at all,
but that's because I wanted to make something that looks right
depending on the context.
Re-add the song menu option to the title section of the playback view.
This is again, due to the addition of the equalizer button, but also to
make this menu easier to reach.
Replace the song options button in the playback menu with a button that
opens the equalizer.
I plan to re-introduce the song options in another location.
Remove the "Off" ReplayGain setting, as it is mostly meaningless.
Users who don't want ReplayGain can remove the tags from their files.
No efficiency benefits either since the audio processor is always
disabled without replaygain tags. It is better not to confuse users
who do have ReplayGain but wonder why it is not working on their
files because the setting is off.
* Translated using Weblate (Czech)
Currently translated at 100.0% (218 of 218 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (German)
Currently translated at 100.0% (218 of 218 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/de/
* Translated using Weblate (Russian)
Currently translated at 99.0% (216 of 218 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (218 of 218 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Czech)
Currently translated at 100.0% (21 of 21 strings)
Translation: Auxio/Metadata
Translate-URL: https://hosted.weblate.org/projects/auxio/metadata/cs/
* Translated using Weblate (Russian)
Currently translated at 99.0% (217 of 219 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/ru/
* Translated using Weblate (Greek)
Currently translated at 43.8% (96 of 219 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/el/
* Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (219 of 219 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/zh_Hans/
* Translated using Weblate (Spanish)
Currently translated at 99.0% (217 of 219 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/es/
* Translated using Weblate (Greek)
Currently translated at 55.2% (121 of 219 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/el/
* Translated using Weblate (Czech)
Currently translated at 100.0% (219 of 219 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/cs/
* Translated using Weblate (Croatian)
Currently translated at 100.0% (219 of 219 strings)
Translation: Auxio/Strings
Translate-URL: https://hosted.weblate.org/projects/auxio/strings/hr/
Co-authored-by: Fjuro <fjuro@seznam.cz>
Co-authored-by: qwerty287 <ndev@web.de>
Co-authored-by: Егор Ермаков <eg.ermakov2016@yandex.ru>
Co-authored-by: Clyde Johanson <johnson.hu95@gmail.com>
Co-authored-by: lunand <paulefstathiou2009@gmail.com>
Co-authored-by: Eric <alchemillatruth@purelymail.com>
Co-authored-by: Iago <translate@delthia.com>
Co-authored-by: Milo Ivir <mail@milotype.de>
Co-authored-by: Alexander Capehart <oxycblt@abstractr.net>
Add the ability to customize the bar action to the repeat mode or
shuffle state.
This is a much smaller implementation than what I planned, mostly
because other options did not make much sense (queue) or were
superceded by better options (clear state).
Resolves#108.
Update transitions in the home fragment to X-axis.
I noticed a visual issue in the detail transition in the existing
version stemming from how the main fragment's drawing is clipped by
the bottom sheet, resulting in a less-than-ideal Z-axis transition.
While I wanted to fix this by attempting to switch to inset based
bottom sheet management, I still need to wait for more changes in
order to successfully pull that off, and hence I'll be reverting it
soon.
Moving these transitions to X-axis prevents this visual issue while
still being roughly semantically similar.
Add an item type indicator to the top of the detail header.
This is primarily for release type functionality, but also makes it
more clear the item one is looking at.
Fix an accidental usage of Material3 text styles instead of Auxio.
Left-over from the testing app I did for the new bottom sheets. Stuck
around through some means.
Remove EdgeCoordinatorLayout in favor of using fitsSystemWindows when
needed.
EdgeCoordinatorLayout was derived from a misunderstanding about how
window insets worked. Remove it.
Fix lints that have accumulated over time.
Apparently Android Studio just...stopped using lints. For no reason. I
had to upgrade to the beta version to actually get lints.
Leverage min heights for the playback layouts instead of the land
modifier.
This prevents an issue where some split-screen displays won't use the
correct "compact" layout.
Add a split playback UI in landscape mode.
Apparently the mere act of doing this also fixes the infurating
window inset issue I previously did either. Odd.
Make bottom sheets request window insets when they are laid out.
For some insane reason, bottom sheets are just not given window insets
when the device is rotated in the detail view. Appaently requesting them
fixes it all of a sudden.
Remove useless id fields from Headers, replacing them with vlaues
related to their string resource.
String resources and disc numbers are more or less garunteed to be
unique in Auxio's context.
Indicate the currently playing item in the queue list.
The item is still disabled, however it's also simultaniously activated
now, which allows it to indicate that it is playing.