From 3466b064e90848faa22ce1c662aaa5caa35fa253 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Fri, 31 Jan 2025 16:13:56 -0700 Subject: [PATCH] Support missing metadata, fixes #56 --- i18n/en/cosmic_player.ftl | 2 ++ src/main.rs | 17 +++++++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/i18n/en/cosmic_player.ftl b/i18n/en/cosmic_player.ftl index 45148b6..782d3e7 100644 --- a/i18n/en/cosmic_player.ftl +++ b/i18n/en/cosmic_player.ftl @@ -4,6 +4,8 @@ no-video-or-audio-file-open = No video or audio file open open-file = Open file open-folder = Open folder subtitles = Subtitles +unknown-author = Unknown Author +untitled = Untitled # Context Pages diff --git a/src/main.rs b/src/main.rs index e81cabc..7dc5b7e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1289,12 +1289,21 @@ impl Application for App { .content_fit(ContentFit::ScaleDown) .width(Length::Fill), ); + } else { + col = col.push(widget::icon::from_name("audio-x-generic-symbolic").size(256)); } col = col.push(widget::vertical_space(space_s)); - //TODO: fallback if title missing - col = col.push(widget::text::title4(&self.mpris_meta.title)); - for artist in self.mpris_meta.artists.iter() { - col = col.push(widget::text::body(artist)); + if self.mpris_meta.title.is_empty() { + col = col.push(widget::text::title4(fl!("untitled"))); + } else { + col = col.push(widget::text::title4(&self.mpris_meta.title)); + } + if self.mpris_meta.artists.is_empty() { + col = col.push(widget::text::body(fl!("unknown-author"))); + } else { + for artist in self.mpris_meta.artists.iter() { + col = col.push(widget::text::body(artist)); + } } col = col.push(widget::vertical_space(space_s)); if !self.mpris_meta.album.is_empty() {