feat(qt): opt-in "feat." featured artists on the track-row artist line
Settings > Appearance > Player & Visuals. Qobuz rows only; the artist line stays a single text so the artist link keeps its hit area. cc
This commit is contained in:
11 files changed
+96
-1
No files matched your search
@@ -7487,3 +7487,11 @@ msgstr "Diese Optionen gelten nicht, solange Nur Streaming aktiviert ist. Deakti
|
||||
|
||||
msgid "Mimics official clients’ streaming behavior with lower memory usage. Skips the playback cache and its protection against network interruptions: QBZ’s cache keeps upcoming audio ready for more reliable playback and instant replay."
|
||||
msgstr "Entspricht dem Streaming-Verhalten der offiziellen Clients bei geringerem Speicherbedarf. Umgeht den Wiedergabe-Cache und seinen Schutz vor Netzwerkunterbrechungen: Der QBZ-Cache hält kommende Audiodaten für zuverlässigere Wiedergabe und sofortiges erneutes Abspielen bereit."
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Show featured artists in track rows"
|
||||
msgstr "Gastkünstler in Titelzeilen anzeigen"
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default."
|
||||
msgstr "Hängt \"feat. …\" mit den Gastinterpreten des Titels an die Künstlerzeile der Qobuz-Titelzeilen an. Standardmäßig aus."
|
||||
@@ -3113,3 +3113,11 @@ msgstr "These options do not apply while Streaming only is enabled. Turn it off
|
||||
|
||||
msgid "Mimics official clients’ streaming behavior with lower memory usage. Skips the playback cache and its protection against network interruptions: QBZ’s cache keeps upcoming audio ready for more reliable playback and instant replay."
|
||||
msgstr "Mimics official clients’ streaming behavior with lower memory usage. Skips the playback cache and its protection against network interruptions: QBZ’s cache keeps upcoming audio ready for more reliable playback and instant replay."
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Show featured artists in track rows"
|
||||
msgstr "Show featured artists in track rows"
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default."
|
||||
msgstr "Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default."
|
||||
@@ -7493,3 +7493,11 @@ msgstr "Estas opciones no se aplican mientras Solo streaming esté activado. Des
|
||||
|
||||
msgid "Mimics official clients’ streaming behavior with lower memory usage. Skips the playback cache and its protection against network interruptions: QBZ’s cache keeps upcoming audio ready for more reliable playback and instant replay."
|
||||
msgstr "Imita el comportamiento de streaming de los clientes oficiales y usa menos memoria. Omite la caché de reproducción y su protección ante interrupciones de red: la caché de QBZ prepara el audio siguiente para una reproducción más fiable y permite volver a escuchar al instante."
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Show featured artists in track rows"
|
||||
msgstr "Mostrar artistas invitados en las filas de pistas"
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default."
|
||||
msgstr "Añade \"feat. …\" con los intérpretes invitados de la pista a la línea de artista en las filas de pistas de Qobuz. Desactivado por defecto."
|
||||
@@ -7485,3 +7485,11 @@ msgstr "Ces options ne s’appliquent pas lorsque Streaming uniquement est activ
|
||||
|
||||
msgid "Mimics official clients’ streaming behavior with lower memory usage. Skips the playback cache and its protection against network interruptions: QBZ’s cache keeps upcoming audio ready for more reliable playback and instant replay."
|
||||
msgstr "Reproduit le comportement de streaming des clients officiels en utilisant moins de mémoire. Désactive le cache de lecture et sa protection contre les interruptions réseau : le cache de QBZ prépare les prochains contenus audio pour une lecture plus fiable et une réécoute immédiate."
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Show featured artists in track rows"
|
||||
msgstr "Afficher les artistes invités dans les lignes de piste"
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default."
|
||||
msgstr "Ajoute « feat. … » avec les interprètes invités du morceau sur la ligne d'artiste des lignes de piste Qobuz. Désactivé par défaut."
|
||||
@@ -7468,3 +7468,11 @@ msgstr "「ストリーミングのみ」が有効な間、これらの設定は
|
||||
|
||||
msgid "Mimics official clients’ streaming behavior with lower memory usage. Skips the playback cache and its protection against network interruptions: QBZ’s cache keeps upcoming audio ready for more reliable playback and instant replay."
|
||||
msgstr "公式クライアントと同様のストリーミング動作でメモリ使用量を抑えます。再生キャッシュとそのネットワーク中断への保護を無効にします。QBZのキャッシュは次の音声を事前に用意し、より安定した再生と即座のリプレイを可能にします。"
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Show featured artists in track rows"
|
||||
msgstr "トラック行にフィーチャリングアーティストを表示"
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default."
|
||||
msgstr "Qobuz のトラック行のアーティスト欄に、フィーチャリングされた演奏者を「feat. …」として追加します。既定ではオフです。"
|
||||
@@ -7475,3 +7475,11 @@ msgstr "Deze opties zijn niet van toepassing zolang Alleen streamen is ingeschak
|
||||
|
||||
msgid "Mimics official clients’ streaming behavior with lower memory usage. Skips the playback cache and its protection against network interruptions: QBZ’s cache keeps upcoming audio ready for more reliable playback and instant replay."
|
||||
msgstr "Bootst het streaminggedrag van de officiële clients na met minder geheugengebruik. Slaat de afspeelcache en de bescherming tegen netwerkonderbrekingen over: de cache van QBZ houdt komende audio gereed voor betrouwbaarder afspelen en direct opnieuw afspelen."
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Show featured artists in track rows"
|
||||
msgstr "Gastartiesten in trackregels tonen"
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default."
|
||||
msgstr "Voegt \"feat. …\" met de gastartiesten van de track toe aan de artiestregel van Qobuz-trackregels. Standaard uit."
|
||||
@@ -7485,3 +7485,11 @@ msgstr "Estas opções não se aplicam enquanto Apenas streaming estiver ativado
|
||||
|
||||
msgid "Mimics official clients’ streaming behavior with lower memory usage. Skips the playback cache and its protection against network interruptions: QBZ’s cache keeps upcoming audio ready for more reliable playback and instant replay."
|
||||
msgstr "Reproduz o comportamento de streaming dos clientes oficiais com menor uso de memória. Ignora o cache de reprodução e sua proteção contra interrupções de rede: o cache do QBZ prepara o próximo áudio para uma reprodução mais confiável e repetição imediata."
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Show featured artists in track rows"
|
||||
msgstr "Mostrar artistas convidados nas linhas de faixa"
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default."
|
||||
msgstr "Acrescenta \"feat. …\" com os intérpretes convidados da faixa à linha do artista nas linhas de faixa do Qobuz. Desligado por padrão."
|
||||
@@ -7506,3 +7506,11 @@ msgstr "Эти параметры не применяются, пока вклю
|
||||
|
||||
msgid "Mimics official clients’ streaming behavior with lower memory usage. Skips the playback cache and its protection against network interruptions: QBZ’s cache keeps upcoming audio ready for more reliable playback and instant replay."
|
||||
msgstr "Повторяет поведение потокового воспроизведения официальных клиентов, используя меньше памяти. Отключает кэш воспроизведения и его защиту от перебоев сети: кэш QBZ заранее подготавливает аудио для более надёжного воспроизведения и мгновенного повтора."
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Show featured artists in track rows"
|
||||
msgstr "Показывать приглашённых артистов в строках треков"
|
||||
|
||||
#: qbz-qt/qml/settings/AppearanceSettings.qml
|
||||
msgid "Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default."
|
||||
msgstr "Добавляет «feat. …» с приглашёнными исполнителями трека к строке артиста в строках треков Qobuz. По умолчанию выключено."
|
||||
@@ -507,6 +507,18 @@ Rectangle {
|
||||
}
|
||||
return false
|
||||
}
|
||||
// "Show featured artists in track rows" (AppearanceSettings). Same read
|
||||
// as playIndicatorAnim: the settings document republishes on every
|
||||
// settings write, which is the only time this re-evaluates.
|
||||
readonly property bool showFeaturedArtists: {
|
||||
var raw = QbzBridge.settingsJson
|
||||
if (raw && raw.length > 2) {
|
||||
try {
|
||||
return JSON.parse(raw).showFeaturedArtists === true
|
||||
} catch (e) { /* fall through */ }
|
||||
}
|
||||
return false
|
||||
}
|
||||
// The animated eq bars carry the playing state in the play cell when the
|
||||
// pref is ON (TrackPlayCell.slint:99-100 `show-bars`): only while this
|
||||
// row's track is actually PLAYING, at rest (hover reveals the pause
|
||||
@@ -968,7 +980,11 @@ Rectangle {
|
||||
Text {
|
||||
width: parent.width
|
||||
visible: (root.item.artist || "") !== ""
|
||||
text: root.item.artist || ""
|
||||
// "feat." is a music convention, not a translated word. Local /
|
||||
// media-server rows carry no `featured` and stay as they are.
|
||||
text: (root.item.artist || "")
|
||||
+ (root.showFeaturedArtists && (root.item.featured || "") !== ""
|
||||
? " feat. " + root.item.featured : "")
|
||||
color: root.artistLink && root.item.artistId && artistLinkArea.containsMouse
|
||||
? theme.textPrimary : theme.textMuted
|
||||
font.pixelSize: 12
|
||||
|
||||
@@ -326,6 +326,14 @@ Column {
|
||||
onToggled: function (v) { QbzBridge.settingsBool("play-indicator-animation", v) }
|
||||
}
|
||||
}
|
||||
SettingRow { kioskHost: root.kioskHost;
|
||||
label: QbzSession.tr("Show featured artists in track rows", QbzSession.trRev)
|
||||
description: QbzSession.tr("Append \"feat. …\" with the track's featured performers to the artist line of Qobuz track rows. Off by default.", QbzSession.trRev)
|
||||
QbzToggle { kioskHost: root.kioskHost;
|
||||
checked: root.doc.showFeaturedArtists === true
|
||||
onToggled: function (v) { QbzBridge.settingsBool("show-featured-artists", v) }
|
||||
}
|
||||
}
|
||||
SettingRow { kioskHost: root.kioskHost;
|
||||
// Parked for a later visual pass. Keep the preference wiring intact so
|
||||
// restoring the experiment does not require a settings migration.
|
||||
|
||||
@@ -2196,6 +2196,8 @@ pub struct SettingsDoc {
|
||||
pub library_track_artwork: bool,
|
||||
#[serde(rename = "localLibraryTrackArtwork")]
|
||||
pub local_library_track_artwork: bool,
|
||||
#[serde(rename = "showFeaturedArtists")]
|
||||
pub show_featured_artists: bool,
|
||||
#[serde(rename = "playIndicatorAnimation")]
|
||||
pub play_indicator_animation: bool,
|
||||
#[serde(rename = "seekbarWaveform")]
|
||||
@@ -2739,6 +2741,7 @@ pub async fn publish_snapshot() {
|
||||
library_track_artwork: pref_bool("library_track_artwork", false),
|
||||
local_library_track_artwork: pref_bool("local_library_track_artwork", false),
|
||||
play_indicator_animation: pref_bool("play_indicator_animation", false),
|
||||
show_featured_artists: pref_bool("show_featured_artists", false),
|
||||
seekbar_waveform: seekbar_waveform(),
|
||||
invert_swipe_navigation: pref_bool("invert_swipe_navigation", false),
|
||||
in_app_toasts: pref_bool("in_app_toasts", true),
|
||||
@@ -3633,6 +3636,10 @@ pub async fn settings_bool(runtime: &Arc<AppRuntime<LoggingAdapter>>, key: &str,
|
||||
crate::local_album_actions::publish_track_artwork();
|
||||
Ok(Apply::None)
|
||||
}
|
||||
"show-featured-artists" => {
|
||||
save_pref("show_featured_artists", serde_json::json!(value));
|
||||
Ok(Apply::None)
|
||||
}
|
||||
"play-indicator-animation" => {
|
||||
save_pref("play_indicator_animation", serde_json::json!(value));
|
||||
Ok(Apply::None)
|
||||
|
||||
Reference in new issue
Block a user