Giter VIP home page Giter VIP logo

Comments (8)

FelixBrakel avatar FelixBrakel commented on June 7, 2024 3

Not having time is just a fact of life when it comes to community projects so no worries, I was just trying to clarify.

It's not like I have the time to do dive into Kotlin and the development of this theme at the moment either.

from jetbrains.

marnym avatar marnym commented on June 7, 2024 3

The theme generation in Kotlin should be done. It was the regeneration on the fly which I never managed to do. Link to the code: https://github.com/isofore/jetbrains/tree/accent-colors.

Hopefully some of it would be beneficial to whomever might do the rewrite.

from jetbrains.

sgoudham avatar sgoudham commented on June 7, 2024 2

Heya @FelixBrakel, the plugin, unfortunately, doesn't support all the eye-candy/accent colours atm. You're right that the description is copied over from the main repository.

In order to support the recompilation on the go, I believe this repository will need a Kotlin rewrite. Something that I don't have the time to do at the minute. I think this should be tracked on GitHub so, if it's alright with you, I can turn this into a tracking issue to support all the different eye candy colours!

from jetbrains.

nekowinston avatar nekowinston commented on June 7, 2024 2

Do you mean the accent colors, similar to VSCode?
Eye-candy here just refers to the colors being pleasant to look at, copied from the main repo description.

We'd need to rewrite the current theme with compilation support in Kotlin, so that when the user changes the accent color, the XML is regenerated. Both @sgoudham and I don't feel comfortable enough with Kotlin to attempt this - we had offers from people wanting to rewrite it, but nothing has come to fruition yet.

from jetbrains.

marnym avatar marnym commented on June 7, 2024

I have made an attempt on solving this.

The problem I have encountered is how to re-generate the files on accent color selection. Since the theme files are in the resources directory they cannot be modified. It might be impossible to re-generate the files as long as the theme files are in the resources directory.

Another non-optimal solution would be to just generate all variants at build time, but this will create a lot of unwanted options in the theme-selection drop down.

from jetbrains.

FelixBrakel avatar FelixBrakel commented on June 7, 2024

The latter is the solution many other implementations of this theme are going for, I wouldn't mind it.

from jetbrains.

sgoudham avatar sgoudham commented on June 7, 2024

Hi @FelixBrakel @isofore, just revisiting this issue based on #92 (cc: @JosephAbbey)

I didn't take this into account at the time but if we were to generate XML's for each flavour, accent colour and italic/non-italic. That's actually 4 * 14 * 2 which is a massive 112 XML files to ship. This would severely impact people's ability to scroll through other themes that they have installed so, unfortunately, I don't think we can go ahead with that.

Going off the discussion within the discord, there may be scope in potentially uploading multiple versions of the plugin on the marketplace, resulting in 14 jars for each account colour. I'm currently unsure if there's a marketplace policy that prevents this but it might be our best bet at shipping different UI colours without diving into the Kotlin Rewrite.

We could limit the accent coloured jars to just GitHub Releases but the tradeoff is that users will have to install plugins from disk, and therefore will not receive updates from the marketplace for that plugin, meaning that the user is in control of managing any updates (which I'm not a fan of)

I'm interested in what others think? Honestly, I'm swaying more towards just putting effort into a Kotlin rewrite so that we're following JetBrains' solution to reloading the UI.

from jetbrains.

JosephAbbey avatar JosephAbbey commented on June 7, 2024

I think that the kotlin approach is the way forward, because it would actually be 4 * 14 * 14 * 2 if selecting a secondary accent colour is allowed (currently defaults to yellow).

from jetbrains.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.