Skip to content

Commit f3e032b

Browse files
WhiteVermouthclaude
andcommitted
πŸ“ Drop stale theme-change listener from docs
The Islands editor-scheme mapping is now declared via the editorScheme key in each theme JSON; the runtime listener no longer exists. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
1 parent f9f4b05 commit f3e032b

2 files changed

Lines changed: 4 additions & 3 deletions

File tree

β€ŽAGENTS.mdβ€Ž

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## Project Structure & Module Organization
44
This repository is a Gradle-based JetBrains plugin project.
5-
- `src/main/kotlin/com/draculatheme/jetbrains/`: Kotlin plugin logic (startup activity, listeners, settings, notifications).
5+
- `src/main/kotlin/com/draculatheme/jetbrains/`: Kotlin plugin logic (startup activity, settings, notifications).
66
- `src/main/resources/themes/`: Theme assets (`*.theme.json` UI themes, `*.xml` editor color schemes).
77
- `src/main/resources/META-INF/plugin.xml`: Plugin metadata and registration.
88
- `docs/screenshots/`: Documentation and marketplace images.

β€ŽCLAUDE.mdβ€Ž

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ Three base variants and three "Islands" variants that wrap a JetBrains built-in
3232

3333
Each theme consists of two files in `src/main/resources/themes/`:
3434

35-
- **`*.theme.json`** β€” UI theme: named color palette under `colors`, component overrides under `ui`, icon color palette under `icons`. Islands variants add `"parentTheme": "Islands Dark"`.
35+
- **`*.theme.json`** β€” UI theme: named color palette under `colors`, component overrides under `ui`, icon color palette under `icons`. Each declares its editor scheme via the `editorScheme` key. Islands variants add `"parentTheme": "Islands Dark"` and point `editorScheme` at the reused base XML (e.g. `IslandsDracula.theme.json` β†’ `/themes/Dracula.xml`).
3636
- **`*.xml`** β€” Editor color scheme (syntax highlighting, gutter colors, etc.)
3737

3838
Colors in `.theme.json` are first defined in the `colors` block as named tokens (e.g., `accentColor`), then referenced by name in `ui`. Hard-coded hex values are also allowed where the named palette doesn't apply.
@@ -45,9 +45,10 @@ All source lives in `src/main/kotlin/com/draculatheme/jetbrains/`:
4545
- **`enums/DraculaVariant.kt`** β€” enum of all 6 variants with their display labels; used as the authoritative list throughout the plugin
4646
- **`settings/DraculaSettings.kt` + `DraculaState.kt`** β€” persistent app-level settings (currently stores the last-seen version to detect upgrades)
4747
- **`activities/DraculaStartupActivity.kt`** β€” runs on project open; compares stored version to current, fires install or upgrade notification
48-
- **`listeners/DraculaThemeChangeListener.kt`** β€” listens to `LafManagerListener`; when an Islands variant is selected, maps it to the corresponding base editor scheme (`_@user_<SchemeName>`) because Islands variants share editor scheme XML files with their base counterparts
4948
- **`notifications/DraculaNotification.kt`** β€” renders styled HTML notifications for first install and version upgrades
5049

50+
Islands variants share editor scheme XML with their base counterparts via the `editorScheme` key in their `.theme.json` (see [Theme file structure](#theme-file-structure)); there is no runtime listener performing the mapping.
51+
5152
### Release workflow
5253

5354
Releases are triggered by pushing any `v*` tag. CI (`build.yml`) builds the plugin, creates a GitHub Release with the zip artifact, then publishes to the JetBrains Marketplace using the `JETBRAINS_TOKEN` secret.

0 commit comments

Comments
Β (0)