OxygenCobalt
624eb57e7a
ui: fix divider color
...
Divider colors were accidentally messed up when the dark theme was
revamped, fix that.
2021-09-02 06:49:20 -06:00
OxygenCobalt
2d24770ab9
Merge pull request #49 from Fjuro/patch-1
...
Add Czech language
2021-09-01 20:05:36 -06:00
OxygenCobalt
2a695a4977
ui: brighten dark theme
...
Brighten the dark theme somewhat. This is for two reasons:
- To make colorOnSurface stick out less like a sore thumb
- To be more in line with other material apps
- To make the dark theme differ from the black theme more
Black theme remains unchanged, so if one wants a much darker theme,
then they can use that.
2021-09-01 18:48:02 -06:00
Fjuro
143397f571
Add Czech language
2021-09-01 19:53:26 +02:00
OxygenCobalt
acabe9217b
ui: use colorOnSurface
...
Use colorOnSurface for the first time ever. I decided to pick a color
that was as non-intrusive as possible that was still differentiateable,
and I think it looks like a net improvement. It will probably be
tweaked a bit in the future as I expand it to other elevated views.
2021-08-30 20:19:52 -06:00
OxygenCobalt
765f92ca98
ui: improve playback/about UIs
...
Make playback/about UIs follow the new liftOnScroll and edge-to-edge
idioms. This finally allows me to collapse a lot of duplicate code
into MainActivity and in general reduce code mess.
2021-08-30 19:53:19 -06:00
OxygenCobalt
1251af660a
ui: fix liftOnScroll issues entirely
...
Make a hack layout that fixes the problem of the lift state not
actually following the RecyclerView state. This should remove the
need for all the fragile fixes for this UI idiom.
2021-08-30 06:43:18 -06:00
OxygenCobalt
047b885dca
ui: fix landscape problems
...
Once again fix annoying issues that arise from the quirks of phone
landscape mode. A lot of these fixes can be re-rolled back into the
edge-to-edge code eventually, but it requires fitsSystemWindows to
be phased out entirely.
2021-08-29 21:00:17 -06:00
OxygenCobalt
a4d2a8d48c
search: improve ui
...
Improve the search UI by making it edge-to-edge and adding the
liftOnScroll idiom. It does come with the caveat of walking on
eggshells to get the liftOnScroll code working, but its okay. It
may be improved in the future.
2021-08-29 20:20:25 -06:00
OxygenCobalt
e142c17fca
home: make edge-to-edge
...
Make the home fragment span from edge-to-edge. This also adds a nice
effect for the toolbar to fade out when it collapses.
2021-08-29 18:29:58 -06:00
OxygenCobalt
c5b1d7d735
ui: refactor edge-to-edge
...
Merge all edge-to-edge functions into two methods for applying insets.
This generally simplifies code.
2021-08-29 16:20:45 -06:00
OxygenCobalt
1b67f6f846
settings: improve UI
...
Make settings follow both edge-to-edge and the liftOnScroll idioms.
This has some minor issues with state, but these should be fixed when
I'm able to make a smooth transition for theme changes.
2021-08-28 18:12:14 -06:00
OxygenCobalt
34ac629659
strings: use bullets instead of slashes
...
Use bullets instead of slashes when seperating names. This is mostly
for accessibility, as screen readers will handle bullets better than
slashes.
2021-08-28 17:24:06 -06:00
OxygenCobalt
b9658c698b
about: fix link opening not working on android 11
...
Auxio would usually open links by trying to walk through the app
chooser/default app situation themselves, mostly for compat purposes.
This method was not only broken in Android 11 with the addition of
the QUERY_ALL_PACKAGES permission, but it also seems to be made
obsolete since the android system seems to handle the app choser
pretty well in 11+. As a result, we replace the link opening code on
that version with a plain startActivity call and keep the old compat
code for older versions.
Resolves #47 .
2021-08-27 18:28:37 -06:00
OxygenCobalt
37a8cdccb6
playback: fix more queue issues
...
Fix more issues with the queue, such as landscape edge-to-edge not
working correctly and drag scroll events not resulting in the appbar
lifting.
2021-08-25 18:15:09 -06:00
qwerty287
0268700fb4
Re-fix German strings
2021-08-25 16:53:47 +02:00
OxygenCobalt
9ce7dc598d
playback: improve queue ui
...
Make the queue UI follow the liftOnScroll idiom that is already used
in the detail views. This also tweaks the edge-to-edge behavior so
that this view properly works.
2021-08-24 20:04:32 -06:00
OxygenCobalt
9162246b8b
home: fix appbar issues
...
Fix two annoying appbar issues:
- Appbar will collapse if the navigation sequence is too fast
- Tab ripple would paint over the indicator unless the ripple was unbounded [???]
2021-08-23 19:40:21 -06:00
OxygenCobalt
5fe01777d0
all: refactor utils
...
Do the final utility refactor, placing custom views into a .ui
submodule and the general utils into a new .util module. This
system seems to stick well.
2021-08-23 17:05:42 -06:00
OxygenCobalt
9aa2c99be4
playback: add elevation to queue drag
...
Add a nice elevation effect to queue dragging operations. This has no
purpose outside of looking nicer. Luckily it doesn't effect queue
behavior at all.
2021-08-23 06:49:03 -06:00
OxygenCobalt
504e8260ac
home: fix crash when recreating viewpager
...
Fix a crash where all HomeListFragments would lose their displayModes
when the activity was recreated [such as in settings].
2021-08-22 18:14:15 -06:00
OxygenCobalt
19e2fcbb90
search: improve keyboard management
...
Remove the janky requestFocus/clearFocus called on SearchFragment
and replace them with InputMethodManager calls. This is generally
more user friendly, especially when returning to search from
navigation.
2021-08-22 17:59:07 -06:00
OxygenCobalt
6c5a68c929
home: re-add navigation code
...
Re-add support for the navToItem system [this time w/o any navbar
magic] and fix its associated issues.
2021-08-22 16:31:30 -06:00
OxygenCobalt
776776690d
recycler: refactor displaymode usage
...
Remove the SHOW_ALL variant from DisplayMode, replacing it with null
in SearchFragment where it was initially used. This allows all the
home pager fragments to be combined into a single HomeListFragment
that simply chooses a DisplayMode.
2021-08-22 16:09:51 -06:00
OxygenCobalt
27764046f7
home: make elevation static
...
Turns out getting liftOnScroll to play along with a ViewPager is
pretty much impossible. For the sake of my sanity, make the
elevation static.
2021-08-22 13:19:45 -06:00
OxygenCobalt
88a8fc9bde
search: auto-open keyboard
...
Auto-open the keyboard on the search tab when it starts.
2021-08-22 09:29:42 -06:00
OxygenCobalt
49eca55cd7
home: reduce viewpager sensitivity
...
By default, ViewPager2's sensitivity can result in vertical scroll
actions being registered as horizontal scroll actions, which is bad
for UX. Fix that by reflecting into the internal RecyclerView and
changing the touch slope value.
2021-08-22 09:04:54 -06:00
OxygenCobalt
b5c5fabad0
home: re-add grid spans
...
Re-add grid spans to HomeFragment when on landscape mode.
2021-08-22 09:01:30 -06:00
OxygenCobalt
a3e7cb93aa
home: merge all library views into home
...
Merge LibraryFragment, SongsFragment, and others into a new fragment
called HomeFragment. This is the beginning of the Auxio UI overhaul.
This has caused some regressions here and there, but these will be
rectified over time.
2021-08-21 19:49:25 -06:00
OxygenCobalt
e83867270b
playback: fix android 11 notification issue
...
Fix a problem where the colorize notification option would never have
any effect on Android 11 since the system would default to the media
session if there was no icon.
2021-08-21 16:57:14 -06:00
OxygenCobalt
2358be7ba4
Merge pull request #43 from ibrajix/test-branch
...
Fixed notification not displaying on Samsung devices
2021-08-21 16:13:01 -06:00
ibrajix
b78d6dd8db
Fixed the notification not displaying in samsung devices
2021-08-21 20:38:50 +01:00
OxygenCobalt
c9e84d0d39
playback: unify compact views
...
Move the progress bar to the bottom of CompactPlaybackFragment in both
orientations. Doesn't look the nicest right now, but will be when the
new home fragment is created.
2021-08-21 13:27:39 -06:00
OxygenCobalt
f06ca142f6
style: fix accessibility issues
...
Fix a plethora of style issues that lead to a worse touch experience.
I tried to optimize these solutions so that they didn't reduce the layout
density too much. More updates may have to be made in the future.
2021-08-21 12:09:17 -06:00
OxygenCobalt
4c59c37111
style: use material play/pause icons
...
The old play/pause icons that I used to use were really bad and didn't
work right on many display densities. Give up and just use the material
ones.
2021-08-21 09:52:39 -06:00
OxygenCobalt
ad2c02936a
Version 1.4.2
...
Ready for version 1.4.2 of Auxio.
2021-08-21 09:38:30 -06:00
OxygenCobalt
4b438daaf2
widget: re-introduce <31 elevation
...
The pre-Android 12 padding option was removed previously, but I've
decided to re-add it for stylistic cohesion with the material design
of those versions.
2021-08-21 09:26:45 -06:00
OxygenCobalt
0c54fa05b9
accent: fix crash when opening dialog
...
Fix a crash in the accent dialog that would occur because Android
Couldn't decipher the module path to the layout manager. Even though
this worked perfectly fine before moving the module. Why.
2021-08-21 08:43:22 -06:00
OxygenCobalt
21a24f2496
style: improve layout heirarchy
...
Further improve the layout heirarchy, shrinking some items so that
the layout is more compact and scrollable.
2021-08-19 17:40:16 -06:00
OxygenCobalt
1f9d23863f
widgets: remove compact/mini widgets
...
Remove the compact and mini widgets, as there seems to be no real way
for both controls and metadata to be packed into them.
2021-08-17 19:48:00 -06:00
OxygenCobalt
73ec99a214
ui: refactor utilities
...
Move the AndroidUtils file into the root Auxio directory, renaming it
to AuxioUtils as well. This also changes some methods to be extension
methods instead of argument functions.
2021-08-16 20:25:20 -06:00
OxygenCobalt
5788fb8732
style: tweak dimens
...
Tweak some dimens so that they line up with the 8dp grid. This doesn't
apply to all of them since some of them are fined-tuned [such as the
fast-scroller]. The latter would likely be migrated in the later UI
overhaul.
2021-08-16 19:31:00 -06:00
OxygenCobalt
267578d606
database: move databases to feature modules
...
Move all databases to their respective feature modules. This makes
things a bit easier to work with.
2021-08-15 15:49:02 -06:00
OxygenCobalt
c5b1293a90
widgets: add compact/mini forms
...
Add two new widget forms. The compact widget form shows the cover art
[this time with a proper aspect ratio] but no controls. The mini form
only shows the metadata. This seems to work well enough and provides
more choices with how one wants to decorate their homescreen with
Auxio's widgets.
2021-08-15 11:43:22 -06:00
OxygenCobalt
fed6902c21
all: minor improvements
...
Add some minor UI tweaks that accumulated over this week.
2021-08-14 16:31:18 -06:00
OxygenCobalt
a5f65d39a5
loading: improve new ui
...
Improve the loading UI somewhat, reverting the progress bar and
applying some padding to the icon so that it looks a bit better
on Android 12.
2021-08-09 19:42:46 -06:00
OxygenCobalt
fe29e01311
loading: redesign ui
...
Redesign the loading UI to be in line with the rest of Auxio and the
upcoming Android 12 splash screen [sort of]. This also updates the
header and button designs so that the layout heirarchy is better/more
information dense.
2021-08-08 18:16:09 -06:00
OxygenCobalt
97459fdcca
widgets: improve preview
...
Use a 5x5 instead of a 4x5 preview for the widget so that it lines up
better with most default launcher configurations.
2021-08-08 15:09:28 -06:00
OxygenCobalt
4cc433f7ef
style: fix style issues
...
Fix some style issues that came from the colorAccent reworks.
2021-08-08 14:05:44 -06:00
OxygenCobalt
2f0df83cb2
style: customize v31 splash screen
...
Remove the icon background from the Android 12 splash screen, making it
alot more cleaner than it was before.
2021-08-07 20:10:33 -06:00
OxygenCobalt
64c9a4a4a7
all: add license boilerplate
...
Actually bother to add license boilerplate. Even though I've written
the entirety of Auxio, the boilerplate will be under "Auxio Project"
instead, as I don't want to share my real name.
2021-08-07 17:00:28 -06:00
OxygenCobalt
3a01a13b9d
widgets: fix layout issues
...
Fix an issue in the responsive layout backport where padding was not
factored into the calculations. This was the original issue that I
thought I fixed in e81d4b6d
, but this fix seems to work alot better
from the launchers I tested [Trebuchet/Launcher3, Lawnchair].
2021-08-06 19:02:57 -06:00
OxygenCobalt
a566a30c15
style: use colorAccent
...
Use colorAccent instead of colorPrimary and colorSecondary.
2021-08-06 17:47:11 -06:00
OxygenCobalt
1d828c7b0a
md: add widget module to ARCHITECTURE
...
Add documentation on the widget module to ARCHITECTURE.md.
2021-08-06 12:12:21 -06:00
OxygenCobalt
e81d4b6d17
widgets: fix responsiveness issues
...
Fix some problems with the Pre-12 widget responsiveness backport, most
notably the wrong layout being chosen on more dense launcher grids.
Also change the default widget size from 2x2 to 3x2 so that it's more
readable.
2021-08-06 11:45:13 -06:00
OxygenCobalt
1b5822eae0
chore: upgrade deps
...
Update dependencies again:
activity -> 1.3.1
constraintlayout -> 2.1.0
media -> 1.4.1
2021-08-06 09:41:31 -06:00
OxygenCobalt
828ab3ccee
styles: refactor styles
...
Refactor styles again, this time trying to seperate the more
layout-specific attributes so that layouts become more re-usable.
This also updates the naming conventions of styles.
2021-08-06 09:36:56 -06:00
OxygenCobalt
b51ec756de
widgets: simplify layouts
...
Simplify the layouts used by widgets, moving the more version-specific
attributes into settings.
2021-08-05 17:00:59 -06:00
OxygenCobalt
8c07f8cd8c
widgets: add preview for <31
...
Add an image widget preview for android versions below 12.
2021-08-05 16:09:27 -06:00
OxygenCobalt
b4d9a197af
widgets: port responsiveness back to <31
...
Post widget responsive behavior back to Android 11 and below. This is
not the nicest solution [mostly since the UI flickers when resizing],
but it seems to work well enough.
2021-08-05 15:22:22 -06:00
OxygenCobalt
6f8f333b72
widgets: make widget responsive
...
The plans for widgets have changed somewhat. Instead of 4 or so
variants, there will instead be one unified widget that chooses
different layouts depending on its size. The first one added is the
full widget, which shows more controls as long as theres enough
space.
2021-08-05 10:22:41 -06:00
OxygenCobalt
5d7d86b17e
widgets: respond to settings changes
...
Make it so that widgets respond to settings changes, such as
cover configuration.
2021-08-03 12:22:46 -06:00
OxygenCobalt
2abc91674b
playback: simplify playbacknotification
...
Simplify the PlaybackNotification code to not have to pass Context for
an argument when it could simply be a private variable. This is okay,
as PlaybackNotification only lives as long as PlaybackService does.
2021-08-03 10:50:09 -06:00
OxygenCobalt
49db7e0741
widgets: add widget layout preview
...
Add a layout preview to the Android 12 widget metadata. I'm holding off
on implementing a drawable until the widgets are completely finalized.
2021-08-03 10:33:07 -06:00
OxygenCobalt
8551e90884
all: cleanup code
...
Cleanup unused resources and fix some code issues here and there.
2021-08-03 09:39:14 -06:00
OxygenCobalt
d3e738b973
widgets: add controls to minimal widget
...
Backtrack and add controls to the minimal widget, mostly for usability.
2021-08-03 09:05:20 -06:00
OxygenCobalt
8673995630
widgets: backport to <v31
...
Modify the minimal wdiget so that it can work on Android 11 and below.
Was not actually that hard, mostly changing layouts around all things
considered. This also splits up the default view and the main widget
views, which makes managing UI state much easier.
2021-08-02 08:57:35 -06:00
OxygenCobalt
ffebbc2839
playback: fix notification launch issue
...
Fix an accidental regression where PendingIntent.getBroadcast was
called for activities, causing the notification launch intent not
to work.
2021-08-01 19:24:08 -06:00
OxygenCobalt
d50d2f0b1e
ui: fix binding issues
...
Use viewLifecycleOwner for all fragments that rely on databinding. This
should solve some possible memory leaks, as viewLifecycleOwner is tied
to the lifecycle of the fragment views instead of the fragments them
selves.
2021-08-01 17:59:12 -06:00
OxygenCobalt
66be3da7e3
widgets: add minimal widget [ #8 ]
...
Add the first widget implementation, the minimal widget. This took a
good 2 days of hacking and frustration to get the first prototype
working. And even then, its currently scoped to android 12 until I'm
able to port them. The implementation is still quite rough, but should
become manageable over time. More widgets will come.
2021-08-01 17:32:38 -06:00
OxygenCobalt
58bea1dda5
sort: fix sort bug with same-year album songs
...
Fix a problem where given two albums with the same year, like this:
Album 1 [2018]
- Song 1
- Song 2
Album 2 [2018]
- Song 3
- Song 4
getSortedArtistSongs would incorrectly drop songs that came from
any albums that came after Album 1, resulting in this:
Song 1 [Album 1]
Song 2 [Album 1]
This was caused by a quirk in toSortedMap that would drop any
map entries that corresponded to a previous sorted entry. We now
get and sort the entries directly instead, which fixes the issue.
2021-07-30 19:59:18 -06:00
OxygenCobalt
1a0ff53d67
about: prevent ui from being clipped in landscape
...
Fix an accidental regression in the about UI that caused it to be cut
off it landscape. It will now scroll.
2021-07-29 17:06:30 -06:00
OxygenCobalt
6d9c9f65c2
recycler: improve fast-scroller truncation
...
Make fast-scroller truncation more aggressive, mostly because on my new
ROM it seems like display calculations become a little wonky and cause
slight indicator cutoff. May as well add padding then so that
indicators [and the thumb by extension] actually fit and won't get
clipped.
2021-07-29 11:31:21 -06:00
OxygenCobalt
ec4ca16658
app: upgrade to android 12
...
Add preliminary compat for android 12 [API 31]. More changes may be
needed as time goes on, but its close enough to platform stability
to the point where its needed.
2021-07-29 10:49:18 -06:00
OxygenCobalt
9d04799345
prefs: make black theme default to off
...
The black theme's defaultValue attribute was set to true accidentally.
Fix that.
2021-07-29 09:56:26 -06:00
OxygenCobalt
cf67612042
chore: upgrade deps
...
Gradle -> 7.0.2
Android -> 7.0.0
Coil -> 1.3.0
Activity -> 1.3.0
Kotlin -> 1.5.21
2021-07-29 09:43:28 -06:00
qwerty287
44570309ad
Fix German translations
2021-07-23 08:52:06 +02:00
OxygenCobalt
2e278aef8a
behavior: add option to pause when a song repeats
...
Add a new option to pause playback whenever a song loops [e.g while in
LoopMode.TRACK]. This does mean that we can no longer use exoplayer's
native looping system, but it doesn't seem to be that much of an issue.
Resolves #29 .
2021-07-22 17:00:51 -06:00
OxygenCobalt
33332dbf6b
chore: upgrade deps
...
androidx activity -> 1.2.4
androidx fragment -> 1.3.5
androidx media -> 1.4.0
exoplayer -> 2.14.2
coil -> 1.3.0
2021-07-22 13:38:18 -06:00
OxygenCobalt
85081c385f
chore: upgrade dependencies
...
Yet another dependency upgrade churn:
Android Plugin -> 4.2.2
Material -> 1.4.0
Androidx Core -> 1.6.0
Apparently material deprecated a bunch of BottomNavigationView's stuff
for no good reason. Okay.
2021-07-12 10:43:05 -06:00
OxygenCobalt
b88628f558
strings: reformat spanish translations
...
Reformat the new spanish [es] translations to line up with the rest of
the translation files.
2021-07-07 13:10:55 -06:00
Tesphil
60aafc6e4c
Updated Spanish strings.
...
I just... Updated the Spanish strings, I don't know if I did it right, it's my first time.
2021-07-05 20:26:20 -06:00
OxygenCobalt
fef5e4d9f9
style: improve black theme colors
...
Improve the black theme selection color by merging it with the dark
theme selection coler. This makes the selection color both more
noticable and reduces the style complexity that came from having to
manage two different selection colors.
2021-07-02 08:56:03 -06:00
OxygenCobalt
f1f2fcf41d
meta: remove access_network_state perm [ #22 ]
...
ExoPlayer's online functionality will cause the library to request the
ACCESS_NETWORK_STATE permission. We don't need this since we use
ExoPlayer for local playback only. For simplicity [and to remove a
weird suspicious permission, we just disable it]
2021-07-02 08:32:38 -06:00
OxygenCobalt
7b5e817d3b
all: cleanup code
...
Cleanup the codebase in general:
- Remove useless resources
- Upgrade kotlin to 1.5.2
- Upgrade coil to 1.2.2
2021-06-26 19:53:57 -06:00
OxygenCobalt
d82952d88d
md: update project information
...
Update the README to update the current state of Auxio, uodate the
ADDITIONS document to reflect which features have been rejected,
and remove the black mode question from the FAQ.
2021-06-23 09:37:33 -06:00
OxygenCobalt
e25c91b49c
library: remove default sort option
...
Remove the default [a.k.a SortMode.NONE] option from the library view.
It was effectively useless in every single library mode and was
functionally equivelent to SortMode.ALPHA_DOWN. Other SortModes might
come to take it's place, but likely only for albums.
2021-06-19 10:10:28 -06:00
OxygenCobalt
5131db5383
library: add fast-scroller
...
Add a fast-scroller to the library view. This makes long lists of
items such as albums easier to scroll through, but also requires
pre-sorting of artists to make sure that unintended behavior does
not occur. A future commit may improve the sort options here so that
this does not need to occur.
2021-06-19 10:03:35 -06:00
OxygenCobalt
7adfb921fa
recycler: make fast scroller respond to changes
...
Make the fast scroller respond to changes in the RecyclerView data.
This again prepares it for use in the library with it's sorting and
item configuration.
2021-06-18 15:19:15 -06:00
OxygenCobalt
aebe279e95
about: re-add tagline to the about screen
...
Re-add the app tagline to the about screen. At some point during the
redesign it was lost.
2021-06-18 15:09:47 -06:00
OxygenCobalt
2f29950725
recycler: use article sort everywhere
...
Use the native MediaStore sort of using the characters after an article
[if present] everywhere when sorting is done. Yes, this is still dumb
and non-local, but if I want to add fast-scrolling to the library view
I will have to keep consistency across each sort.
2021-06-18 14:55:01 -06:00
OxygenCobalt
5dc7b52fc3
style: add dialog black theme support
...
Make dialogs properly follow the black theme. This should complete the
black theme addition as now all parts of Auxio follow the new theme.
2021-06-11 13:54:54 -06:00
OxygenCobalt
381c0f0944
style: add popupmenu black theme support
...
Tack on some more themes to make popupmenu styles follow the new black
theme introduced in 68bdd0.
2021-06-11 13:33:16 -06:00
OxygenCobalt
68bdd0d929
style: add basic black theme
...
Finally add black theme support to Auxio. This is abit of a janky
implementation since I had to add an extra set of accents, but it
shouldn't be as big of a problem after the styles refactoring.
Support for black android components is not implemented yet, but
will be eventually.
2021-06-11 09:13:20 -06:00
OxygenCobalt
dc2157904a
styles: refactor styles
...
Completely refactor styles once again to improve resource sharing and
styling maintainability.
2021-06-11 08:13:52 -06:00
OxygenCobalt
9d39a2aaeb
songs: fix fast-scroll indicator bug
...
Fix an issue with fast-scroll indicator creation where titles that
began with "An" would not use the second word at the proper sort title.
2021-06-10 09:13:34 -06:00
OxygenCobalt
8eb301f983
ui: use new artist icon
...
Choose a new default artist icon that looks more functional and lines
up with the rest of the icons.
2021-06-05 14:52:01 -06:00
OxygenCobalt
c54790e24c
about: redesign ui
...
Completely redesign the about UI to remove its dependency on
bottomsheetdialogfragment. That object is such a hassle to deal with an
is the epitome of everything wrong with this horrible platform. This
design will enable further about extensions in the future.
2021-06-05 14:40:50 -06:00
OxygenCobalt
9aabfe2294
playback: make mediasession rely on exoplayer
...
Make PlaybackSessionConnector also take events from ExoPlayer as it
used to with MediaSessionConnector. This improves reliability
somewhat at the cost of making the code even more hideous.
2021-06-03 09:28:47 -06:00
OxygenCobalt
58eee7a891
playback: improve mediasession reliability
...
Fix some issues with PlaybackSessionConnector that resulted in the
position being stuck when a new song was played, alongside simplifying
the connector code to an extent.
2021-06-01 10:44:37 -06:00
OxygenCobalt
ab28fb6323
playback: add event handling to mediasession
...
Add event handling to the MediaSession. This completes the new
PlaybackSessionConnector class and possibly addresses the issue raised
in #20 .
2021-06-01 10:16:30 -06:00
OxygenCobalt
1ddff8c6d3
playback: create custom mediasession connector
...
Create a custom session connector that connects between
PlaybackStateManager and MediaSession. The previous session connector
that was part of the exoplayer library turned out to cause bugs that
could cause the covert art not to show on the lock screen and to not
be recognized as proper player controls. This new connector
[once complete] should fix these issues.
2021-05-30 16:42:45 -06:00
OxygenCobalt
cd930554bf
deps: update androidx/kotlin
...
Upgrade deps chore:
core -> 1.5.0
fragment -> 1.3.4
kotlin -> 1.5.10
2021-05-30 16:42:13 -06:00
OxygenCobalt
804c38d7ce
style: Use colorSurface everywhere
...
Instead of using @color/background directly, use ?attr/colorSurface
so that changes can be made to the theming easier. This also
resolves some more minor issues regarding certain widget's
backgrounds.
2021-05-24 19:33:54 -06:00
OxygenCobalt
9974bd32eb
style: Use colorControlHighlight everywhere
...
Change most of the external layout/drawable code to use
colorControlHighlight instead of selection_color so that control
over which kind of selection color is used is more fine-grained.
2021-05-24 18:07:02 -06:00
OxygenCobalt
55dfc681ad
Upgrade dependencies
...
Routine dependency upgrade chore:
Android Gradle Plugin -> 4.2.1
ExoPlayer -> 2.14.0
2021-05-17 18:39:03 -06:00
OxygenCobalt
373c54e28c
Add elevation to play/pause button
...
Add some elevation to the play/pause button for visual flair.
2021-05-17 18:34:29 -06:00
OxygenCobalt
1b91930621
Update key/action constant formatting
...
Use a more consistent APP_ID + .action/.key + NAME structure for key and action constants.
2021-05-10 16:46:17 -06:00
OxygenCobalt
ec3e388071
Version 1.4.0
...
Ready for version 1.4.0 of Auxio.
2021-05-09 14:41:42 -06:00
OxygenCobalt
3e86c96989
Update screenshots
...
Remove superfluous screenshots that don't add much to the app.
2021-05-08 08:50:23 -06:00
OxygenCobalt
0ba1048ead
Fix problems from plugin update
...
Remove the fixAnimInfoLeak hack since it seems that issue was fixed in the new android plugin, and once again modify with the styles to get the dialogs to use the correct style again.
Another day another magic flag I need to fiddle with to get this busted android app working. This platform sucks so much.
2021-05-08 08:38:09 -06:00
OxygenCobalt
7c457d5773
Update dependencies
...
Update kotlin to 1.5.0 and the android gradle plugin to 4.2.0.
2021-05-05 20:11:48 -06:00
OxygenCobalt
a849d00248
Cleanup code
...
Clean up the formatting/structure of the codebase.
2021-05-02 18:49:16 -06:00
OxygenCobalt
35591c42c7
Merge pull request #14 from timnea/dev
...
Dutch Translate v2.0
2021-05-02 18:13:30 -06:00
OxygenCobalt
0daca207b0
Fix bug with playing item highlighting
...
Fix a problem where the wrong playing item would be highlighted if the names of the items were identical.
2021-05-02 18:08:39 -06:00
timnea
e29874d105
Dutch Translate v2.0
...
Updated the dutch translation of the latest app version.
2021-05-01 14:21:50 +02:00
OxygenCobalt
73949a29df
Update auxio icon
...
Update the auxio icon to be cleaner, make the debug icon more noticable compared to the mainline icon, and move all v26+ adaptive icons to drawable-anydpi-v26, as that is only where they are needed.
2021-04-29 06:45:27 -06:00
OxygenCobalt
e7d36311dd
Upgrade detail sorting
...
Upgrade the detail sorting system to:
- Persist beyond the app lifecycle [as other sort modes do]
- Be used when creating a queue for a genre/artist/album
2021-04-28 18:34:35 -06:00
OxygenCobalt
dcd5b3235c
Update header text style
...
Update the style of the header text further to be cleaner and to fix issues where the name would not be properly centered on smaller fonts.
2021-04-27 19:12:07 -06:00
OxygenCobalt
c5c16dfdce
Add duration to artist songs
...
Add a duration TextView to the artist song item.
2021-04-27 06:13:14 -06:00
OxygenCobalt
e63122ce3e
Cleanup artist songs implementation
...
Clean up the artist song code to not rely so heavily on a hacky ActionHeader implementation and instead just use it's own viewholder.
2021-04-26 17:22:01 -06:00
OxygenCobalt
b9506bcbc3
Add artist songs list
...
Add a list of artist songs to ArtistDetailFragment. This moves the artist sort functionality to the song list instead of the album list.
2021-04-26 16:54:49 -06:00
OxygenCobalt
cc72ebc251
Update action header structure
...
Create a seperate ActionHeader object for headers with actions attached alongside a new viewholder to accompany it.
This allows action headers to be created easier without creating your own viewholder.
2021-04-25 17:15:20 -06:00
OxygenCobalt
029a4b1ff6
Refactor margin/padding
...
Do two things to the margin and padding system:
- Remove the redundant padding/margin dimens and replace it with a unified "spacing" dimen namespace
- Make most margin and padding dimens follow the divisible-by-8 rule in material design
2021-04-25 14:59:21 -06:00
OxygenCobalt
39f26b4feb
Update dark mode grey accent
...
Update the grey accent on dark mode to improve visibility.
2021-04-25 14:28:28 -06:00
OxygenCobalt
64d4b90870
Fix tooltip display bug
...
Fix a problem where tooltips in dialogs would have a non-transparent background.
2021-04-16 20:06:57 -06:00
OxygenCobalt
2d4ddc0460
Upgrade gradle to 7.0
...
Update the gradle version to 7.0, because I can.
2021-04-16 19:59:34 -06:00
OxygenCobalt
90de930377
Fix queue update issue
...
Fix a bug where the queue would not be updated when the queue looped around to the beginning.
2021-04-14 14:30:32 -06:00
OxygenCobalt
732b89a0b1
Update dependencies
...
Update multiple dependencies to newer versions:
RecyclerView 1.2.0 -> 1.3.0
Coil 1.1.1 -> 1.2.0
Media 1.2.1 -> 1.3.0
Navigation 2.3.4 -> 2.3.5
ExoPlayer 2.13.2 -> 2.13.3
This commit also removes all dependence on JCenter. Woohoo.
2021-04-14 11:48:05 -06:00
OxygenCobalt
17e5aed131
Move playback state system to hashes
...
Use unique-ish hashes in the playback state system instead of the less efficent and less reliable string system.
This cuts save times in ~half and improves restore times by ~1/3.
Yeah, this is like the 4th time I've changed this system but unless I have some major loader refactor I
think this wont change again.
2021-04-14 11:14:17 -06:00
OxygenCobalt
969f25176a
Update browser opening code
...
Make the browser opening code actually use the app picker and target browsers specifically.
2021-04-04 12:00:27 -06:00
OxygenCobalt
887868ff9c
Remove custom title UIs from dialogs
...
Replace the custom title TextViews in AccentDialog/BlacklistDialog with the built-in title text.
2021-04-04 09:46:58 -06:00
OxygenCobalt
03aa2d4579
Migrate to material theming
...
Finally move the app from AppCompat the Material Bridge theme. This does a couple things:
- Removes need for runtime styling of material widgets used before
- Allows for a better dialog style [But only after a ton of tinkering and weird hacks]
- Makes theming slightly easier [After all the dumb migration bugs and technicalities are fixed]
I never want to do something like this again. UI styling on android is a nightmare.
2021-04-04 09:20:56 -06:00
OxygenCobalt
f2445e56f2
Update loop behavior [ Resolves #13 ]
...
Change the loop behavior to something that is actually sensible,
with [ ] looping the whole playlist and [ 1 ] looping the song.
This also removes the "Do on end" setting. A new stop option may
be reintroduced, however.
This resolves issue #13 .
2021-04-03 14:56:50 -06:00
OxygenCobalt
2b047f0d2c
Cleanup settings code
...
Do some post-setting refactor cleanup:
- Make some extension functions for SettingsManager for convienence
- Remove dead code from before the int migration
- Update semantics here and there
2021-04-03 11:43:23 -06:00
OxygenCobalt
eb56068f80
Fix database issues
...
Fix some problems where PlaybackStateDatabase wouldn't downgrade [Problem when hopping between dev builds with db changes] and with assertBackgroundThread being public.
2021-04-03 11:08:27 -06:00
OxygenCobalt
0305eb0beb
Standardize settings entirely
...
Update the structure of the settings system to do several things:
- Finally use int preferences everywhere instead of the mix of strings & ints from before
- Create a new preference named `IntListPreference` that enables the use of integers in list preferences
- Actually centralize array values and default values into a single integers xml
- Isolate all the new migration code into a single file
- Refreshed the int tables used by data objects [DB version has been updated, will not update when other changes]
The only preference not migrated is doAtEnd since that is being planned to be retired in a future LoopMode update.
2021-04-03 10:53:16 -06:00
OxygenCobalt
355b3885e3
Use androidx transaction in databases
...
Replace the redundant SQLiteDatabase.execute() extension with the AndroidX SQLiteDatabase.transaction() extension, which does the same thing.
2021-03-29 06:41:36 -06:00
OxygenCobalt
4d92df7896
Heavily improve dialogs
...
Both improve and use dialogs
- The AlertDialog style now properly colors dialogs with the primary coler
- The accent & blacklist dialogs are now based on AlertDialog for their buttons, reducing layout complexity
2021-03-28 18:47:53 -06:00
OxygenCobalt
53ec1aa8a5
Improve dialog layouts
...
Improve the dialog layouts so that only the recyclerview scrolls when it cannot fit instead of the entire layout being forced to scroll.
2021-03-26 15:24:04 -06:00
OxygenCobalt
076d2b3d7e
Update build configuration
...
Update the build config to further optimize the app
- Removed the browser dependency [-10k]
- Enabled resource minification [-100k]
2021-03-26 10:54:21 -06:00
OxygenCobalt
b65814fdbd
Redo blacklist dialog
...
Completely refactor the blacklist dialog to not only use the Storage Access Framework, but also to completely eliminate the material dialogs dependency.
2021-03-26 09:54:48 -06:00
OxygenCobalt
ac1e686704
Update accent dialog
...
Completely redo the accent dialog to remove its dependence on MaterialDialogs and also to make it more ergonomic.
2021-03-25 19:21:05 -06:00
OxygenCobalt
194bcfcd05
Fix more fast-scroll issues
...
Fix two more fast scrolling issues:
- Fixed size of the view would cut off larger fonts
- Thumb would briefly show when the view would initially start
This custom view was a mistake, but anything for less kbs.
2021-03-25 09:24:40 -06:00
OxygenCobalt
6d5ed6dd7b
Update fast scroll behavior
...
Update the behavior of the fast scroller so that the scroll only begins when the pointer is in the indicator box itself, instead of the general view.
2021-03-24 08:47:14 -06:00
OxygenCobalt
54efad3fdf
Fix crash with fast scroller
...
Fix an issue where the app would crash if the fast scroller is scrolled above the indicators. This change will be backported to 1.3.3.
2021-03-23 20:20:22 -06:00
OxygenCobalt
ec78684c25
Version 1.3.3
...
Ready for version 1.3.3 of Auxio.
2021-03-23 20:01:18 -06:00
OxygenCobalt
d0280fffb2
Fix crash on PlaybackService destruction
...
Fix a destructive crash when PlaybackService attempted to release a wakelock that wasn't being held.
2021-03-23 19:21:44 -06:00
OxygenCobalt
688f9d3a52
Fix fast-scroll bugs
...
Fix some behavior issues with the new fast scroll view.
2021-03-23 17:06:06 -06:00
OxygenCobalt
0a18108419
Unify fast-scroller
...
Completely unify the fast scroll indicators and the fast scroll thumb into a single view.
2021-03-23 14:35:32 -06:00
OxygenCobalt
cc3d4fb9c6
Explitly declare dependencies
...
Explicitly declare some dependencies that were originally implicit, resolving some future build issues.
2021-03-23 10:12:24 -06:00
OxygenCobalt
ffd3275ca5
Resolve fast-scroll resource issues
...
Accidentally forgot to move the resources from the fast scroll library, so here it is.
2021-03-22 16:17:16 -06:00
OxygenCobalt
02fed16c31
Roll custom fast scroller
...
Drop the old IndicatorFastScroll library from Auxio and replace it with a hyper-specialized variant designed specifically for Auxio.
This not only eliminates a source of hacks/problems/bloat, it also removes a dependency on jcenter (Which is shutting down soon)
2021-03-22 16:00:12 -06:00
OxygenCobalt
3484b8a0bf
Update markdown
...
Update markdown in preperation for 1.3.2
2021-03-22 09:41:09 -06:00
OxygenCobalt
f1c40d2539
Add wakelock
...
Actually add a wakelock to the music load process to prevent it from stopping the CPU mid-load.
2021-03-21 11:12:48 -06:00
OxygenCobalt
ba79ac0001
Cleanup code
...
Do some code cleanup.
2021-03-21 09:56:20 -06:00
OxygenCobalt
824ac56bfa
Update libraries
...
Update libs to new versions, including the nav framework from 1.0.0 -> 2.3.4.
2021-03-20 19:54:41 -06:00
OxygenCobalt
66685350cb
Update blacklist strings
...
Update the strings related to the blacklist functionality, also adding german translations.
2021-03-20 17:22:36 -06:00
OxygenCobalt
72a7aa6744
Fix song restore issue
...
Fix an issue where the playback restore process would only search the list of songs for the currently playing song, running the risk of picking the wrong song with the same name.
2021-03-20 16:14:36 -06:00
OxygenCobalt
a55b42a3da
Fix blacklist dialog bug
...
Fix a problem where the blacklist dialog wouldn't properly detect when there were no changes made to the list of paths.
2021-03-20 16:12:06 -06:00
OxygenCobalt
68887ffb64
Add blacklist restart functionality
...
When the user selects the "Save" button in the blacklist dialog, the app will now restart to reload the music library with the new directories.
2021-03-15 15:55:52 -06:00
OxygenCobalt
787212ee59
Minor improvements
...
Fix some more blacklist UI issues alongside some problems with formatting/audio focus.
2021-03-14 09:33:15 -06:00
OxygenCobalt
632e39f2e2
Update blacklist UI
...
Update new functionality/streamline the blacklist UI.
2021-03-13 19:47:36 -07:00
OxygenCobalt
aa0c978a65
Add blacklist UI
...
Add a UI for the blacklist functionality.
2021-03-13 17:07:42 -07:00
OxygenCobalt
9d83619811
Unify system service calls
...
Unify the calls to getSystemService to a custom function that uses the ContextCompat getSystemService instead of the clunky vanilla getSystemService code.
2021-03-13 10:50:39 -07:00
OxygenCobalt
2f5a6984d9
Possibly fix AudioFocus bug
...
(Maybe) fix an issue where AudioFocus might cause the playback to start again after being paused by the user, possibly caused by a audiofocus loss being labeled transient even if it wasnt.
2021-03-13 10:32:47 -07:00
OxygenCobalt
31672fca40
Change inter-black to inter-exbold
...
Reduce the weight of the header text [a.k.a toolbar text] so that they generally look better.
2021-03-11 20:20:44 -07:00
OxygenCobalt
9a02eadc95
Refactor database code
...
Simplify and refactor alot of the database code, along with extracting some pieces of code into actual utilities.
2021-03-09 10:14:47 -07:00
OxygenCobalt
72877f77ee
Fix parent restore bug
...
Fix a bug where PlaybackStateManager would try to restore the parent from a full list of items, which raises the possibility for the incorrect parent to be chosen.
2021-03-09 09:04:48 -07:00
OxygenCobalt
5d72bfa09b
Move accent dialog to object
...
Move the dialog created in showAccentDialog to a dedicated object.
2021-03-09 08:01:49 -07:00
OxygenCobalt
f5f67a0b76
Add blacklist functionality
...
Add the ability to block directories from indexing. Will add a UI interface for this later.
2021-03-07 11:56:20 -07:00
OxygenCobalt
8de09cd880
Update PlaybackStateDatabase
...
Update PlaybackStateDatabase to use a new filename and the TEXT type whenever storing strings.
2021-03-07 11:18:36 -07:00
OxygenCobalt
a750100aff
Fix queue edge-to-edge issue
...
Fix a problem where the last queue item would display behind the navigation bar when edge to edge is on.
2021-03-07 08:26:15 -07:00
OxygenCobalt
391ca70822
Update playback system
...
Tweak some things in PlaybackService and PlaybackStateManager to make them more elegant.
2021-03-05 14:58:30 -07:00
OxygenCobalt
466629e43d
Update music loading init process
...
Change the loading process so that LoadingViewModel no longer requires an application instance to start. Also move the main music loading code to an internal function.
2021-03-05 13:45:43 -07:00
OxygenCobalt
2c93e3f362
Update code style
...
Heavily tweak the code style across the app, doing things such as fixing returns and giving names to lambda values.
2021-03-05 12:56:04 -07:00
OxygenCobalt
fab377eba4
Improve genre compatibility
...
Add a new range of Winamp 5.6+ genres to further improve compatibility with old genres.
2021-03-05 11:20:22 -07:00
OxygenCobalt
58ec1ce293
Improve mosaic quality
...
Change the mosaic bitmap config to ARGB_8888, which greatly improves quality.
2021-03-05 10:11:53 -07:00
OxygenCobalt
a4dc35c50d
Update music loading system
...
Do some simplification and optimizations to the music loading system in preperation for the blacklisting system.
2021-03-03 19:46:34 -07:00
OxygenCobalt
c9f86436c8
Fix scroll thumb visibility issue
...
Fix a problem where the scroll thumb would briefly show up when SongsFragment is first shown.
2021-03-03 16:02:45 -07:00
OxygenCobalt
fefe2d244d
Add tooltips to accent picker
...
Add tooltips to the accent picker that align with the content description.
2021-03-01 19:24:37 -07:00
OxygenCobalt
3f0331f1c9
Redo accents
...
Collapse amber and yellow into a single accent [Yellow], remove the neutral accent due to UI isuses, and darken light-mode accents across the board to be more visible.
2021-02-28 16:07:46 -07:00
OxygenCobalt
abd5b3ca8d
Remove NoLeakThumbView
...
Remove the old NoLeakThumbView class, apparently I didnt remove it before?
2021-02-28 15:01:38 -07:00
OxygenCobalt
917540e626
Refactor fast scroll
...
Completely write my own fast scroller thumb and also redo how the fast scroller is configured in SongsFragment.
2021-02-27 13:00:46 -07:00
OxygenCobalt
a9765d2ad6
Remove debug statement
...
Remove a frustrated logD call I made sometime last night. Why do I keep doing this.
2021-02-26 07:42:51 -07:00
OxygenCobalt
891d64b459
Fix service startup bug
...
Fix a problem where if playback was started by a file intent the ExoPlayer instance wouldn't actually begin playing.
2021-02-25 19:08:45 -07:00
OxygenCobalt
af9fac7de2
Fix play/pause bug
...
Possibly fix a bug where the play/pause button would get stuck in the play position when playing from a file intent.
2021-02-25 17:55:20 -07:00
OxygenCobalt
e9abee9f64
Update documentation
...
Completely update the documentation throughout the app.
2021-02-25 11:36:47 -07:00
OxygenCobalt
b9720286c3
Move play/pause animation code
...
Move the code responsible for the play/pause animation to the onCreateView function instead of onResume.
2021-02-23 15:16:15 -07:00
OxygenCobalt
7f0042fd2f
Refactor file intent system
...
Finally find a way to handle file intents without having to coordinate it across three different fragments in onResume.
2021-02-23 14:04:45 -07:00
OxygenCobalt
f04ffdb59b
Update codebase
...
Do a variety of small things across the codebase.
2021-02-23 13:22:09 -07:00
OxygenCobalt
8c107d66a0
Stop RecyclerView momentum on fast scroll
...
Prevent any unnessecary scrolling when using the fast scroll bar in SongsFragment.
2021-02-21 15:14:55 -07:00
OxygenCobalt
299c47e9c3
Scroll QueueFragment on shuffle toggle
...
Scroll QueueFragment to the top when shuffle is toggled so that it does not flip out as much as it would otherwise.
2021-02-21 15:03:17 -07:00
OxygenCobalt
5de45eea0e
Version 1.3.1
...
Ready for version 1.3.1 of Auxio.
2021-02-21 08:19:05 -07:00
OxygenCobalt
044f74b45b
Fix file intent crash
...
Keep tweaking this buggy system to fix another bug I caused where the app would crash if selecting a song while the app was inactive.
2021-02-20 21:29:20 -07:00
OxygenCobalt
89174b8011
Clean code
...
Do some codebase cleaning.
2021-02-20 16:35:36 -07:00
OxygenCobalt
4efbab8b05
Change file intent navigation structure
...
When a file intent is given, navigate to PlaybackFragment directly.
2021-02-20 13:47:06 -07:00
OxygenCobalt
cca80c65eb
Improve music loading system
...
Heavily improve the music loading system, hopefully fixing some edge-cases that people have been reporting.
2021-02-20 11:56:31 -07:00
OxygenCobalt
00e7af8f3d
Fix another file intent bug
...
Fix another bug where PlaybackService wouldn't show its notification/go into foreground if a song was played by a file intent.
2021-02-20 10:05:20 -07:00
OxygenCobalt
cc14648099
Fix file intent issue
...
Fix a problem where the file intent wouldnt work on any fragment that wasnt MainFragment.
2021-02-20 09:46:29 -07:00
OxygenCobalt
7a4b654222
Clean up PlaybackService
...
Clean up the code in PlaybackService.
2021-02-19 19:25:03 -07:00
OxygenCobalt
7524589969
Unify notification
...
Unify the notification extensions into a single PlaybackNotification object that does not rely on PlaybackStateManager and SettingsManager.
2021-02-19 15:54:58 -07:00
OxygenCobalt
ca4cabedbc
Change file intent to play
...
Change the file intent to play instead of view. I may add the view option back in at some point however if the play functionality angers me enough.
2021-02-19 14:47:00 -07:00
OxygenCobalt
2dfd916736
Add file intent
...
Add the ability to view a music file in auxio when selecting the file from another app. The ability to play it will be added later.
2021-02-19 14:22:58 -07:00
OxygenCobalt
e631ddd730
Make save playback state setting public
...
Make the ability to force-save the playback state public in the settings menu instead of in the debug menu.
2021-02-19 11:19:45 -07:00
OxygenCobalt
0a7fbeca6d
Fix music load failure [ Resolves #4 ]
...
Remove the `check` statements from `applyAlbum` and `applyGenre` that could cause the music loading to fail on some devices. Now only the first album/genre applied will stick. This resolves issue #4 .
2021-02-19 10:12:58 -07:00
OxygenCobalt
e3e0015237
Rewrite loading UI
...
Completely rewrite the loading UI to be far more understandable.
2021-02-19 09:33:49 -07:00
OxygenCobalt
92e9e3282c
Update documents
...
Make the description and tagline less needlessly verbose, update info about translations in the FAQ.
2021-02-18 19:20:46 -07:00
OxygenCobalt
2f8916117e
Update compact controls animation
...
Make the slide animation on the compact controls look better.
2021-02-18 19:08:49 -07:00
OxygenCobalt
bd79951c4e
Optimize drawables
...
Optimize the drawables used by Auxio.
2021-02-17 16:32:13 -07:00
OxygenCobalt
7d93cc97f6
Update fastlane metadata
...
Update parts of the fastlane metadata to remove extraneous files.
2021-02-17 15:55:46 -07:00
OxygenCobalt
9de2b80312
Update documents
...
Update the markdown documents and the screenshots.
2021-02-17 11:29:02 -07:00
OxygenCobalt
1d1da1fac2
Update exoplayer
...
Bump exoplayer to 2.12.3
2021-02-17 10:39:15 -07:00
OxygenCobalt
cccf6ba9f8
Fix memory leak with PlayPauseButton
...
Fix a memory leak in PlayPauseButton that occured from not clearing an animation listener when done with it.
2021-02-16 20:41:55 -07:00
OxygenCobalt
2203018947
Fix issue where seams should show up on play icon
...
Fix a bug where a seam would display on the play icon on certain displays.
2021-02-16 20:31:37 -07:00
OxygenCobalt
1d8aeb16c2
Further streamline coil usage
...
Simplify how coil is used even further.
2021-02-16 09:27:41 -07:00
OxygenCobalt
c41c3be4c5
Update changelogs
...
Re-add the changelog for 1.2 [Albeit below 500 chars] and also add a preliminary changelog for 1.3. Update the version code to 2 as well.
2021-02-16 07:27:07 -07:00
OxygenCobalt
7348fdf536
Add tr [Turkish] translations
...
Add partial translations for turkish.
2021-02-15 19:36:51 -07:00
OxygenCobalt
09f07ad073
Add in [Indonesian] translations
...
Add translations for Indonesian.
2021-02-15 19:18:27 -07:00
OxygenCobalt
6fa698d7eb
Prevent search box from scrolling the toolbar
...
Prevent the search TextView from being able to scroll the toolbar when there are no results.
2021-02-15 15:07:39 -07:00
OxygenCobalt
118172b7c8
Fix song selection bug
...
Fix a bug where if a song is selected while shuffling it would not move that song to the beginning of the queue.
2021-02-15 14:27:03 -07:00
OxygenCobalt
6a273ab34d
add hu [Hungarian] translations
...
Add partial translations for Hungarian.
2021-02-14 17:07:37 -07:00
OxygenCobalt
0c8ca17c01
Add uk [Ukranian] translations
...
Add partial translations for Ukranian.
2021-02-14 14:04:32 -07:00
OxygenCobalt
0d396aaa6b
Change sorting names
...
Change the names of the sorting modes to "Ascending" and "Descending" to make them more translation-friendly.
2021-02-14 11:41:59 -07:00
OxygenCobalt
2ae41f648b
Add zh [Chinese] translations
...
Add translations for Taiwan and Mainland Chinese.
2021-02-14 11:21:25 -07:00
OxygenCobalt
b6ac897314
Add ko [Korean] translations
...
Add partial translations for korean.
2021-02-14 10:35:22 -07:00
OxygenCobalt
62572e7e52
Add po [Polish] translations
...
Add partial translations for Polish
2021-02-13 16:41:03 -07:00
OxygenCobalt
a4801bdf2f
Redo controls view
...
Redo the controls view to support a slide enter/exit animation, along with fixes to elevation problems on certain devices.
2021-02-13 14:49:57 -07:00
OxygenCobalt
2b24d6661e
Update libraries
...
Update Coil/Android libraries
2021-02-13 10:37:34 -07:00
OxygenCobalt
f1245d7d40
Improve layout responsiveness
...
Make layouts better on all screen sizes.
2021-02-13 10:20:48 -07:00
OxygenCobalt
e0485ebad9
Refactor coil
...
Completely refactor coil and how its used so that it centers around data objects instead of a hodgepodge of URIs and Song data.
2021-02-12 22:28:41 -07:00
OxygenCobalt
54f9ceca90
Update portrait tablet layout
...
Update the portait tablet layout to look better.
2021-02-07 20:18:06 -07:00
OxygenCobalt
ed10bd1898
Rewrite ARCHITECTURE.md
...
Redo the structure of ARCHITECTURE.md to make more sense with its intended purpose.
2021-02-07 19:57:52 -07:00
OxygenCobalt
26dd1036ec
Add actionmenu extension function
...
Simplify menu creation by using a Fragment extension to create a new ActionMenu.
2021-02-07 18:54:04 -07:00
OxygenCobalt
eb5292d083
Add architecture document
...
Add a document describing the high-level auxio architecture.
2021-02-07 16:07:16 -07:00
OxygenCobalt
cef4cb68da
Update BaseViewHolder
...
Change the name of BaseViewHolder to BaseHolder and make the click listener arguments optional.
2021-02-07 14:00:48 -07:00
OxygenCobalt
23ddfd4d99
Fix issues with playback layouts on small screens
...
Fix problems with the playback layouts when the screen size is lower than 390dp.
2021-02-04 17:42:44 -07:00
OxygenCobalt
a34850b9cb
Update codebase
...
Do a bunch of minor codebase changes that have accumulated.
2021-02-04 16:10:12 -07:00
OxygenCobalt
603de31ffe
Add ro [Romanian] translations
...
Add partial Romanian translations.
2021-01-31 08:33:36 -07:00
OxygenCobalt
7fc0bcc56d
Update tablet detail layouts
...
Update the tablet detail layouts to look better.
2021-01-30 13:26:49 -07:00
OxygenCobalt
67c177ccf3
Create parent abstraction
...
Create a BaseModel variant for albums, artists, and genres to simplify on alot of code that should only run on those.
2021-01-30 11:18:29 -07:00
OxygenCobalt
ec310a5b93
Fix playing album display bug
...
Fix an issue where an album will not immediately show up as playing if you play it from the artist UI.
2021-01-30 10:29:46 -07:00
OxygenCobalt
55af5790b8
Reformat code/markdown
...
Make some changes to the code formatting & the markdown documents
2021-01-30 10:25:51 -07:00
OxygenCobalt
4438fb9970
Simplify base themes
...
Simplify Theme.Base so that a change in the single Theme.Base will affect all modes regardless of version or theme.
2021-01-30 09:16:27 -07:00
OxygenCobalt
15dbe59db5
Minor fixes
...
Fix some ordering & display issues. Also slightly increased the play/pause icons size on PlaybackFragment.
2021-01-29 21:21:57 -07:00
OxygenCobalt
b3e5777a47
Reformat translations
...
Completely refactor translations to be in line with the main strings.xml file.
2021-01-29 20:42:08 -07:00
OxygenCobalt
6f2fd3968a
Add nl [Dutch] translations
...
Add partial translations for Dutch.
2021-01-29 14:53:35 -07:00
OxygenCobalt
ee669ce389
Add hi [Hindi] translations
...
Add some hindi translations, not alot however.
2021-01-27 19:32:29 -07:00
OxygenCobalt
d98d41102d
Add ru [Russian] translations
...
Add partial translations for Russian, along with some new translations for other languages.
2021-01-27 18:58:35 -07:00
OxygenCobalt
2099453d01
Add el [Greek] translations
...
Add partial translations for greek
2021-01-26 17:42:31 -07:00
OxygenCobalt
0f591c5b5e
Add pt [Portugese] translations
...
Add partial portugese translations for brazil & portugal.
2021-01-26 16:50:42 -07:00
OxygenCobalt
1710847aa5
Add it [Italian] translations
...
Add partial italian translations
2021-01-25 19:56:59 -07:00
OxygenCobalt
c9d7193bd7
Use integer format strings
...
Use %d in certain format strings instead of %s
2021-01-25 19:11:04 -07:00
OxygenCobalt
28a59dc6f7
Add es [Spanish] translations
...
Add partial spanish translations.
2021-01-25 18:59:12 -07:00
OxygenCobalt
e24aa4319c
Fix RTL layouts
...
Fix problems with the RTL layouts
2021-01-25 18:01:25 -07:00
OxygenCobalt
6c671488b0
Add fr [French] translations
...
Add incomplete french translations, I'm not fluent in this language so other people will likely have to complete these.
2021-01-25 15:46:20 -07:00
OxygenCobalt
35551e3dba
Improve german translations
...
Fix alot of problems with the german translations
2021-01-25 14:45:21 -07:00
OxygenCobalt
3ab5671319
Add de [German] translations
...
Add some [Likely broken] german translations using a mix of other sources, my own knowledge, and a english-deutsch dictionary. Ill try to improve these as I go along as theyre the only ones that I'm really able to translate.
2021-01-24 19:13:27 -07:00
OxygenCobalt
27d39a1364
Spin off audio focus into seperate object
...
Move the code responsible for audio focus into a seperate object to reduce the amount of code in PlaybackService.
2021-01-24 14:35:38 -07:00
OxygenCobalt
3851c59f4b
Update UI code
...
Make some misc changes to the code that runs behind the UI.
2021-01-24 11:48:55 -07:00
OxygenCobalt
f779904c0c
Update markdown
...
Update the markdown documents for Version 1.2.0.
2021-01-19 16:00:16 -07:00
OxygenCobalt
ab2da7a5a4
Make artist IDs unique
...
Fix an issue where the artist IDs would not be unique in the context of the other items.
2021-01-19 14:54:12 -07:00
OxygenCobalt
0bbcff35eb
Fix compact playback visibility issues
...
For some reason the new system I implemented for compact playback visibility suddenly stopped working! Revert to the old system.
2021-01-19 14:39:09 -07:00
OxygenCobalt
942e1fc740
Reenable constant bitrate seeking
...
Turns out it didnt fix the problem, was probably some fluke bug or bit flip.
2021-01-19 11:52:22 -07:00
OxygenCobalt
2c435b25a7
Disable constant bitrate seeking
...
Turns out constant bitrate seeking caused problems. Ill add an option to re-enable it.
2021-01-18 17:13:25 -07:00
OxygenCobalt
627553344c
Update shuffling system
...
Finally collapse all usage of shuffle into setShuffling, instead of the mix of checks that used to be throughout PlaybackStateManager.
2021-01-18 16:53:10 -07:00
OxygenCobalt
44fa178c34
Clean up dimens
...
Move some stray dimens into their proper locations.
2021-01-18 14:35:00 -07:00
OxygenCobalt
554a0f28b2
Fix more playback display issues
...
Fix some other problems with the way playback is displayed.
2021-01-18 14:03:32 -07:00
OxygenCobalt
6687dbc2f6
Improve playback fragment styling
...
Fix some issues with the styling/icon usage on PlaybackFragment.
2021-01-18 11:13:22 -07:00
OxygenCobalt
bfa8a6d8f2
Improve tablet layouts
...
Make the tablet layouts look much better
2021-01-18 10:27:54 -07:00
OxygenCobalt
c4bc86cb05
Completely refactor accents
...
Completely refactor the accent system to be much more understandable.
2021-01-18 09:28:31 -07:00
OxygenCobalt
2889e6fdfd
Fix LoadingFragment memory leak
...
Fix an issue where a memory leak would occur in LoadingFragment if it exited before it was visible to the user.
2021-01-18 08:22:05 -07:00
OxygenCobalt
1e102e9d5d
Fix theme bug
...
Fix an issue where setting the theme from AuxioApp will make the theme default to Theme.Base for...some reason...
2021-01-17 07:49:08 -07:00
OxygenCobalt
fc33e01b89
Update ViewHolder long-click structure
...
Make a minor change to the viewholder long-click arguments.
2021-01-16 15:46:27 -07:00
OxygenCobalt
7de02af86f
Clean code
...
Make some minor changes to the codebase.
2021-01-16 09:17:10 -07:00
OxygenCobalt
929ef0a1b4
Fix rewinding issues
...
Fix a problem where rewinding wouldnt cause the playback to start again.
2021-01-15 19:36:56 -07:00
OxygenCobalt
d86e5f1414
Revert to old playback shuffling system
...
The new shuffling system wasnt working out the best, so just revert to the previous and fix the issues with it.
2021-01-15 15:01:26 -07:00
OxygenCobalt
9ab8b4e018
Added elevation to detail covers
...
Added some elevation to the images on the detail fragments.
2021-01-14 19:26:19 -07:00
OxygenCobalt
1ae4d21b18
Create dedicated app object
...
Create a dedicated app object to fix issues with settings initialization & image loading.
2021-01-14 07:42:56 -07:00
OxygenCobalt
60af5f8656
Heavily refactor navigation
...
Make how navigation to the detail fragments much simpler/easier to maintain compared to previously.
2021-01-13 16:11:59 -07:00
OxygenCobalt
fafaa0bf1f
Improve navigation
...
Finally make parent navigation possible from artist albums and the like, along with heavily streamlining the main navigation code.
2021-01-12 17:50:06 -07:00
OxygenCobalt
e236eff997
Change library sort menu to checkable behavior
...
Switch to a checkable behavior for the library sorting menu instead of manually highlighting the menu items
2021-01-12 16:26:37 -07:00
OxygenCobalt
eab260a9c1
Add filtering to SearchFragment
...
Add the ability to filter items to SearchFragment
2021-01-12 16:15:46 -07:00
OxygenCobalt
2cfe0211a5
Fix EditText memory leak
...
Fix a leak that occurs from having a focused edit text even after a fragment is destroyed.
2021-01-12 15:09:53 -07:00
OxygenCobalt
8f5e6621ad
Create dedicated search tab
...
Move all searching to a tab of its own.
2021-01-11 20:17:22 -07:00
OxygenCobalt
e029785181
Fix playing item highlighting issue
...
Fix an issue if one plays a song from all songs and then attempts to play a song from its genre/album, the song will not highlight despite it supposely playing.
2021-01-11 12:28:13 -07:00
OxygenCobalt
4f8ddb793f
Fix issue with song display
...
Fix a bug where playing a song with remember shuffle on would cause the song display to look wrong.
2021-01-11 12:17:39 -07:00
OxygenCobalt
d507b77d32
Fix shuffle bug with ALL_SONGS
...
Fix an issue where if a song was played with KEEP_SHUFFLE on the queue wouldnt actually be shuffled.
2021-01-11 07:15:49 -07:00
OxygenCobalt
6ecfd0daa0
Minor changes
...
Update some things here and there.
2021-01-10 17:29:02 -07:00
OxygenCobalt
bf24199158
Make remember shuffle on by default
...
Make the remember shuffle option on by default.
2021-01-10 08:43:58 -07:00
OxygenCobalt
e46e9a26c2
Fix keyboard issues
...
Fix an issue where the keyboard will stay visible even after navigating away from the search UI. May also fix a memory leak, unsure.
2021-01-07 11:26:38 -07:00
OxygenCobalt
6627de4b62
Add filtering to library search
...
Add filtering to the library search bar.
2021-01-07 10:40:10 -07:00
OxygenCobalt
406ba212f8
Update library searching
...
Reorder how library items are displayed when searching, no longer hiding genres/artists depending on the DisplayMode.
2021-01-07 09:25:58 -07:00
OxygenCobalt
22ab5ad255
Move song search to SongsFragment
...
Move the ability to search for songs to SongsFragment for better consistency. May switch to a dedicated search tab in the future but I generally like how this looks.
2021-01-06 15:54:33 -07:00
OxygenCobalt
332d1d0170
Update shuffling system
...
Optimize the shuffling system in PlaybackStateManager.
2021-01-05 09:42:36 -07:00
OxygenCobalt
35db7792bb
Update album artist navigation
...
Make it so that when an album is navigated to from an artist, navigation to the parent artist is disabled.
2021-01-05 08:29:29 -07:00
OxygenCobalt
d5f28cf374
Fix audio focus from firing on user-input
...
Stop an issue where audio focus would resume playback after it was paused deliberately by the user.
2021-01-04 20:37:26 -07:00
OxygenCobalt
fcc6a7e8d7
Update sorting
...
Make some changes to the sorting system.
2021-01-04 15:38:10 -07:00
OxygenCobalt
119078fc77
Create dedicated ActionMenu object
...
Create a dedicated object for every ActionMenu to reduce on code clutter caused by duplicated PopupMenu code.
2021-01-04 11:19:46 -07:00
OxygenCobalt
f109130fb8
Update menus
...
Implement a "Go to artist" option in library albums, along with removing unneeded icons to reduce the space taken up by them.
2021-01-04 10:28:13 -07:00
OxygenCobalt
4c1f009d93
Redesign toolbar
...
Remove the "Library" name from the toolbar and make it more of a bar for certain actions.
2021-01-03 19:01:06 -07:00
OxygenCobalt
ee1d05d347
Change sorting menu to dedicated action
...
Make the sorting menu on LibraryFragment an action instead of just some things in the overflow menu to improve consistency and accesibility.
2021-01-03 12:03:35 -07:00
OxygenCobalt
260e7f71cf
Move play & shuffle to dedicated buttons
...
Move the play and shuffle actions to dedicated buttons on the DetailFragments. Actually looks r e a l l y nice.
2021-01-03 10:16:23 -07:00
OxygenCobalt
0bcf228496
Version 1.1.0
...
Ready for Version 1.1.0 of Auxio.
2021-01-02 14:42:00 -07:00
OxygenCobalt
7fbf4d7fef
Refresh READMEs
...
Refresh all markdown/asset documents in preperation for 1.1.0
2021-01-02 14:29:36 -07:00
OxygenCobalt
7b0a69f8c0
Dont clear ImageLoader on recreation
...
Make it so that the ImageLoader is only refreshed when the configuration needs to be changed, instead of on every recreation.
2021-01-01 10:37:36 -07:00
OxygenCobalt
6c37ba7d3e
Optimize quality cover loading
...
Make the loading process for higher-quality covers far more efficent and elegant compared to the previous method.
2021-01-01 09:41:56 -07:00
OxygenCobalt
bc1992de4e
Remove rewind threshold setting
...
Remove the ability to customize the rewind threshhold, as I dont think its that useful in the long-term
2020-12-31 20:22:33 -07:00
OxygenCobalt
14fc47913e
Disable disk caching when using MediaStore
...
Since the MediaStore covers are already cached by the android system, disable the auto-caching that Coil uses to save space.
2020-12-31 19:29:38 -07:00
OxygenCobalt
39ba1c38ec
Add option to not load cover art
...
Add an option to not load cover art whatsoever.
2020-12-31 19:07:16 -07:00
OxygenCobalt
d7087fe0b1
Add option to ignore MediaStore covers
...
Add an option to ignore MediaStore covers and to get higher quality covers, at the cost of slower loading times.
2020-12-31 12:17:50 -07:00
OxygenCobalt
5b2e0dc0f4
Rewrite Audio Focus
...
Switch from the built-in exoplayer AudioFocus to a custom AudioFocus setup that supports ducking and auto-resumes after a short interuption.
2020-12-31 11:30:32 -07:00
OxygenCobalt
dfaffecbd3
Add playing indicators to GenreDetailFragment
...
Add an indicator that a song is playing from a specific genre in GenreDetailFragment.
2020-12-31 09:37:37 -07:00
OxygenCobalt
33abb1419a
Refactor playing indicator holder usage
...
Collapse the two lastHolder values into one value inside the detail adapters in order to cut down on needless redundancy.
2020-12-31 08:05:34 -07:00
OxygenCobalt
38197344f6
Add playing indicator to ArtistDetailFragment
...
Add an indicator that an album is playing in ArtistDetailFragment.
2020-12-30 16:05:40 -07:00
OxygenCobalt
85a8241976
Re-add playing indicator to AlbumDetailFragment
...
Re-add the playing indicators to AlbumDetailFragment, while removing them from SongsFragment as I personally dont think they work there.
2020-12-30 13:43:52 -07:00
OxygenCobalt
fef8d4146e
Add option to play song from genre
...
Add the option to play a song from a genre.
2020-12-30 12:30:43 -07:00
OxygenCobalt
95c601bf02
Add playing indicators to SongsFragment
...
Add an indicator for the currently playing song to SongsFragment, as long as the current playback mode is ALL_SONGS.
2020-12-30 10:48:35 -07:00
OxygenCobalt
8a92108a4a
Update landscape functionality
...
Make some changes that differentiate how Auxio is displayed on phone vs. landscape devices.
2020-12-29 15:18:11 -07:00
OxygenCobalt
8fe0734ca1
Refactor menus
...
Heavily refactor how certain menus are used when it comes to songs.
2020-12-29 14:45:55 -07:00
OxygenCobalt
98320fcd8d
Update scrolling
...
Remove the viscous interpolator and replace it with a variant of the default smooth scroller, dont like it as much but its less buggy.
2020-12-29 10:59:01 -07:00
OxygenCobalt
966adf7704
Refreash viewholder item codes
...
Fix the viewholder item codes so they actually make sense.
2020-12-29 09:27:45 -07:00
OxygenCobalt
46fa300252
Refactor album detail layout
...
Change the album detail layout to rely on a RecyclerView entirely instead of a NestedScrollView, at the cost of some functionality I'll need to re-add.
2020-12-29 09:03:14 -07:00
OxygenCobalt
7ef4eb5fde
Update artist detail layout
...
Update the artist detail layout so that it also relies on a recyclerview entirely instead of a nestedscrollview.
2020-12-28 13:55:20 -07:00
OxygenCobalt
804db8b0d3
Update genre detail layout
...
Make GenreDetailFragment a full RecyclerView in order to fix issues with how NestedScrollView has to generate all ViewHolders in order on creation.
2020-12-28 10:48:50 -07:00
OxygenCobalt
c1ae32325f
Refactor song viewholders
...
Make it so that the primary song viewholder is the one without a duration, making the one with the duration the viewholder for genre songs.
2020-12-27 19:25:29 -07:00
OxygenCobalt
7a54b0a79f
Update markdown
...
Change some things in the ADDITIONS & README documents.
2020-12-27 15:59:14 -07:00
OxygenCobalt
501e40b2bf
Use dedicated audio renderer
...
Use a dedicated audio renderer to shrink APK size, and possible reduce battery/cache usage.
2020-12-25 21:39:49 -07:00
OxygenCobalt
600aa2d6f1
Move genre name code to genre objects
...
Instead of converting int-genres to normal genres during the music loader process, instead do it in the Genre object as a lazy initializer, so that the names remain [Probably] unique.
2020-12-25 21:19:35 -07:00
OxygenCobalt
940746f248
Make state restore use names instead of ids
...
Make it so that PlaybackStateDatabase stores the item data for PlaybackState/QueueItems as strings instead of ids, as ids are too volitaile if the music library changes.
2020-12-24 11:30:23 -07:00
OxygenCobalt
51a5e9fd63
Refactor genre UI
...
Fully refactor the genre UI so that it makes more sense.
2020-12-21 20:10:38 -07:00
OxygenCobalt
6e5bff3bd3
Heavily refactor music loading
...
Heavily change how music loading works so that artists arent redundantly loaded, genres are primarily song-based instead of genre based, and songs are now bound to their correct genres.
2020-12-20 15:30:50 -07:00
OxygenCobalt
dc26d70088
Make broadcasts unique
...
Prevent broadcasts from Auxio builds being registered by other, different Auxio instances.
2020-12-20 12:59:29 -07:00
OxygenCobalt
e85bdd0643
Stop play/pause animation on PlaybackFragment
...
Prevent the play/pause button on PlaybackFragment from prematurely animating on creation, like CompactPlaybackFragment.
2020-12-20 10:04:29 -07:00
OxygenCobalt
79756f36c7
Version 1.0.0
...
The initial release of Auxio, a sensible and customizable music player for android.
2020-12-20 08:52:51 -07:00
OxygenCobalt
5deea0c11e
Finishing Touches
...
Do some final touch-ups with my README and ADDITIONS documents.
2020-12-20 07:56:15 -07:00
OxygenCobalt
d4d40c97ad
Fix compat issues
...
Fix some issues on older versions.
2020-12-19 15:43:07 -07:00
OxygenCobalt
f85bd85c92
Add contribution templates
...
Add contribution templates for this project.
2020-12-19 12:23:10 -07:00
OxygenCobalt
953e1291b6
Document code
...
Heavily document code that wasnt documented before.
2020-12-19 11:22:15 -07:00
OxygenCobalt
5d35dc8aa2
Fix info links
...
Fix links from AboutDialog to actually link to their intended locations.
2020-12-18 20:14:53 -07:00
OxygenCobalt
28692829ba
Add contribution guidelines
...
Add some contribution guidelines for this project.
2020-12-18 20:03:20 -07:00
OxygenCobalt
ed33813112
Add proper README
...
Add a proper readme and other documents for this project.
2020-12-18 17:15:57 -07:00
OxygenCobalt
4413cb1499
Refactor edge-to-edge
...
Change edge-to-edge to auto-enable on 27+, along with relying on styles to make the systemui changes instead of code directly.
2020-12-18 10:45:42 -07:00
OxygenCobalt
0d32ab0f7e
Add about dialog
...
Add an about dialog with information about this app.
2020-12-18 10:05:31 -07:00
OxygenCobalt
4933531ca3
Allow fragments to use member variable bindings
...
Create a binder delegate so that some fragments can use a binding as a member variable without nullability issues or memory leaks.
2020-12-16 19:36:34 -07:00
OxygenCobalt
71cd15bbf7
Fix bugs
...
Fix bugs with playback & edge-to-edge.
2020-12-16 16:57:54 -07:00
OxygenCobalt
fcebfda406
Fix edge-to-edge bug in landscape
...
Fix a bug where the drag handles in QueueFragment would be covered up by the navigation bar in edge-to-edge + landscape mode.
2020-12-14 19:38:46 -07:00
OxygenCobalt
28b6edb5d6
Add landscape support to detail fragments
...
Add a landscape layout for AlbumDetailFragment, ArtistDetailFragment, and GenreDetailFragment.
2020-12-14 15:55:12 -07:00
OxygenCobalt
8085c25103
Minor fixes
...
Do some more landscape layout fixes and remove some redundant database code.
2020-12-14 14:48:43 -07:00
OxygenCobalt
07e7e1ae5b
Add landscape support to list fragments
...
Add a landscape mode for LibraryFragment & SongsFragment.
2020-12-14 12:01:24 -07:00
OxygenCobalt
fca42f2cb0
Add landscape support to PlaybackFragment
...
Add a landscape layout to PlaybackFragment.
Signed-off-by: OxygenCobalt <alexyx@tutanota.com>
2020-12-13 17:29:17 -07:00
OxygenCobalt
9b22fcb8e6
Fix landscape issues with MainFragment
...
Make MainFragment & CompactPlaybackFragment look better in landscape mode.
2020-12-13 17:07:29 -07:00
OxygenCobalt
7458588913
Move playback save button to SettingsListFragment
...
Move the ability to save the current playback state into a dedicated preference in SettingsListFragment.
2020-12-13 16:01:40 -07:00
OxygenCobalt
384d0f1a27
Use custom logging wrapper
...
Create a custom logging wrapper so that debug messages dont show up in release builds, fix bugs with anonymous objects and to just remove the boilerplate for normal log functions.
2020-12-13 13:30:48 -07:00
OxygenCobalt
c7549d6bfa
Add queue behavior options
...
Add options for whether to remember the shuffle toggle & what to do when a playlist ends.
2020-12-13 12:18:43 -07:00
OxygenCobalt
6882722201
Add option to rewind before skipping back
...
Add an option to rewind before skipping to prevous song, depending on the user-defined threshhold.
2020-12-12 15:45:51 -07:00
OxygenCobalt
aaa1ad1a3d
Add song playback mode option
...
Add an option to customize whether a song should play from its artist, its album, or all songs when selected.
2020-12-12 13:50:46 -07:00
OxygenCobalt
859391e69b
Refactor library structure
...
Refactor LibraryFragment & LibraryViewModel so that LibraryViewModel only holds the data and LibraryFragment displays it.
2020-12-12 12:22:06 -07:00
OxygenCobalt
60750d976b
Minor Fixes
...
Fix some issues with playback, album detail, and other things in the app
2020-12-12 11:30:50 -07:00
OxygenCobalt
dbd2c022a0
Improve accents
...
Add a new "Neutral" accent and improve the yellow accent so that its more visible.
2020-12-05 10:42:22 -07:00
OxygenCobalt
c44003907a
Add audio settings
...
Add some settings to control how audio is being played.
2020-12-05 09:42:09 -07:00
OxygenCobalt
276c099f84
Make accent summary use string resources
...
Make accent summaries use string resources instead of the names of the colors in resources themselves, in order to make the names translatable.
2020-12-04 20:17:28 -07:00
OxygenCobalt
a49ad5ddad
Add library item customization
...
Add the ability to customize library items.
2020-12-04 19:48:01 -07:00
OxygenCobalt
df637a27aa
Prevent fast scroller from being truncated
...
Prevent the fast scroll from being truncated if there isnt enough screenspace to contain all the entries, such as in a phone's landscape mode.
2020-12-04 16:28:42 -07:00
OxygenCobalt
0a0828684c
Add notification settings
...
Add some notification settings to change the action & the colorization.
2020-12-03 20:22:15 -07:00
OxygenCobalt
b8b6e8421b
Refactor settings management
...
Heavily refactor the structure of settings to fix some bugs.
2020-12-03 18:35:47 -07:00
OxygenCobalt
21dbad7091
Fix bugs
...
Fix a ton of misc bugs that I stumbled upon.
2020-12-02 20:04:08 -07:00
OxygenCobalt
51b2749c06
Refactor styles heavily
...
Move a bunch of UI elements into reusable styles, along with removing literal dimen resources.
2020-12-02 19:03:17 -07:00
OxygenCobalt
63630aa42e
Improve edge-to-edge even more
...
Eliminate a stupid third-party library and fix an elevation issue with QueueFragment as well.
2020-12-02 15:26:48 -07:00
OxygenCobalt
0079f41776
Improve edge-to-edge
...
Do some weird android styling wizardry to get edge-to-edge working better.
2020-12-01 20:06:51 -07:00
OxygenCobalt
91b8d226c8
Fix general issues
...
Fix issues where colorPrimary was the main ripple color [ew], and some QueueAdapter errors stemming from a useless function.
2020-11-30 19:45:20 -07:00
OxygenCobalt
12c14eeda6
Add edge-to-edge
...
Add [somewhat basic] edge-to-edge functionality for android O and up, along with the ability to enable/disable it.
2020-11-29 19:30:09 -07:00
OxygenCobalt
59036a2747
Change setting ripple color
...
Change the ripple on the settings to a generally neutral color instead of the gaudy colorPrimary.
2020-11-29 14:43:37 -07:00
OxygenCobalt
e15df4ce73
Improve settings
...
Improve how the current settings look/function, and also how settings work in the background.
2020-11-29 10:52:28 -07:00
OxygenCobalt
a5f59858bd
Add accent customization
...
Add the ability to customize the accent.
2020-11-28 20:25:41 -07:00
OxygenCobalt
2dc7ba3420
Implement theme customization
...
Implement the ability to change the theme to auto/light/dark.
2020-11-28 16:17:54 -07:00
OxygenCobalt
76c1fe1d75
Add library sort mode preference
...
Save the library sort mode to a SharedPreferences object, soon to be extended with other prefs.
2020-11-27 20:11:24 -07:00
OxygenCobalt
6a5084beb1
Improve fast-scroll
...
Fix bugs and improve the UI of the fast-scroller on SongsFragment.
2020-11-27 15:23:19 -07:00
OxygenCobalt
1980dafcff
Minor fixes
...
Fix some bugs/problems here and there.
2020-11-26 14:31:13 -07:00
OxygenCobalt
e7e683c3a9
Add playing indicator to album songs
...
Add an indicator to album songs that shows if theyre being currently played or not.
2020-11-26 09:53:12 -07:00
OxygenCobalt
7e0ee3d04f
Add parent restoration
...
Add a failsafe to the persistence system that allows the parent of a playback state to be restored from the queue.
2020-11-26 08:52:21 -07:00
OxygenCobalt
1af17a6df1
Remove usages of animator to fix nav bugs
...
Remove usages of animator as apparently sometimes that actually causes bugs. Why do I do this to myself.
2020-11-25 21:13:23 -07:00
OxygenCobalt
3fca28dd20
Add fast scrolling to SongsFragment
...
Add a fast-scroll bar to the list of songs in SongsFragment.
2020-11-25 16:27:25 -07:00
OxygenCobalt
38afa8f4d2
Improve documentation slightly
...
Add some more documentation to the code.
2020-11-25 11:18:36 -07:00
OxygenCobalt
fd4b7b247f
Use animator where possible
...
Use animator nav animations instead of anim nav animations to possibly prevent some leaks involving "mKeyedTags" or whatever.
2020-11-25 10:29:47 -07:00
OxygenCobalt
6ac269b1df
Minor playback nav improvements
...
Change the playing nav system to rely off a single value, instead of multiple booleans.
2020-11-25 10:04:14 -07:00
OxygenCobalt
206d8d1c1f
Add playing song nav to PlaybackFragment
...
Add the ability to nav to the playing song/playing artist/playing album from PlaybackFragment.
2020-11-25 09:37:06 -07:00
OxygenCobalt
6ce8c854a9
Minor changes
...
Change some minor things across the app.
2020-11-24 15:39:40 -07:00
OxygenCobalt
034f073bac
Fix bugs with play-pause animation
...
Fix some bugs that will cause the animation on the play/pause button not to show.
2020-11-24 10:14:22 -07:00
OxygenCobalt
cc9a952b9a
Re-add BottomNavigationView animation
...
Readd the navigation animation that occurs when an item is selected by the BottomNavigationView.
2020-11-24 09:33:45 -07:00
OxygenCobalt
d46b99400f
Re-add playback nav
...
Re-add the ability to navigate back to the currently playing song. Now with a scroll!
2020-11-23 18:34:54 -07:00
OxygenCobalt
0627677569
Remove dividers
...
Remove the recyclerview dividers, they made the app too cluttered, so now theyre gone.
2020-11-23 16:21:46 -07:00
OxygenCobalt
2cd45f8350
Stop play/pause button from animating on creation
...
Re-add the fix that makes the play/pause button not animate when created initially.
2020-11-23 15:16:23 -07:00
OxygenCobalt
c11882bc7b
Fix notification bug
...
Fix a bug where an incomplete notification will show if one changes the loop mode in PlaybackFragment.
2020-11-23 11:53:21 -07:00
OxygenCobalt
844870f4d4
Move user queue clear action into header
...
Move the button for clearing the user queue into the header for the user queue, so that its more consistent.
2020-11-23 10:57:23 -07:00
OxygenCobalt
1d50d24c4f
Add ability to clear user queue
...
Add an option to clear the user queue in QueueFragment.
2020-11-22 15:46:21 -07:00
OxygenCobalt
49897c53b4
Rewrite Database to stop using room
...
Refactor/Rewrite the database system to be based on SQLiteOpenHelper instead of Room, as Room will keep empty columns around even after trying to explicitly delete them.
2020-11-22 14:30:45 -07:00
OxygenCobalt
d8a40fe219
Cleanup code
...
Cleanup a bunch of redundant, unused, and bad code.
2020-11-21 16:50:16 -07:00
OxygenCobalt
13b80585d2
Extend Popup actions
...
Extend the action menus to every music model.
2020-11-21 16:10:16 -07:00
OxygenCobalt
d2350de12a
Optimize queue restore slightly
...
Reduce the amount of iterations the restoration process has to go through when restoring the queue by making it traverse albums and then album songs.
2020-11-21 11:13:40 -07:00
OxygenCobalt
d09ce20e02
Persist Queue
...
Implement some very unoptimized queue persistence, Ill have to make it better in the future but for now it works.
2020-11-20 20:59:39 -07:00
OxygenCobalt
da224ffda0
Fix persistence bugs with notification
...
Fix issues where the notification for Auxio will show up incomplete during the restore process.
2020-11-17 11:23:14 -07:00
OxygenCobalt
27777bf352
Add animation to BottomNavigationView nav
...
Add an animation to the navigation that occurs when an item from BottomNavigationView is selected.
2020-11-17 08:47:45 -07:00
OxygenCobalt
c19680c1f7
Temporarily remove playback nav
...
Remove the ability to navigate to the parent album from CompactPlaybackFragment for now, as it was causing issues.
2020-11-16 21:37:45 -07:00
OxygenCobalt
c3a61e6071
Switch from ViewPager to BottomNavigationView
...
Use BottomNavigationView as the main navigator of Auxio instead of a ViewPager + BottomNavigationView, primarily to fix some memory leaks and give Auxio a better UI design overall.
2020-11-16 21:09:55 -07:00
OxygenCobalt
212ffbf2c7
Fix persistence bugs
...
Fix some edge cases with the persistent PlaybackState restoration.
2020-11-15 20:07:40 -07:00
OxygenCobalt
6d809f4303
Implement persistence
...
Implement the ability for [most of] the playback state to persist even after the app's process has been killed.
2020-11-14 16:53:35 -07:00
OxygenCobalt
ee95bc1a9e
Fix more queue bugs
...
Fix bugs with QueueAdapter where removing the last item from the user queue or the next queue would cause weird behavior or a crash.
2020-11-13 20:49:53 -07:00
OxygenCobalt
2ebee41ed0
Make QueueAdapter Adapter instead of ListAdapter
...
Fix a stupid amount of bugs by changing QueueAdapter to a normal adapter with a differ and addition/movement functions instead of a ListAdapter.
2020-11-13 14:56:06 -07:00
OxygenCobalt
2aa630948b
Prevent the addition of duplicate queue items
...
Band-aid over a bug with DiffCallback that causes weird behavior with duplicate queue items by disallowing the addition of queue items if theyre already allowed.
2020-11-12 19:25:43 -07:00
OxygenCobalt
604145fb69
Improve code slightly
...
Add some documentation and remove useless code/bugs.
2020-11-11 19:27:38 -07:00
OxygenCobalt
2c783beaba
Redesign headers/menus
...
Redesign the header items so they look nicer, update the PopupMenus with some new things as well.
2020-11-10 20:00:38 -07:00
OxygenCobalt
67d10009d4
Unify Queue
...
Make QueueFragment contain both the user queue and the next queue, instead of having viewpager between the two.
2020-11-09 15:39:13 -07:00
OxygenCobalt
b5552411b6
Add nav to playing song's album
...
Add the ability to navigate from CompactPlaybackFragment to the album where the current song is.
2020-11-08 15:39:18 -07:00
OxygenCobalt
a192fb52c3
Make queue a fragment instead of a dialog
...
Make QueueFragment an actual fragment instead of a BottomSheetDialogFragment. Really dont want to deal with the garbage BottomSheetDialogFragment does.
2020-11-08 14:37:13 -07:00
OxygenCobalt
4fb4120342
Add ability to play from user queue
...
Add the ability to play from the user queue, also append some extra song actions.
2020-11-08 10:11:27 -07:00
OxygenCobalt
2be7d34601
Add user queue
...
Add a user-generated queue, currently it isnt played from.
2020-11-07 16:06:47 -07:00
OxygenCobalt
bc7950e7af
Make Queue nav destination
...
Fix a heisenleak by making QueueFragment a navigation destination instead of being directly instantiated.
2020-11-07 09:38:09 -07:00
OxygenCobalt
c664d22a43
Fix bugs with Queue
...
- Fix a bug where the queue would scroll up when the player moved to another song.
- Fix bug where queue would show even with no songs.
- Fix a crash from removing the last song of a queue.
2020-11-06 20:06:23 -07:00
OxygenCobalt
1cab11ba9c
Fix compatibility
...
Do some minor compatibility fixes for older versions of android.
2020-11-02 19:58:11 -07:00
OxygenCobalt
188d7e047f
Make Notification show currently played model
...
Make the playback notification show the currently played music model [e.g the genre/artist/album thats being played].
2020-11-01 19:58:20 -07:00
OxygenCobalt
344e566aa3
Update resources
...
Improve resource structure/naming.
2020-11-01 15:56:53 -07:00
OxygenCobalt
660f4c0eb7
Add ability to exit notification
...
Add an exit button to the notification so that one can exit it.
2020-11-01 15:37:01 -07:00
OxygenCobalt
5da3fa866b
Refactor notification management
...
Remove PlaybackNotificationHolder and replace it with a util file that is easier to work with.
2020-11-01 13:58:47 -07:00
OxygenCobalt
08bd0ece3a
Add media controls to notification
...
Add media controls to the Playback Notification [Loop, Last, Play/Pause, Next, Shuffle]
2020-11-01 11:06:26 -07:00
OxygenCobalt
09971afb42
Make PlaybackService perpetually foreground
...
Make PlaybackService never leave the foreground unless forced to, will add an option to close the service later.
2020-10-31 20:03:42 -06:00
OxygenCobalt
afa50ad531
Update icon
...
Make the Auxio icon look nicer.
2020-10-31 17:47:36 -06:00
OxygenCobalt
909cea01fa
Make PlaybackStateManager use millis
...
Make PlaybackStateManager use millis for the current position instead of seconds, in order to be more in line with the rest of the code.
2020-10-31 14:32:44 -06:00
OxygenCobalt
e00930cc5f
Add Playback Notification
...
Add a MediaStyle Notification for music playback.
2020-10-31 11:50:42 -06:00
OxygenCobalt
a4f55873ec
Add Audio Focus
...
Use the built-in ExoPlayer AudioFocus functionality to implement Audio Focus [hopefully].
2020-10-30 16:07:41 -06:00
OxygenCobalt
535fc95f71
Add looping
...
Add the ability to loop songs either once or infinitely.
2020-10-30 14:51:49 -06:00
OxygenCobalt
ce96dd6e94
Extend Headset Functionality
...
Add callbacks for when rewind/close buttons are pressed on a headset, and when headsets are connected/disconnected.
2020-10-30 12:24:27 -06:00
OxygenCobalt
6fc034e376
Minor playback improvements
...
Improve the code design and fix some bugs with PlaybackService and friends.
2020-10-30 11:39:55 -06:00
OxygenCobalt
2ded706445
Add external media controls
...
Add the ability to listen to external media controls, such as through a bluetooth headset.
2020-10-26 20:08:22 -06:00
OxygenCobalt
3251b84e23
Fix memory leak with PlaybackViewModel
...
Fix a memory leak involving a stray context that PlaybackViewModel would store.
2020-10-26 18:39:39 -06:00
OxygenCobalt
85475b5c61
Make PlaybackService persistent
...
Make PlaybackService solely rely on PlaybackStateManager, allowing the service to run beyond the main Auxio activity.
2020-10-26 16:13:20 -06:00
OxygenCobalt
ac5e6ba140
Fix issues with PlaybackFragment seekbar
...
Fix bugs where PlaybackFragment's seekbar would update the player on the fly/flip out if PlaybackService updated the position while it was seeking.
2020-10-26 12:06:17 -06:00
OxygenCobalt
1afaae7b0a
Add playback updates to PlaybackService
...
Add the ability for PlaybackService to move to the next song when the current one ends, update the duration, and also be played/paused.
2020-10-26 11:04:22 -06:00
OxygenCobalt
42325c456e
Refactor playback management
...
Move playback management from PlaybackViewModel to a dedicated class, update naming of playback functions heavily.
2020-10-26 09:39:45 -06:00
OxygenCobalt
25142bba48
Add basic playback functionaliity
...
Implement ExoPlayer in a basic form so that songs can be actually played.
2020-10-25 18:18:59 -06:00
OxygenCobalt
32fe24e001
Update ViewHolder structure
...
Make some minor improvements to the ViewHolder structure.
2020-10-24 12:32:05 -06:00
OxygenCobalt
55ed55c5dc
Improve queue editing
...
Fix issue where moving queue items would swap them, not move them, also prevent QueueAdapter from scrolling uncontrollably if the first item is moved.
2020-10-23 19:15:10 -06:00
OxygenCobalt
912d296e92
Add ability to edit queue
...
Add the [somewhat rough] ability to move/remove items from the queue.
2020-10-21 20:16:11 -06:00
OxygenCobalt
219d1c2c24
Add queue display
...
Add a fragment for displaying the current queue.
2020-10-20 15:16:28 -06:00
OxygenCobalt
3337747cb7
Fix empty genre bug
...
Bandaid MusicSorter to remove any genres that dont have anything in them, because that happens now. Also prevent a crash just in case an empty music model does get played.
2020-10-18 15:38:59 -06:00
OxygenCobalt
c4c115274b
Move detail controls to Toolbar
...
Move the play/shuffle buttons from the header of the DetailFragments to their Toolbar, it makes far more sense for them to be there honestly.
2020-10-18 15:13:03 -06:00
OxygenCobalt
d01aa3ea4a
Prevent animated icons from animation on startup
...
Make ImageButtons that use animated icons not animate when the fragment is initially created.
2020-10-18 13:45:13 -06:00
OxygenCobalt
2811c83543
Improve semantics
...
Remove some useless TODOs, update naming in places.
2020-10-18 09:06:16 -06:00
OxygenCobalt
00667151dc
Add shuffle buttons to Detail Fragments
...
Add shuffle buttons to AlbumDetailFragment & ArtistDetailFragment.
2020-10-15 15:31:06 -06:00
OxygenCobalt
c422071e93
Add shuffling
...
Add basic shuffling to PlaybackFragment.
2020-10-15 11:32:01 -06:00
OxygenCobalt
339100e436
Improve genre loading
...
Temporarily remove the ability to play from a genre, update MusicLoader to not load genres/artists simultaniously so that Artist ID's arent completely garbled. Improve PlaybackFragment slightly.
2020-10-15 08:49:32 -06:00
OxygenCobalt
c17666752b
Add play buttons to other Detail Fragments
...
Add play buttons to the ArtistDetailFragment & GenreDetailFragment.
2020-10-14 15:49:49 -06:00
OxygenCobalt
a64627c7cf
Add play button to AlbumDetailFragment
...
Add a play button to AlbumDetailFragment that shows the option to play the album, or pause/resume the playback if the album is already playing.
2020-10-14 10:10:57 -06:00
OxygenCobalt
9f05ce6e52
Add seperate queue types
...
Add seperate queue types for different contexts, such as playing a song from an album.
2020-10-14 08:09:45 -06:00
OxygenCobalt
96c30b3f93
Change music storage to shared object
...
Change MusicViewModel from a ViewModel to a shared object, so that it can be used everywhere in the app instead of just in fragments.
2020-10-13 16:44:14 -06:00
OxygenCobalt
3376b57f8e
Add skipping
...
Add the ability to skip fowards/backwards.
2020-10-13 12:40:16 -06:00
OxygenCobalt
d8f40bfd27
Replace ClickListener with lambdas
...
Replace ClickListener with direct lambdas, so that adapters with multiple datatypes dont have to duplicate ClickListener for each type.
2020-10-13 11:09:48 -06:00
OxygenCobalt
a72ab10007
Improve Progress Bars on Playback Fragments
...
Change the Progress Bars on PlaybackFragment/CompactFragment to reflect the total seconds in a song, instead of the percentage of completion.
2020-10-12 19:36:32 -06:00
OxygenCobalt
3bafc17d0c
Add durations to PlaybackFragment
...
Add the song duration & the current duration to PlaybackFragment, update the SeekBar in PlaybackFragment to reflect those durations.
2020-10-12 16:13:15 -06:00
OxygenCobalt
09d4e107e0
Refactor dimens
...
Refactor the dimen naming/use across the app.
2020-10-12 11:57:24 -06:00
OxygenCobalt
a2409a5718
Improve PlaybackFragment nav animation
...
Change PlaybackFragment's open/closing animation to slide over a stationary MainFragment, instead of MainFragment also sliding.
2020-10-12 07:57:14 -06:00
OxygenCobalt
4ad86593a6
Make PlaybackFragment full-screen
...
Change PlaybackFragment to a full-screen layout w/a slide animation.
2020-10-11 19:01:06 -06:00
OxygenCobalt
d8042ef159
Fix theming issues w/PlaybackFragment
...
Fix some theme issues with PlaybackFragment
2020-10-11 16:46:53 -06:00
OxygenCobalt
f884adc39d
Use animated icons for play/pause
...
Use animated play/pause icons from Noice [https://github.com/ashutoshgngwr/noice ] on the playback fragments.
2020-10-11 11:24:36 -06:00
OxygenCobalt
eb6839b10c
Add play/pause controls
...
Add play/pause controls to the playback fragments.
2020-10-11 11:03:06 -06:00
OxygenCobalt
0c069dfbac
Add specific playback fragment
...
Add a Playback Fragment that shows more information about what is currently playing.
2020-10-09 18:57:28 -06:00
OxygenCobalt
59c087d653
Update semantics slightly
...
Change some naming/structure somewhat, and move all TODOs from AuxioTODO to the project itself.
2020-10-09 13:57:36 -06:00
OxygenCobalt
a72cb48c71
Add playback fragment
...
Add a fragment to show songs that are currently being played.
2020-10-05 15:54:53 -06:00
OxygenCobalt
21ff93d5f0
Fix bug with app restart
...
Fix bug where the app would be unaware if MusicViewModel was cleared due to it being suspended in the background.
2020-10-05 09:26:22 -06:00
OxygenCobalt
7928347f9b
Standardize fragment creation
...
Standardize the code layout for fragment creation.
2020-10-04 10:58:05 -06:00
OxygenCobalt
711d9a0b00
Add genre support to search
...
Add the ability for genres to show up in search, as long as the library is currently displaying them.
2020-10-04 10:22:52 -06:00
OxygenCobalt
127f700700
Change show constants to dedicated enum
...
Move the ShowMode constants to a dedicated ShowMode enum in /recycler/.
2020-10-04 08:36:21 -06:00
OxygenCobalt
7abb888108
Make shared ViewHolders used defined types
...
Make the shared ViewHolders use their respective types instead of BaseModel.
2020-10-03 19:44:35 -06:00
OxygenCobalt
2126b4f78f
Update ViewHolder structure
...
Move all shared viewholders to /recycler/, and change structure of shared viewholders to prohibit direct instantiation.
2020-10-03 19:29:03 -06:00
OxygenCobalt
45f411fdd7
Change search to show all music items
...
Change the library search to show artists, albums, and songs.
2020-10-03 18:20:37 -06:00
OxygenCobalt
b814ac613d
Fix more navigation bugs
...
Remove the clicklistener system I added before, as it turns out fragments arent immediately recreated if you navigate back. Fun.
2020-10-03 10:08:04 -06:00
OxygenCobalt
69c508caec
Add search to LibraryFragment
...
Add searching to LibraryFragment.
2020-10-03 09:14:49 -06:00
OxygenCobalt
3a44ce7e43
Make ClickListener single-use
...
Change the RecyclerView click listener to only be able to be called once in order to eliminate the ViewModel isAlreadyNavigating variables.
2020-10-02 12:30:23 -06:00
OxygenCobalt
8b0c2a7d2e
Add sorted genres/albums to LibraryFragment
...
Re-add the ability to show [sortable] Genres/Albums in LibraryFragment. Again.
2020-09-28 19:42:31 -06:00
OxygenCobalt
08f8e50bbf
Highlight sort menu item when selected
...
Highlight the menu item for the currently shown order when its selected.
2020-09-28 18:11:56 -06:00
OxygenCobalt
37c52d9e5c
Add sorting to LibraryFragment
...
Add basic sorting to LibraryFragment.
2020-09-28 15:37:41 -06:00
OxygenCobalt
aad42b5201
Fix album bugs
...
Fix bugs with the album items & detail fragments.
2020-09-27 17:03:35 -06:00
OxygenCobalt
af4c32eb5b
Update stored DetailViewModel items
...
Change the stored items in DetailViewModel to LiveData. Remove the need to reset the stored items when a fragment is destroyed.
2020-09-27 16:16:32 -06:00
OxygenCobalt
d9cf3772e6
Update naming
...
Update naming on layout files & other code.
2020-09-27 15:26:15 -06:00
OxygenCobalt
f866e77ee4
Add parent ViewHolder
...
Add an base ViewHolder class so that there isnt as much repeated code.
2020-09-27 11:13:24 -06:00
OxygenCobalt
d99347722e
Make music models inherit base class
...
Make the music models inherit a base data class that contains the ID & name to reduce redundant code.
2020-09-27 10:26:14 -06:00
OxygenCobalt
9ffc194c4d
Add DetailFragment for genres
...
Add a DetailFragment for genres.
2020-09-27 09:47:53 -06:00
OxygenCobalt
21626d8d74
Add genres to LibraryFragment
...
Add a genre mode to LibraryFragment.
2020-09-27 08:24:11 -06:00
OxygenCobalt
5191220bc0
Update album items/details
...
Update the ArtistDetailFragment album item to show the year instead of song count. Update AlbumDetailFragment to show year, song count, and total duration.
2020-09-26 13:57:15 -06:00
OxygenCobalt
f754a82ba7
Enable albums on LibraryFragment
...
Readd album support to LibraryFragment.
2020-09-26 11:34:39 -06:00
OxygenCobalt
fddf5e4472
Remove excess zeroes from durations
...
Remove excess zeroes from the formatted durations.
2020-09-26 10:58:30 -06:00
OxygenCobalt
531825465f
Add back navigation to detail fragments
...
Add backwards navigation to the DetailFragment toolbars.
2020-09-26 09:59:18 -06:00
OxygenCobalt
2a6fd45b8b
Disable SortButton when theres one item
...
Disable the SortButton when theres only one item in the RecyclerView.
2020-09-24 17:08:41 -06:00
OxygenCobalt
35814c5b40
Add sorting to AlbumDetailFragment
...
Add sorting to AlbumDetailFragment. Ignore the other commit.
2020-09-24 16:31:07 -06:00
OxygenCobalt
35e186d8a9
Remove sorting modes
...
Remove the sorting modes from the detail fragments. They are somewhat useless there and would be better suited for LibraryFragment.
2020-09-24 16:00:47 -06:00
OxygenCobalt
ac3b3e7903
Fix sorting modes
...
Change the NUMERIC_DOWN sorting mode to actually sort by decending order, not ascending order.
2020-09-24 07:00:46 -06:00
OxygenCobalt
414e85153f
Add sorting
...
Add Alphabetical/Numeric sorting to ArtistDetailFragment.
2020-09-23 20:32:42 -06:00
OxygenCobalt
b80a3596b8
Store references to items in DetailViewModel
...
Store references to the artist & album inside DetailViewModel to prevent an artist/album search on every re-creation.
2020-09-23 15:42:06 -06:00
OxygenCobalt
f5d007267d
Remove sub-item sorting
...
Remove the sorting of the music models child items, its mostly redundant for now.
2020-09-22 20:18:18 -06:00
OxygenCobalt
6b56ce4ae8
Change parent artist navigation
...
Change the parent artist navigation so that its only enabled when an album is selected from LibraryFragment, otherwise dont enable it, as the user can just navigate up to see the parent artist.
2020-09-20 10:31:42 -06:00
OxygenCobalt
19a9ab4098
Add backwards navigation from album to artist
...
Add a way for AlbumDetailFragment to return to ArtistDetailFragment.
2020-09-20 09:51:12 -06:00
OxygenCobalt
a81860bed2
Fix bug w/Artist Images
...
Fix a bug where the app will crash if it attempts to load the artist image for an artist that has no albums.
2020-09-19 18:02:11 -06:00
OxygenCobalt
309ed2dcff
Update track number sizing
...
Use AppCompatTextView on the track number so that track numbers over 100 are not cut off. Sort of, track numbers over 100000 will be cut off, but I bet that will be rare in normal use.
2020-09-19 16:44:00 -06:00
OxygenCobalt
4d47dcd464
Update Accessibility
...
Update the content descriptions on the ImageViews.
2020-09-18 16:30:04 -06:00
OxygenCobalt
602cc2153f
Fix bugs w/music loading
...
Fix bugs with how genres/album names are displayed.
2020-09-17 19:55:55 -06:00
OxygenCobalt
ec45a020a5
Add song list to AlbumDetailFragment
...
Add a list of the albums songs to AlbumDetailFragment.
2020-09-17 15:20:41 -06:00
OxygenCobalt
20047313fc
Add album detail fragment
...
Add a fragment for album details.
2020-09-17 14:52:40 -06:00
OxygenCobalt
ebc5aac011
Update resources
...
Update layouts to not assign a primary color through the tools namespace anymore, also bring back the light theme, which apparently disappeared at some point.
2020-09-16 07:00:55 -06:00
OxygenCobalt
f3e47414b0
Add header to artist albums
...
Add a header to the album RecyclerView in ArtistDetailFragment.
2020-09-14 18:13:33 -06:00
OxygenCobalt
47aec7f18a
Add album list to ArtistDetailFragment
...
Add a list of the artists albums to ArtistDetailFragment.
2020-09-14 16:22:24 -06:00
OxygenCobalt
0e6750b19c
Add more details to ArtistDetailFragment
...
Add the Artist Name/Genre/Counts to ArtistDetailFragment.
2020-09-14 15:06:10 -06:00
OxygenCobalt
26b53bd502
Add artist image to DetailFragment
...
Add the artist image to the DetailFragment. Still considering what I want to do design-wise with this.
2020-09-13 19:32:33 -06:00
OxygenCobalt
860033ac14
Remove generic recycler module
...
Remove the generic RecyclerView module and put its contents into other classes.
2020-09-11 10:44:41 -06:00
OxygenCobalt
02e803746b
Revert to normal navigation structure
...
Revert to a saner navigation structure for the time being. Nested nav is interesting but I dont want to deal with the bugs at this moment.
2020-09-11 10:23:32 -06:00
OxygenCobalt
5814907798
Change LibraryFragment to Nav Fragment
...
Change LibraryFragment to extend NavHostFragment, so that the child fragments arent as extensively nested as they were before.
2020-09-10 15:53:03 -06:00
OxygenCobalt
d7b9ec4281
Fix navigation bug
...
Fix a bug where pressing on multiple library items at once would cause a crash.
2020-09-09 19:15:39 -06:00
OxygenCobalt
f7e25d3fa8
Add navigation to LibraryFragment
...
Add navigiation to LibraryFragment. This navigation is nested so that one can still move through the ViewPager, which will certainly have no problems later on. /s
2020-09-09 19:01:28 -06:00
OxygenCobalt
49248f98d9
Fix LoadingFragment bug
...
Fix a bug where LoadingFragment would be minified out of existence.
2020-09-09 18:54:26 -06:00
OxygenCobalt
fe7557addb
Refactor RecyclerView files
...
Move Fragment-Specific adapters to their own files, keep the viewholders in the generic recycler package.
2020-09-09 16:58:53 -06:00
OxygenCobalt
4e57a94d3e
Fix bugs/code style
...
Fix a recreation bug where MainActivity wont hide LoadingFragment, Fix a bug where artist click listeners wouldnt work, slightly tweak code here and there.
2020-09-08 19:38:44 -06:00
OxygenCobalt
4b50b80af4
Minor fragment/coil fixes
...
Update LoadingFragment path to prevent a crash on startup. Also switch how CoilUtils handles ArtistImageFetcher so that it doesnt cause a memory leak.
2020-09-07 16:58:29 -06:00
OxygenCobalt
031815d746
Heavily refactor Library Management
...
Remove MusicRepository/All Library models and replace it with a single shared ViewModel, Move MainFragment into MainActivity, and remove the LoadingFragment -> MainFragment navigation path.
2020-09-07 16:16:08 -06:00
OxygenCobalt
e9ee9d1ef1
Standardize coil usage
...
Completely switch over to use ImageRequest.Builder instead of the load extension function, spin off the Artist Image fetcher & Image BindingAdapters to a seperate module.
2020-09-07 10:52:07 -06:00
OxygenCobalt
a93c0f4af3
Add artist images
...
Add artist images back, now with proper mosaics.
2020-09-07 09:34:19 -06:00
OxygenCobalt
016d664e51
Update Music Loading
...
Slightly tweak the music models, use plural strings when formatting args, and properly sort the music items after everything else is sorted.
2020-09-06 18:52:20 -06:00
OxygenCobalt
565d1efa96
Minor music model changes
...
Move the size recalculations/child item sorting to a method called finalize() in artists, albums, and genres. Also remove the artist images for now, Ill figure out a good way to bring them back.
2020-09-04 18:28:11 -06:00
OxygenCobalt
7a2c779fe2
Add Artist item
...
Add the Artist item and switch LibraryFragment over to it.
2020-09-04 17:13:02 -06:00
OxygenCobalt
139cf3c089
Add basic transitions/animations
...
Add animations to all LoadingFragment & a transition from LoadingFragment to MainFragment.
2020-09-04 14:39:51 -06:00
OxygenCobalt
e59009a0fa
Update gradle build settings
...
Update build settings to remove useless libraries [AppCompat], add useful libraries [LeakCanary], and also enable minifying on the release build [Which hadnt been enabled before somehow].
2020-09-04 12:19:36 -06:00
OxygenCobalt
4b3285cef0
Change RecyclerView divider color
...
Change the RecyclerView divider color to not require any transparency changes through ThemeUtils.
2020-09-03 19:25:11 -06:00
OxygenCobalt
d017774cef
Fix bug with permission checking
...
Fix a bug with the permission checking where the MusicRepository would return NO_PERMS to the LoadingFragment faster than the creation of the view, causing the error message to never display. Permission checks are now handled by LoadingFragment instead.
2020-09-03 18:15:44 -06:00
OxygenCobalt
ce687cd515
Change selection ripple to accent color
...
Change the selection ripple so that it matches the chosen accent color.
2020-09-03 07:50:17 -06:00
OxygenCobalt
5827ca492c
Add click listeners to Song/Album items
...
Add the ripple selection effect & the click listener to the song and album items.
2020-09-02 19:50:47 -06:00
OxygenCobalt
af26aed735
Add permission dialog for file reading
...
Add a permission dialog for the apps READ_EXTERNAL_STORAGE permission.
2020-09-02 18:00:52 -06:00
OxygenCobalt
5e6917f11c
Update LoadingFragment layout
...
Update the layout of LoadingFragment with a new error icon/text style.
2020-09-02 16:50:33 -06:00
OxygenCobalt
8f850f2288
Add theming system
...
Standardize theming across the app into ThemeUtils.
2020-09-01 07:37:49 -06:00
OxygenCobalt
d5e6b813a9
Add bottom menu
...
Add a tab menu on the bottom of the screen that can switch between all fragments on the ViewPager.
2020-08-31 18:55:25 -06:00
OxygenCobalt
736e335ccf
Add Genre sorting & better placeholders
...
* Add Genre sorting to MusicSorter.
* Revamp placeholders so that theyre assigned when loading instead of using a BindingAdapter.
2020-08-31 16:13:30 -06:00
OxygenCobalt
d158fc5786
Add proper placeholders
...
Add placeholders for album art, artist name, and album name if there arent any from the file itself.
2020-08-31 14:47:06 -06:00
OxygenCobalt
16038567dd
Add song durations
...
Add song durations to the SongItem layout
2020-08-31 13:59:18 -06:00
OxygenCobalt
dc45e2973a
Add ellipsizing to song/album items
...
Add ellipsizing to the song and album items, also modify their inflation so that the items take up the entire screen width.
2020-08-31 07:53:41 -06:00
OxygenCobalt
c8f7419833
Update RecyclerView item layouts
...
Update the song/album items to have the cover art be loaded by a BindingAdapter, and remove unnecessary chains.
2020-08-29 09:05:00 -06:00
OxygenCobalt
53710ca3f0
Remove useless ListAdapters
...
Remove unnecessary ListAdapter implementation from AlbumDataAdapter/SongDataAdapter and replace it with a normal adapter.
2020-08-27 17:27:58 -06:00
OxygenCobalt
eafc89a294
Fix RTL constraints for Album/Song items
...
Fix incorrect constraints when viewing an album or song item in Right-To-Left mode.
2020-08-27 07:49:32 -06:00
OxygenCobalt
c9875a03a9
Add All Songs fragment
...
Add an All Songs fragment, also modify the ViewPager structure.
2020-08-26 17:55:26 -06:00
OxygenCobalt
c109c3f359
Add ViewPager
...
Add a ViewPager, currently it has no purpose but it will eventually.
2020-08-26 16:17:04 -06:00
OxygenCobalt
d9dda08731
Move album art loading to Coil
...
Move the album art loading to Coil to decrease initial loading times.
2020-08-25 18:37:00 -06:00
OxygenCobalt
89398d9f4e
Add RecyclerView dividers
...
Add divider decorations to the RecyclerView
2020-08-25 18:03:58 -06:00
OxygenCobalt
a6e8007972
Update styling/colors
...
Update the styling and add some colors that will be used as the base theme set in the future.
2020-08-25 17:56:19 -06:00
OxygenCobalt
f511cfd161
Add song count/Styling changes
...
Add a song count to the album item, along with updating the font once again to differentiate myself from Music Player GO.
2020-08-24 19:01:28 -06:00
OxygenCobalt
1e4f80b779
Change app style
...
Update the app style by modifying some colors & using Source Code Pro. Yes, this looks like Music Player GO but Ill probably make some more changes in the future.
2020-08-24 17:33:02 -06:00
OxygenCobalt
5662725c72
Add cover art to album list item
...
Add cover art to the album list item.
2020-08-24 16:46:40 -06:00
OxygenCobalt
acef9550fa
Move LiveData away from MusicRepository
...
Change the LiveData in MusicRepository to just be a plain list, as MusicRepository isnt Lifecycle-Aware.
2020-08-24 15:07:19 -06:00
OxygenCobalt
c04a90c3fa
Add RecyclerView to LibraryFragment
...
Add a basic RecyclerView to LibraryFragment that shows every album.
2020-08-24 14:53:13 -06:00
OxygenCobalt
37b071de0d
Add album art loading
...
Add album art loading by decoding the album art URI into bitmaps for each album. I may use glide in the future if just using a bitmap isnt enough, but currently this works.
2020-08-21 17:47:56 -06:00
OxygenCobalt
f07542fd3a
Minor Logging/Structure changes
...
Switch logging to templates instead of concat, move MusicLoader/MusicSorter to their own package, rename GenreCompat to MusicUtils
2020-08-21 14:53:00 -06:00
OxygenCobalt
ef9d097dc3
Minor nullability/Logging changes
...
Remove nullables from all the music models, just so that theyre easier to work with, also update Logging at places.
2020-08-21 12:17:15 -06:00
OxygenCobalt
b1be2802cf
Rewrite Music Loading a g a i n
...
Rewrite the music loading for [hopefully] the final time, now with Artists/Albums/Media instead of just AudioColumns, improved genre loading, and easier to implement album-art. Hopefully this system will stick.
2020-08-21 11:51:07 -06:00
OxygenCobalt
160013bbe9
Add [Very hacky] genre support
...
Add a way to load genres! Except it creates duplicates. And requires creating like 20 music cursors. At least it works?
2020-08-21 09:43:22 -06:00
OxygenCobalt
f8ae5d57a5
Remove cover/genre loading
...
Remove the cover loading [For now] and permanently remove the genre loading, as both take too long to do in the loading screen. Will re-add album loading once more UI is added.
2020-08-19 16:38:43 -06:00
OxygenCobalt
6508280900
Break up MusicRepository into seperate files
...
Remove the loading/sorting functions from MusicRepository and place them into their own files.
2020-08-19 11:14:20 -06:00
OxygenCobalt
24452e8fa4
Add Loading fallback states
...
Add fallback states for when there is no music & if the load fails, along with a retry button if that happens.
2020-08-19 10:10:36 -06:00
OxygenCobalt
1b21552576
Add Loading Screen
...
Add a basic loading screen that loads the music in the background before starting the app.
2020-08-19 09:28:15 -06:00
OxygenCobalt
3134e313a3
Move MusicRepository initialization to coroutine
...
Move the init call to MusicRepostiory to a coroutine so that it doesnt stop the UI thread.
2020-08-18 15:33:59 -06:00
OxygenCobalt
21a110edb0
Heavily rewrite/refactor MusicRepository
...
Rewrite MusicRepository to perform all metadata calculations by themselves, also adding support for Genre loading & Album Art.
2020-08-18 15:22:12 -06:00
OxygenCobalt
a8b368b577
Add music sorting
...
Change MusicRepository so that all music is sorted into Artist/Album/Song lists.
2020-08-18 10:37:02 -06:00
OxygenCobalt
22e8049d6b
Add Music Loading
...
Add a Music Repository/Loader, along with a boilerplate ViewModel for LibraryFragment.
2020-08-17 15:21:14 -06:00
OxygenCobalt
9961b87f47
Refactor Now Playing into Library
...
Turns out a dedicated Now Playing screen wont look that good, so refactor that into the Library screen. Also replace the ActionBar with a Toolbar and update the theming a bit.
2020-08-17 11:28:23 -06:00
OxygenCobalt
7c447e0296
Add basic fragment structure
...
Add the boilerplate fragment code.
2020-08-17 10:32:28 -06:00
OxygenCobalt
675f4af41b
Add android boilerplate code
...
Add the Gradle/Android project structure and the boilerplate code.
2020-08-17 09:52:52 -06:00