From 8426e076ddcbc38df191fec17631868985d8ec58 Mon Sep 17 00:00:00 2001 From: Simon Grout <63716635+simongrout@users.noreply.github.com> Date: Thu, 19 Nov 2020 21:31:04 +0000 Subject: [PATCH] Display stream URL in station detail dialog #505 --- data/gtk/station_dialog.ui | 33 +++++++++++++++++++++++++++++++++ src/ui/station_dialog.rs | 12 ++++++++++++ 2 files changed, 45 insertions(+) diff --git a/data/gtk/station_dialog.ui b/data/gtk/station_dialog.ui index 73e5ec15..bd54e46f 100644 --- a/data/gtk/station_dialog.ui +++ b/data/gtk/station_dialog.ui @@ -291,6 +291,39 @@ 3 + + + True + False + end + Stream + + + + 0 + 4 + + + + + True + False + start + + True + True + char + True + end + 20 + + + 1 + 4 + + False diff --git a/src/ui/station_dialog.rs b/src/ui/station_dialog.rs index a4c2eb07..6fab37c9 100644 --- a/src/ui/station_dialog.rs +++ b/src/ui/station_dialog.rs @@ -34,11 +34,13 @@ pub struct StationDialog { homepage_label: gtk::Label, tags_label: gtk::Label, language_label: gtk::Label, + stream_label: gtk::Label, codec_label_label: gtk::Label, homepage_label_label: gtk::Label, tags_label_label: gtk::Label, language_label_label: gtk::Label, + stream_label_label: gtk::Label, builder: gtk::Builder, sender: Sender, @@ -54,10 +56,12 @@ impl StationDialog { get_widget!(builder, gtk::Label, homepage_label); get_widget!(builder, gtk::Label, tags_label); get_widget!(builder, gtk::Label, language_label); + get_widget!(builder, gtk::Label, stream_label); get_widget!(builder, gtk::Label, codec_label_label); get_widget!(builder, gtk::Label, homepage_label_label); get_widget!(builder, gtk::Label, tags_label_label); get_widget!(builder, gtk::Label, language_label_label); + get_widget!(builder, gtk::Label, stream_label_label); // Download & set station favicon get_widget!(builder, gtk::Box, favicon_box); @@ -89,10 +93,12 @@ impl StationDialog { homepage_label, tags_label, language_label, + stream_label, codec_label_label, homepage_label_label, tags_label_label, language_label_label, + stream_label_label, builder, sender, }; @@ -131,6 +137,12 @@ impl StationDialog { self.homepage_label.hide(); self.homepage_label_label.hide(); } + if let Some(ref stream_url) = self.station.url { + self.stream_label.set_markup(&format!("{}", stream_url, stream_url)); + } else { + self.stream_label.hide(); + self.stream_label_label.hide(); + } } pub fn show(&self) { -- GitLab