MediaMini: Support showing artist first

This commit is contained in:
Adam Laughlin
2025-11-16 13:31:41 -05:00
parent c09bf13c58
commit 36e0ef91bc
4 changed files with 20 additions and 1 deletions
+4
View File
@@ -202,6 +202,10 @@
"description": "Display the album artwork for the currently playing track.", "description": "Display the album artwork for the currently playing track.",
"label": "Show album art" "label": "Show album art"
}, },
"show-artist-first": {
"description": "Display artist - title instead of title - artist",
"label": "Show artist first"
}
"show-visualizer": { "show-visualizer": {
"description": "Display an audio visualizer when music is playing.", "description": "Display an audio visualizer when music is playing.",
"label": "Show visualizer" "label": "Show visualizer"
+6 -1
View File
@@ -37,6 +37,7 @@ Item {
// Backward compatibility: honor legacy hideWhenIdle setting if present // Backward compatibility: honor legacy hideWhenIdle setting if present
readonly property bool hideWhenIdle: (widgetSettings.hideWhenIdle !== undefined) ? widgetSettings.hideWhenIdle : (widgetMetadata.hideWhenIdle !== undefined ? widgetMetadata.hideWhenIdle : false) readonly property bool hideWhenIdle: (widgetSettings.hideWhenIdle !== undefined) ? widgetSettings.hideWhenIdle : (widgetMetadata.hideWhenIdle !== undefined ? widgetMetadata.hideWhenIdle : false)
readonly property bool showAlbumArt: (widgetSettings.showAlbumArt !== undefined) ? widgetSettings.showAlbumArt : widgetMetadata.showAlbumArt readonly property bool showAlbumArt: (widgetSettings.showAlbumArt !== undefined) ? widgetSettings.showAlbumArt : widgetMetadata.showAlbumArt
readonly property bool showArtistFirst: (widgetSettings.showArtistFirst !== undefined) ? widgetSettings.showArtistFirst : widgetMetadata.showArtistFirst
readonly property bool showVisualizer: (widgetSettings.showVisualizer !== undefined) ? widgetSettings.showVisualizer : widgetMetadata.showVisualizer readonly property bool showVisualizer: (widgetSettings.showVisualizer !== undefined) ? widgetSettings.showVisualizer : widgetMetadata.showVisualizer
readonly property string visualizerType: (widgetSettings.visualizerType !== undefined && widgetSettings.visualizerType !== "") ? widgetSettings.visualizerType : widgetMetadata.visualizerType readonly property string visualizerType: (widgetSettings.visualizerType !== undefined && widgetSettings.visualizerType !== "") ? widgetSettings.visualizerType : widgetMetadata.visualizerType
readonly property string scrollingMode: (widgetSettings.scrollingMode !== undefined) ? widgetSettings.scrollingMode : widgetMetadata.scrollingMode readonly property string scrollingMode: (widgetSettings.scrollingMode !== undefined) ? widgetSettings.scrollingMode : widgetMetadata.scrollingMode
@@ -94,7 +95,11 @@ Item {
} }
function getTitle() { function getTitle() {
return MediaService.trackTitle + (MediaService.trackArtist !== "" ? ` - ${MediaService.trackArtist}` : "") if (showArtistFirst) {
return (MediaService.trackArtist !== "" ? `${MediaService.trackArtist} - ` : "") + MediaService.trackTitle
} else {
return MediaService.trackTitle + (MediaService.trackArtist !== "" ? ` - ${MediaService.trackArtist}` : "")
}
} }
function calculatedVerticalDimension() { function calculatedVerticalDimension() {
@@ -17,6 +17,7 @@ ColumnLayout {
// Deprecated: hideWhenIdle now folded into hideMode = "idle" // Deprecated: hideWhenIdle now folded into hideMode = "idle"
property bool valueHideWhenIdle: widgetData.hideWhenIdle !== undefined ? widgetData.hideWhenIdle : (widgetMetadata.hideWhenIdle !== undefined ? widgetMetadata.hideWhenIdle : false) property bool valueHideWhenIdle: widgetData.hideWhenIdle !== undefined ? widgetData.hideWhenIdle : (widgetMetadata.hideWhenIdle !== undefined ? widgetMetadata.hideWhenIdle : false)
property bool valueShowAlbumArt: widgetData.showAlbumArt !== undefined ? widgetData.showAlbumArt : widgetMetadata.showAlbumArt property bool valueShowAlbumArt: widgetData.showAlbumArt !== undefined ? widgetData.showAlbumArt : widgetMetadata.showAlbumArt
property bool valueShowArtistFirst: widgetData.showArtistFirst !== undefined ? widgetData.showArtistFirst : widgetMetadata.showArtistFirst
property bool valueShowVisualizer: widgetData.showVisualizer !== undefined ? widgetData.showVisualizer : widgetMetadata.showVisualizer property bool valueShowVisualizer: widgetData.showVisualizer !== undefined ? widgetData.showVisualizer : widgetMetadata.showVisualizer
property string valueVisualizerType: widgetData.visualizerType || widgetMetadata.visualizerType property string valueVisualizerType: widgetData.visualizerType || widgetMetadata.visualizerType
property string valueScrollingMode: widgetData.scrollingMode || widgetMetadata.scrollingMode property string valueScrollingMode: widgetData.scrollingMode || widgetMetadata.scrollingMode
@@ -34,6 +35,7 @@ ColumnLayout {
settings.hideMode = valueHideMode settings.hideMode = valueHideMode
// No longer store hideWhenIdle separately; kept for backward compatibility only // No longer store hideWhenIdle separately; kept for backward compatibility only
settings.showAlbumArt = valueShowAlbumArt settings.showAlbumArt = valueShowAlbumArt
settings.showArtistFirst = valueShowArtistFirst
settings.showVisualizer = valueShowVisualizer settings.showVisualizer = valueShowVisualizer
settings.visualizerType = valueVisualizerType settings.visualizerType = valueVisualizerType
settings.scrollingMode = valueScrollingMode settings.scrollingMode = valueScrollingMode
@@ -70,6 +72,13 @@ ColumnLayout {
onToggled: checked => valueShowAlbumArt = checked onToggled: checked => valueShowAlbumArt = checked
} }
NToggle {
label: I18n.tr("bar.widget-settings.media-mini.show-artist-first.label")
description: I18n.tr("bar.widget-settings.media-mini.show-artist-first.description")
checked: valueShowArtistFirst
onToggled: checked => valueShowArtistFirst = checked
}
NToggle { NToggle {
label: I18n.tr("bar.widget-settings.media-mini.show-visualizer.label") label: I18n.tr("bar.widget-settings.media-mini.show-visualizer.label")
description: I18n.tr("bar.widget-settings.media-mini.show-visualizer.description") description: I18n.tr("bar.widget-settings.media-mini.show-visualizer.description")
+1
View File
@@ -147,6 +147,7 @@ Singleton {
"useFixedWidth": false, "useFixedWidth": false,
"hideWhenIdle": false, "hideWhenIdle": false,
"showAlbumArt": false, "showAlbumArt": false,
"showArtistFirst": false,
"showVisualizer": false, "showVisualizer": false,
"visualizerType": "linear" "visualizerType": "linear"
}, },