Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Theme / Style Editor #637

Closed
icd-t opened this issue Jan 6, 2024 · 1 comment
Closed

Theme / Style Editor #637

icd-t opened this issue Jan 6, 2024 · 1 comment
Labels
feature The current behaviour is acceptable, but could be better

Comments

@icd-t
Copy link

icd-t commented Jan 6, 2024

Issue

The current app is serviceable, however it is not "pretty." Unfortunately simply changing the theme of the app probably wont satisfy everyone.

Solutions

I don't know the ins and outs of android software development, so I propose two solutions:

  1. CSS Style editor in the settings menu. No fancy menus are required, just a simple text editor for people with some experience to edit the look of the game.
  2. If the app is built in a way that it cant use CSS, I propose a JSON file editor. Similar to the CSS editor above, it could be a simple text editor in the settings menu. However, instead of CSS it could edit a JSON file that controls values such as primary colors, background colors, corner radii, etc.

Optional Ideas

If one of the solutions above is added to the game, here are some optional add-ons to make it batter:

  1. Revert to default button
  2. Profile save slots
  3. Text re-sizing
  4. Material You theme
  5. Menu icon sets
  6. Custom fonts
  7. Custom thumbnails
  8. Custom win animations
@icd-t icd-t added the feature The current behaviour is acceptable, but could be better label Jan 6, 2024
@chrisboyle
Copy link
Owner

Hi, thanks for your suggestion.

The app doesn't use CSS. It's built with Views, and I'm gradually looking at how to convert it to Compose. I'm still quite new to Compose but I don't think it provides an easy way to do dynamic runtime theming based on user preferences in the way you've described (even if you assume the user is comfortable editing JSON or whatever other syntax). The one exception I know of is the "Material You" feature which will, with OS assistance, match the UI colours (outside the game canvas) to the system wallpaper as per other apps.

That's not to say it couldn't be done, only that I will likely never have time to do it myself, and any third-party contribution to add it would have to be to a high standard of quality and not impede maintainability of the app too much.

(Note that colours within the main game canvas area are a separate issue, #20, which Simon is already working on upstream, so there's no point duplicating that part on Android.)

I think, realistically, I'll close this for now, at least until someone can point to either an MIT-licensed (not GPL/Apache) library that provides this for Compose with minimal effort, or until someone with the relevant experience proposes to implement it themselves.

@chrisboyle chrisboyle closed this as not planned Won't fix, can't repro, duplicate, stale Feb 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature The current behaviour is acceptable, but could be better
Projects
None yet
Development

No branches or pull requests

2 participants