Community icon indicating copy to clipboard operation
Community copied to clipboard

propose: accent colors and theme variants

Open tfuxu opened this issue 2 years ago • 0 comments

Proposal body

Implementing theme variants and accent colors into one preset file would tremendously reduce amount of preset files needed to create a full set of themes. This proposal expects support for different theme variants from default light/dark variants, and will allow up to 12 different accent variations (this limit is made due to future UI implementations for accent selection, but may be a subject for change in future). Implementation of custom CSS for different variations should be firstly discussed before making an addition into proposal, as it might not be actually needed (users might just use defined variables from above sections to change colors in custom CSS if needed).

Example Implementation

{
    "name": "My Preset",
    "author": "<your nickname or full name>",
    "description": "This is my awesome preset. Hope you'll like it :)",
    "variables": {
        # This proposal also allows for different theme variants from default light/dark variants
        "light": {
            ...
        },
        "dark": {
            ...
        },
        "colorful": {
            ...
        },
        ...
    },
    "accents": {
        # Supports up to 12 different accent variations
        "blue": {
            "accent_color": "#1c71d8",
            "accent_bg_color": "#3584e4",
            "accent_fg_color": "#ffffff"
        },
        "green": {
            "accent_color": "#1c71d8",
            "accent_bg_color": "#3584e4",
            "accent_fg_color": "#ffffff"
        },
        "purple": {
            "accent_color": "#1c71d8",
            "accent_bg_color": "#3584e4",
            "accent_fg_color": "#ffffff"
        },
        ...
    },
    "palette": {
        "blue_": {
            "1": "#99c1f1",
            "2": "#62a0ea",
            "3": "#3584e4",
            "4": "#1c71d8",
            "5": "#1a5fb4"
        },
        "green_": {
            "1": "#8ff0a4",
            "2": "#57e389",
            "3": "#33d17a",
            "4": "#2ec27e",
            "5": "#26a269"
        },
        ...
    },
    "custom_css": {
        "gtk4": "",
        "gtk3": ""
    }
}

Edit: Added author and description properties

Additional context

The implementation of theme variants and accent colors into one preset file has been discussed previously in team chats, this proposal simply combines some of those exchanged ideas and makes them into a single implementation.

Did you read the Code of Conduct?

tfuxu avatar Dec 21 '22 12:12 tfuxu