Version 1.5!! New Features Already?


Dev Log — Super Color Picker v1.5

Why this release

Two big goals drove v1.5:

  1. eliminate all dialog “jitter” and resize surprises, and

  2. turn the Wheel into a serious, precise editor (with HSL) while restoring the visual shade cues users loved.

Headline changes

1) Pro Wheel + HSL controls

  • New Hue° / Sat% / Light% sliders live in the Wheel dialog.

  • Reset HSL restores the Wheel to the exact state it had when you opened it (no more partial resets).

  • Dragging on the wheel previews instantly; the actual commit happens on release. This keeps the main dialog stable and avoids thrash.

2) Shade markers

  • Inner ring shows your Base ramp’s shades radiating toward the center.

  • This was a key visual aid in earlier builds; it’s back and integrated with the new Wheel.

3) Hard width lock everywhere

  • The main dialog now enforces a fixed width after every UI change (recompute, hover info toggle, canvas reflow, and Wheel picks).

  • Result: zero jitter, even when text labels or hover info change.

Stability & refactors

  • Nil-call crashes fixed:

    • recomputeRamps() is defined before any use.

    • Hover state is cleared during recompute so c is never nil in draw paths.

  • Prefs are safer: All reads/writes to app.preferences.super_color_picker are guarded with pcall.

  • Hover info is optional: Value overlay defaults OFF to reduce width churn and noise.

Performance notes

  • Anti-aliased, better-looking wheel rendering; shade markers are composited efficiently.

  • Known trade-off: on very old hardware, full-quality wheel redraws may feel heavier. The main dialog remains smooth.

QA checklist (done)

  • Toggle Auto FG on/off with frequent FG changes → no layout shift, ramps recompute correctly.

  • Toggle Compact mode repeatedly → width stays locked, canvases reflow to the correct size.

  • Drag/release on wheel → preview during drag, commit on release, main dialog width unchanged.

  • Extreme slider cases: Min Δ = 1 and 20, Step° = 5 and 45, Slope = 0–10% → no crashes, ramps remain legible.

  • Open/close Wheel repeatedly → HSL reset works, markers obey toggles, no cumulative drift.

What changed under the hood (high level)

  • Bridge ramp builder: Computes hue delta in [-0.5, 0.5] (shortest arc) and distributes steps evenly, with an optional mid-balanced value slope.

  • Lock helper: Centralized width-locking routine is now called after any path that might mutate the layout (including wheel-event commits).

  • Hover state: Defensive resets whenever ramp arrays are rebuilt.

Known limitations (tracked)

  • The Wheel’s rendering is more detailed now; on some systems it can feel heavier during continuous drags (preview path mitigates this -work in progress).

  • Shade markers are always tied to the Base ramp by design.

Credits

  • Feature design & direction: William P. McCollom (FBEpyon)

  • Code assistance & documentation polish: AI pair-dev support

If you want this dev log dropped into your repo as DEVLOG.md or converted into a GitHub release note body, say the word and I’ll format it accordingly.

Get Super Color Picker for Aseprite (Script)

Download or claim
On Sale!
100% Off
$15.00 $0.00 USD or more

Leave a comment

Log in with itch.io to leave a comment.