feat(slint): extend QueueState model for the queue sidebar

Restructure the QueueState global so the sidebar can render two tabs and
a paginated upcoming list: separate now-playing / upcoming-page / history
properties, paginator counters, tab and search state, and callbacks for
every control. QueueItem gains duration and explicit fields. Adds a
favorite semantic color token and the heart-filled, infinity and list-x
icons the sidebar needs.

cc
This commit is contained in:
vicrodh committed 2026-05-19 01:49:32 -06:00
1 parent 712529070d
commit 747ae6082c
5 files changed
+83 -4

No files matched your search

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="#ffffff" stroke="#ffffff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5" />
</svg>

After

Width:  |  Height:  |  Size: 352 B

@@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#ffffff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="M6 16c5 0 7-8 12-8a4 4 0 0 1 0 8c-5 0-7-8-12-8a4 4 0 1 0 0 8" />
</svg>

After

Width:  |  Height:  |  Size: 260 B

@@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#ffffff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="M11 12H3" />
<path d="M16 6H3" />
<path d="M16 18H3" />
<path d="m19 10 4 4" />
<path d="m23 10-4 4" />
</svg>

After

Width:  |  Height:  |  Size: 307 B