finamp
finamp copied to clipboard
[FEATURE REQUEST] AMOLED Mode (Pure Black Background)
Type:
- [x] New feature
- [ ] Improve or extend an existing feature
- [ ] Other:
Explanation
It would be nice to have an AMOLED Mode toggle below the Theme Dropdown Selector. I'd make it opt-in - disabled by default - so people don't see a difference except they want to. I am aware of #220, but this issue seems to be quite old, meaning it was before the redesign.
Reasoning
If someone has an (AM)OLED display, the experience is, in my opinion, way better with a pure black theme.
Implementation Notes
amoled https://github.com/jmshrv/finamp/commit/8c6139158f1367839e10c89ecb29de324401d100 I already tried to implement it as far as I could, but I couldn't test it. Flutter just doesn't work for me...
Thank you in advance, have a great day!
What sort of issues were you having with flutter? I don't think the main branch builds with flutter 3.32, which probably doesn't help. You want to be working off of the redesign branch. I've ported your changes to the redesign branch if you want to play around with that https://github.com/Komodo5197/finamp/commit/ecbd6a81a005a591b2cf3dbe113ce78ad9deab14. Your color scheme seems to have a bit of a contrast issue, at least on this branch.
Thank you @Komodo5197!
I'm completely new to flutter and this codespace, so I tried my best. I didn't new that the main branch wasn't the newest, should have looked more carefully.
For the color scheme, I just changed some values of the darkTheme to even see if something changed. Like a proof of concept without the proof. :)
I tried Flutter before, but always got issues, so I just never used it. Even the GitHub workflow failed to build, so I just gave up and opened an issue instead of a pr.
I think if it's just an additional color scheme we can absolutely add it. But the true blacks will most likely be destroyed by the accent colors and blurs. Not sure if that's an issue? It will probably look good, but won't really help with battery life :)
I think if it's just an additional color scheme we can absolutely add it. But the true blacks will most likely be destroyed by the accent colors and blurs. Not sure if that's an issue? It will probably look good, but won't really help with battery life :)
Yeah, I'd be happy if at least the main background is black. Dark gray and black are a major difference at least in Amoled.
I don't mind the accent colors etc. and I don't really care for the battery life. Thank you for considering it.
If I can help in any way, just let me know. (Maybe I get the real branch to build.)
Have a great day!
I looked at adding a third scheme but idk how to add one, the library only supports light and dark :( Doing a bool like suggested is kinda meh, that doesnt really allow to easily add more themes
Edit: After going deeper into the code it seams like there is even more to themes than I thought. I would have said I make the dark/light theme as a variable based on a ref.watch but in the main build method there is an explicit comment to not do that. I dont think I can get any further with my current knowlage xd
Hey @flloschy,
this is the best solution I found for now, but as you said, it's probably not the best. Using a variable for system/light/dark and another bool for amoled. You can add another toggle for amoled or do it how I did it in my app (OpenBible): Hide it in one selection, so the user sees amoled as a fourth option.
Have a great day!
We could also have an "use amoled theme in dark mode" setting, so that features like syncing with system theme still work?
We could also have an "use amoled theme in dark mode" setting, so that features like syncing with system theme still work?
This is probably the best approach, and exactly what another app I'm working on does. It could be a simple toggle below the theme drop-down them.
Hey, this was my initial suggestion and the solution I tried to implement, but Im not sure wether this solution is better or worse then another "Theme".
Have a great day!