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

Millennium for Steam #297

Closed
madmaxgrey opened this issue Feb 4, 2025 · 9 comments · Fixed by #300
Closed

Millennium for Steam #297

madmaxgrey opened this issue Feb 4, 2025 · 9 comments · Fixed by #300

Comments

@madmaxgrey
Copy link

https://steambrew.app/

if you port this theme to millennium you can theme all the websites such as the store commuinty pages etc.. we support webkit with our way of doing stuff, and you also don't have to worry about this here either, when steam updates you do not need to repatch >Steam updates may reset theme: While the installer will patch steam files in order to theme the interface, these files may be reset by steam updates. If this happens, you will need to reinstall to repatch them.

@madmaxgrey
Copy link
Author

we keep getting people coming to our server asking about this theme, if you do port it to millennium you can also have it added to our themes page for 1 click install

@madmaxgrey
Copy link
Author

also with millennium you can provide Settings with the theme allowing people to be able to switch color schemes without rerunning your patcher

Image

@tkashkin
Copy link
Owner

tkashkin commented Feb 5, 2025

@madmaxgrey

Seems to mostly work with skin.json in 7c50aec (millenium branch).
There are some issues I don't have the time to fix right now (PRs and suggestions are welcome):

  • Window control button positions are now generated by the installer script to allow any button to be in any position (including left side of the headerbar). Millenium version will probably either:
    • require a lot of button position presets - that's how it was before. I don't like that and someone will always want more presets.
    • require some JS code if it even can read Millenium options - I also don't like that if we can avoid it.
    • only support an extremely limited set of button position presets - also not ideal.
  • RootColors customization conflicts with color themes. Possibly can be solved by slapping a bunch of !important to all colors in all color themes. Don't know if it will work, no time to test that right now.
  • colors.css has some alpha values and a var() reference which can't be parsed by Millenium. It breaks some shadows and possibly something else I haven't noticed yet.
  • UI added by Millenium is a bit broken and will need some fixes.

@madmaxgrey
Copy link
Author

madmaxgrey commented Feb 5, 2025

yeah the UI part of millennium is getting changed in a upcoming update so that issue will be fixed so those bugs won't be an issue, also JS is optional full on themes can be made solely with CSS

Millennium is getting its own Window and won't be in the main steam settings window instead you would click on Millennium Settings which will be under Settings, it will have better ways of checkign for errors regarding themes plugins and millennium its self

also thank you for porting

@tkashkin tkashkin marked this as a duplicate of #299 Feb 6, 2025
@tkashkin
Copy link
Owner

tkashkin commented Feb 6, 2025

Some of the previously mentioned issues are fixed in 0c99f5a.

I still don't know what to do with window control buttons, but now at least millennium version should match skin's defaults (single close button on the right).

@shdwmtr
Copy link

shdwmtr commented Feb 9, 2025

Are these and custom left/right the only window button styles?

If so, that could be a drop-down, and I could see about adding an input text for custom left and right values.

@tkashkin
Copy link
Owner

tkashkin commented Feb 9, 2025

@shdwmtr
These are the default presets, but skin supports any arbitrary : and , separated window button layouts.
Any button can be on any side in any order. You can pass a layout to the installer as an argument, or a default will be chosen based on platform (and GTK settings on Linux).
Installer script then generates a bit of CSS to position each button.

I don't think there's a way to fully replicate that in Millennium directly without injecting JS.
A choice of limited number of supported presets should be easy.

@shdwmtr
Copy link

shdwmtr commented Feb 9, 2025

Is there a specific reason you want to avoid JavaScript?

I'm open to suggestions about how to address something like this regardless.

@tkashkin
Copy link
Owner

tkashkin commented Feb 9, 2025

@shdwmtr

Is there a specific reason you want to avoid JavaScript?

No specific reason to avoid JavaScript besides the fact it wasn't required for anything before and pure CSS was enough.
Some people may also not like having to inject third-party JS code for such a minor feature, though most of them probably wouldn't be using any Steam client mods anyway.

I'm open to suggestions about how to address something like this regardless.

This case seems very specific and I don't see a generic solution that may be useful both here and for other themes.

I guess I'll make a few pregenerated presets for now and think about other solutions later if presets won't be enough and someone asks for more customization options.

@tkashkin tkashkin linked a pull request Feb 10, 2025 that will close this issue
@tkashkin tkashkin marked this as not a duplicate of #299 Feb 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants