Commit graph

340 commits

Author SHA1 Message Date
OxygenCobalt
bb5d163f49
home: make fab size fixed
Make the shuffle FAB in the home UI a fixed size so that I don't have
to update padding based off of the screen config.
2021-11-02 19:39:40 -06:00
OxygenCobalt
b50a23a47f
ui: fix misc issues
Fix miscellanious code style/compat/ui issues.
2021-10-31 16:06:00 -06:00
OxygenCobalt
c1e1329c21
playback: make compact playback ui a view
Change CompactPlaybackFragment into a View. This completely fixes the
issue I tried to band-aid in ae39054. The code is a bit uglier, but
that's tolerable.
2021-10-31 11:14:04 -06:00
OxygenCobalt
68782fadac
ui: create dedicated playback bar layout
Create a dedicated playback bar layout. This replaces the old janky
observer system with something that handles state better and is just
more elegant.
2021-10-30 18:21:30 -06:00
OxygenCobalt
4f4f6654c0
widgets: re-add 2x2 widgets
Re-add 2x2 widgets. They were originally removed due to strange layouts
in landscape mode, but that has now been fixed with a new "tiny" layout
meant for that specific edge case. Also rename the widget forms to more
sensible names and make the small (previously minimal) widget be
text-only again.
2021-10-28 19:46:00 -06:00
OxygenCobalt
df49e2765f
music: refactor model usage
Refactor the way music models are constructed to achieve the following:
- Add a unified interface for resolving display names of artists
- Disambiguate the role of Header in the music objects
- Eliminate the need to load strings in with a context when creating
Header instances
2021-10-28 19:09:54 -06:00
OxygenCobalt
71480d0299
home: move shuffle control to fab
Instead of having a play/pause header at the top of the song list, use
a FAB instead. This allows people to shuffle all of their songs even if
the songs tab isn't enabled, and it can be tranformed into a create FAB
when playlists are added.
2021-10-24 10:17:55 -06:00
OxygenCobalt
97808ce1c3
home: merge fast scroller
Merge the fast scroller back into Auxio once again, albeit this time
it's AFS instead of IndicatorFastScroll. This not only slims down the
implementation but also allows me to stop the scroller from appearing
every time the home view is recreated. All modifications were noted
and attribution is included to abide by the Apache 2.0 license.
2021-10-23 18:22:50 -06:00
OxygenCobalt
b2f20bec30
style: improve material you usage
My phone has just updated to Android 12, and Auxio looks very out of
place compared to the other themed APIs. Improve the usage of Material
You on the app icon and the widgets so that they line up a bit more.
Can't fully commit though since sometimes the colors can't be
replicated or because they don't look very good.
2021-10-19 20:43:23 -06:00
OxygenCobalt
23d1be8ebc
home: add tab customization
Finally add tab customization. This implementation is a
bit ugly, but I had to futureproof it for playlists and I'm
planning to clean up a lot of the duplicate code across the app.

This addition notably allows a default tab to be set, which is
something that was widely requested in #12. This UI rework finally
allows it to be added.
2021-10-17 20:27:16 -06:00
OxygenCobalt
a253cfccc4
home: add fast scroller
Add a new fast-scroller to the home view. This required some annoying
hacks to work, but it seems to work pretty well.
2021-10-13 19:49:20 -06:00
OxygenCobalt
7ef10fa4f8
search: collapse uis into single bar
Merge the search view and the redundant appbar into a single view. Also
fix another Material3 regression that stemmed from a bad text highlight
color.
2021-10-12 18:29:54 -06:00
OxygenCobalt
2d5c438c58
playback: improve queue ui
Improve the queue UI some more:
- Fixed an issue where clearing the user queue by clearing all items would
result in it bugging out
- Queue items now show a Material-y background when they are swiped
away. This was way harder than you might think it was.
2021-10-11 20:32:23 -06:00
OxygenCobalt
e123999e4d
drawable: update icon
Update the app icon to reflect the new accents. Also move around some
things to make it easier to add dynamic colors later on. Don't make it
follow dynamic colors right now however, as I want to make sure it
lines up with the dynamic pixel icons before I make that change.
2021-10-11 18:54:26 -06:00
OxygenCobalt
8c7f0867f9
style: migrate to Material3
Mostly migrate to Material 3/Material You.

- Auxio should now follow dynamic colors on Android 12
- Accents have been regenerated to align with the new color roles
- Some colors have been tweaked here and there to line up with the
new design system
- Dialogs were not fully migrated, but that's because Material3 dialogs
look god-awful.
- Accent class was reworked to take up less memory

