aboutsummaryrefslogtreecommitdiff
path: root/modules/system-utils.el
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-08 21:05:21 -0500
committerCraig Jennings <c@cjennings.net>2026-06-08 21:05:21 -0500
commitf045f7b94ea4c73e6bbba13d12bef2591ae1a3c1 (patch)
tree4be22c7102cc3e322e91c0eeb9dcaf1cbec25158 /modules/system-utils.el
parent17e34ca79ac900a14f709e67eafe9cd17aa3c761 (diff)
downloaddotemacs-f045f7b94ea4c73e6bbba13d12bef2591ae1a3c1.tar.gz
dotemacs-f045f7b94ea4c73e6bbba13d12bef2591ae1a3c1.zip
feat(theme-studio): add an OKLCH edit mode to the picker
Perceptual-metrics Phase 4a. The picker gains an edit-model toggle (HSV / OKLCH) held in its own pkModel state, orthogonal to the existing AA/AAA contrast mask (pkMode). The two never share state: one is how you edit the color, the other is what constraint you mask. In OKLCH mode the picker shows L, C, and H as paired range and number inputs that drive the color through oklch2hex, updating the hex field, swatch, readouts, and the HSV cursor. When the requested chroma is out of sRGB gamut the dials snap to the reachable color and a "chroma clamped to sRGB" line appears. HSV stays the default, and the SV square keeps editing in HSV (the C×L plane is Phase 4b). An SV drag in OKLCH mode refreshes the dials so the two surfaces stay consistent. A #oklchtest headless guard asserts switching to OKLCH preserves the color, toggling the mask leaves pkModel alone, switching the model leaves pkMode alone, the dials drive the color to a known OKLCH target, and an out-of-gamut chroma raises the clamp status.
Diffstat (limited to 'modules/system-utils.el')
0 files changed, 0 insertions, 0 deletions