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
+
+
+
+ 0
+ 4
+
+
+
+
+
+ 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