diff options
| author | Craig Jennings <c@cjennings.net> | 2026-06-09 20:06:53 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-06-09 20:06:53 -0500 |
| commit | 35abac5bf53beb265282bd16fec6c5c2e2627cfb (patch) | |
| tree | 930c461a9746e109903cb14a7658b477d16c3e91 /scripts/theme-studio/test-app-core.mjs | |
| parent | 0c56d76c6e1bff97e52a60d27b783a664fefc24c (diff) | |
| download | dotemacs-35abac5bf53beb265282bd16fec6c5c2e2627cfb.tar.gz dotemacs-35abac5bf53beb265282bd16fec6c5c2e2627cfb.zip | |
feat(theme-studio): re-bind "(gone)" assignments when a name returns
Deleting a palette color leaves any assignment pointing at it showing "(gone)". Recreating a color with the same deleted name now re-points those stranded assignments to the new color, even when its hex differs, instead of leaving them stuck on the old hex forever.
Delete records the removed name and hex; the next add of that name re-points every reference (syntax map, UI faces, package faces) to the new hex and consumes the record. The registry clears on import so a stale name from a previous theme can't re-bind across a load. I pulled the re-point loop that update-selected already used into a shared helper. A #healtest gate covers delete-then-recreate-with-a-new-hex.
Diffstat (limited to 'scripts/theme-studio/test-app-core.mjs')
0 files changed, 0 insertions, 0 deletions
