Fix queue handle cursor and Favorites column sorting (#974)

* fix(ui): pointer cursor on the queue collapse handle

The round handle is a click-to-collapse button but showed the col-resize
cursor like the seam strip. Use a pointer on the handle; the seam keeps
col-resize and a real drag still switches the body cursor to col-resize.

* fix(favorites): make Plays, Last Played and BPM columns sortable

The header marked these columns sortable (pointer cursor) but handleSortClick
gated on a separate, narrower column set, so clicks did nothing. Both the
comparator and the header now share one SORTABLE_COLUMNS source, so the
affordance and the behaviour can't drift apart again.

* docs(changelog): queue handle cursor + favorites column sorting (#974)
This commit is contained in:
Frank Stellmacher
2026-06-04 01:36:24 +02:00
committed by GitHub
parent 0d479f3bfa
commit 3be8c367dd
4 changed files with 17 additions and 5 deletions
+5 -2
View File
@@ -6,8 +6,11 @@ import { usePlayerStore } from '../store/playerStore';
const CURRENT_YEAR = new Date().getFullYear();
const MIN_YEAR = 1950;
// Columns that support 3-state sorting (asc → desc → reset)
const SORTABLE_COLUMNS = new Set(['title', 'artist', 'album', 'rating', 'duration']);
// Columns that support 3-state sorting (asc → desc → reset).
// Single source of truth — the tracklist header imports this to decide which
// headers show the sortable affordance, so the cursor and the click behaviour
// can never drift apart. Every key here is handled in the comparator below.
export const SORTABLE_COLUMNS = new Set(['title', 'artist', 'album', 'rating', 'duration', 'playCount', 'lastPlayed', 'bpm']);
export type SortDir = 'asc' | 'desc';