54e12efcae
The sliding active indicator positioned itself via Repeater.itemAt(), which returns null mid-rebuild; the fallback then stranded it at the top (looked like workspace 1 was active while the font correctly showed another). Cells are uniform, so compute the indicator's y arithmetically from the index instead. Also make monitorWsData's sort deterministic: numbered workspaces ascending, then named ones (e.g. joplin) alphabetically — parseInt alone yields NaN and an unstable order for named workspaces.