currently they only way to use an IntelliJ theme i...
# jewel
g
currently they only way to use an IntelliJ theme in a standalone jewel application is by generating a ThemeDefinition at build time (via https://github.com/JetBrains/jewel/blob/main/buildSrc/src/main/kotlin/org/jetbrains/jewel/buildlogic/theme/IntelliJThemeGeneratorPlugin.kt), is there any interest in a PR to expose some of that UI descriptor parsing code to make it possible at runtime or is it something that should live outside of jewel upstream?
s
Hi Gary, I think that could be interesting, however, it should be in a separate module. Are you thinking about providing runtime custom theming?
It is a non-goal for us for now, since it's not technically possible in Int UI right now and it's sort of undefined how that looks like in practice
g
Are you thinking about providing runtime custom theming?
yeah, that's right, just for compatibility with some existing IntelliJ theme plugins that users might want to use (admittedly I'm not sure how that might look or which ones might be compatible with the new UI either, I've always stuck to IJ's stock dark themes). I'll write it in a separate module for now and see how it actually looks in practice, maybe it can be useful to others in the future
👍 1
s
To be clear, in the bridge module, we do reflect IDE themes just fine, both old and new UI ones. It's only standalone who has hardcoded Light and Dark themes, since those are right now the only Int UI themes that exist officially
g
yeah, I suppose this is only useful for standalone apps where IJ's theming machinery like JBColor, etc. isn't available. I think what I'll do is implement
ThemeDescriptor
for something that wraps the same
IntellijThemeDescriptor
that the jewel buildscripts use
💯 1