diff options
| author | Craig Jennings <c@cjennings.net> | 2026-06-09 05:16:00 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-06-09 05:16:00 -0500 |
| commit | d947944bbe358f1a50c58b97a129642e68b7e7c5 (patch) | |
| tree | 1be76039a0738778a2287101fc26b4e84e0068a0 /scripts/theme-selector | |
| parent | 947d146a9692c8b17aca92b3e66772611ac3b598 (diff) | |
| download | dotemacs-d947944bbe358f1a50c58b97a129642e68b7e7c5.tar.gz dotemacs-d947944bbe358f1a50c58b97a129642e68b7e7c5.zip | |
refactor(theme-studio): unify the syntax table onto the shared sort
The syntax table had its own sort (srt + a D{} direction map) that read state directly — MAP[kind] for the color column, cell text for elements. The UI and package tables used a separate, more general system (srtTable / cellVal / applyTableSort) that reads the rendered cells. Pointed the syntax headers at srtTable('legbody', col) and deleted srt, so all three tables share one sort.
The mapping is exact: the legtable color cell is a swatch dropdown whose data-val is the hex, which cellVal reads — same key srt sorted on — and the elements cell is text. First-click direction stays ascending. The syntax table sorts on click only; it doesn't opt into the cross-rebuild persistence the UI and package tables get from applyTableSort, which preserves its prior behavior.
Added a #sorttest gate: sort was previously untested, and this collapses two systems into one. It checks the syntax table sorts by color ascending, reverses on a second click, sorts by element name, and that the UI and package tables still sort. The asc/desc pair is self-validating — a no-op sort can't pass both.
Diffstat (limited to 'scripts/theme-selector')
0 files changed, 0 insertions, 0 deletions
