docs(qt): correct the stale search notes

The two whose falsifying commit does not touch their file, so R7 rule 2
could not put them beside the code.

QbzEmptyState claimed it had consolidated SearchView's and Cortinilla's
no-results states. Neither uses it - both draw their own line inline, and the
cortinilla's is a single 28px row inside a dropdown rather than a centred
block.

SearchView's SOURCE note justified its Qobuz-only assumption by saying the
local sections "are not ported". They are now. The assumption still holds for
the results PAGE, which is Qobuz-only, so the note is narrowed rather than
deleted - the cortinilla is a different document whose rows carry their own
source field.

Contract: qbz-nix-docs/qt-frontend/2026-08-03-cortinilla-parity, commit C12
(R7-7, R7-8).

cc
This commit is contained in:
vicrodh committed 2026-08-03 18:15:16 -06:00
1 parent b38b0b3d57
commit 28c04bd990
2 files changed
+17 -11

No files matched your search

+9 -4
View File
@@ -1,8 +1,13 @@
// QbzEmptyState — the plain centered empty state (title + optional icon / // QbzEmptyState — the plain centered empty state (title + optional icon /
// body / action), consolidated in phase 22 from HomeView.RecentPlaceholder, // body / action), consolidated in phase 22 from HomeView.RecentPlaceholder
// QueuePanel's empty queue, SearchView's no-results and Cortinilla's // and QueuePanel's empty queue.
// no-results. Slint has no shared EmptyState either (per-surface inline) — //
// this is a POC-only consolidation; arms: `iconName` ("" = none), `title`, // NOT used by SearchView or Cortinilla, contrary to what this header used to
// claim: both draw their own no-results line inline, because the cortinilla's
// is a single 28px row inside a dropdown rather than a centred block. Slint
// has no shared EmptyState either (per-surface inline).
//
// Arms: `iconName` ("" = none), `title`,
// `body` ("" = hidden), `actionLabel` + `actionClicked()` ("" = no action). // `body` ("" = hidden), `actionLabel` + `actionClicked()` ("" = no action).
import QtQuick import QtQuick
+8 -7
View File
@@ -800,13 +800,14 @@ Rectangle {
// itemType/source). // itemType/source).
// //
// SOURCE: the results page has ONE source. // SOURCE: the results page has ONE source.
// `search_qt::TrackRow` (:171) carries no // `search_qt::TrackRow` carries no source
// source word because every row is mapped from // word because every row on THIS page is
// a Qobuz `Track` (`map_track`, :320-336) and // mapped from a Qobuz `Track` (`map_track`):
// the local "on this device" sections are not // the results page is still Qobuz-only. The
// ported (search_qt.rs:24-27) — the cortinilla // CORTINILLA is not — it has on-device
// rows, which CAN be local, carry their own // sections now — but its rows carry their own
// `source` field and are a different document. // `source` field and are a different document
// entirely.
// `item.id` is a Qobuz catalog id by // `item.id` is a Qobuz catalog id by
// construction, not by assumption here. // construction, not by assumption here.
onMixtapeRequested: QbzMyQbzAdd.open(JSON.stringify([{ onMixtapeRequested: QbzMyQbzAdd.open(JSON.stringify([{