Now that this is out of the way, I can focus on other UI things before
the release of 2.0.0.
2021-10-10 16:44:17 -06:00
OxygenCobalt
5ebe17d0ad
playback: make dedicated seekbar view
Make a dedicated seekbar view so that does the layout magic necessary
to have an adequate touch target while not taking up too much space.
Isolating this makes handling the playback layout's view much easier.
2021-10-05 19:32:35 -06:00
OxygenCobalt
d0835c3a0c
detail: fix genre sort issue
Fix a problem where GenreDetailFragment would apply ASCENDING when
ARTIST was selected in the sort menu. Turns out it was a bad constant
match.
2021-10-03 18:39:49 -06:00
OxygenCobalt
7e32763662
ui: misc ui updates
Do a couple of UI changes I thought of over this week:
- Make the detail header text neutral, mostly so I can make it so that
the accent only corresponds to active thingsd
- Remove the vanity elevation from the cover images. This is mostly to
abide by Material Design.
- Move the about screen to it's own menu slot on the main fragment.
2021-10-01 20:17:48 -06:00
OxygenCobalt
23399be0c3
ui: make tablayout text lowercase
Make the TabLayout text lowercase, which seems to be what Material3
does by default (and it looks better anyway).
2021-09-29 06:21:10 -06:00
OxygenCobalt
a820724ff2
ui: increase seekbar height
Make the seekbar more touchable by increasing it's height. This should
have no measurable impact since I did some layout black magic and made
the rest of the layout slightly inset into the SeekBar's bounds. This
is not a nice solution. Hopefully I'll be able to make a dedicated view
with a Seeker with the same insetting things later on.
2021-09-24 20:39:10 -06:00
OxygenCobalt
68b8ff0798
ui: become more material
Give up and add more material elements such as neutral toolbar colors
and rounded corners. This is largely for stylistic cohesion. I will
keep rounded corners to a minimum though, rounding album covers is a
crime against humanitity.
2021-09-24 19:46:42 -06:00
OxygenCobalt
b2ebd92d2a
ui: fix ellipsizing of certain textviews
Fix a problem where ellipsizing wouldn't work on the new TextView
styles.
2021-09-21 06:41:35 -06:00
OxygenCobalt
443c26fe98
styles: refactor style methodology
Refactor the styling again to make all styles start with the Auxio
prefix. Also try to phase out the usage of layout_width and
layout_height in most places, since those can cause a lot of
frustration if they aren't used in the layout they are expected in.
2021-09-14 20:16:55 -06:00
OxygenCobalt
bc6bba56fc
widget: update preview
Update the widget preview to reflect the UI tweaks made.
2021-09-12 17:33:48 -06:00
OxygenCobalt
08169b6167
ui: clean up dead code
Clean up the last remaining legacy SortMode remnants. Also reformat all
ViewHolder IDs to be properly unique and sequential.
2021-09-12 17:06:06 -06:00
OxygenCobalt
c9dd3b97a2
ui: fix dialog issues
Remove some more redundant dialog styles and fix an issue where
preference dialogs would crash when the screen is rotated.
2021-09-12 16:13:53 -06:00
OxygenCobalt
744e4172f3
ui: improve misc ui elements
Make some minor UI tweaks across the app.
2021-09-11 20:54:36 -06:00
OxygenCobalt
0e0be19e1d
detail: refactor module
Completely refactor the detail module. This is for a few reasons:

- Prevent data regeneration every time a fragment re-creates.
- Make DetailModel follow the customs of other ViewModels.
- Simplify layouts into a single detail item to reduce code
complexity.

Currently sorting doesn't work, but that is still being worked out
as the legacy SortMode continues to be phased out of Auxio.
2021-09-11 17:40:19 -06:00
OxygenCobalt
dae334b1d6
home: re-add sorting
Re-add sorting to HomeFragment, except heavily improved. The major
improvement here is the addition of song sorting, which was a heavily
requested feature judging by #16. The setting does not save yet and
is not present in the detail fragments, but it is still a major
milestone for the new home ui.
2021-09-05 16:11:37 -06:00
OxygenCobalt
0fc8f1cd02
ui: clean up colors
Further clean up coloring, adding new selectors to cut down on resource
duplication and to simplify logic in general.
2021-09-04 22:46:11 -06:00
OxygenCobalt
34367b3bae
ui: fix material issues
Migrate dividers over to material theming alongside making detail items
use a colorStateList instead of manually indexing for text colors.
2021-09-04 19:31:28 -06:00
OxygenCobalt
23e3c0241d
ui: completely migrate to material
Drop the Bridge theme and completely migrate to material. This is for
two reasons:

- To make Material You less painful
- Improve coloring [Dark mode, other colors, etc].

Most of the previous UI elements were kept [no rounded corners], but
did come at the cost of removing the hint tagline from the search bar
since there was simply no good way to integrate it. There are also
some other miscellanious issues [Weird selection menus, dividers are
not migrated still], but those will be fixed in future commits.
2021-09-03 20:37:32 -06:00
OxygenCobalt
74d55ba59e
home: make appbar liftOnScroll
Make HomeFragment's AppBarLayout lift when the data scrolls. This
was something I wanted to do initially, but kept running into issues
with. Turns out the addition of my custom AppBarLayout made this pretty
trivial all things considered. The entire app now follows this idiom.
2021-09-03 18:02:57 -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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
a849d00248
Cleanup code
Clean up the formatting/structure of the codebase.
2021-05-02 18:49:16 -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
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
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
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
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
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
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