Add labels to track list in playback queue

This commit is contained in:
Tuukka Ojala
2025-12-12 21:05:41 +02:00
parent d129bd766b
commit 99001e2761
4 changed files with 7 additions and 4 deletions
+2 -1
View File
@@ -9,6 +9,7 @@
<message id="Lms.clusters">Tags</message>
<message id="Lms.create">Create</message>
<message id="Lms.delete">Delete</message>
<message id="Lms.delete-item">Delete {1}</message>
<message id="Lms.discard">Discard</message>
<message id="Lms.edit">Edit</message>
<message id="Lms.field-must-be-in-upper-case">This field must be in upper case</message>
@@ -26,6 +27,7 @@
<message id="Lms.password-old">Old password</message>
<message id="Lms.password-too-weak">Password too weak</message>
<message id="Lms.passwords-dont-match">Passwords don't match</message>
<message id="Lms.play-item">Play {1}</message>
<message id="Lms.quit-other-session">Another session has been open. Reopen this one?</message>
<message id="Lms.save">Save</message>
<message id="Lms.settings-saved">Settings saved!</message>
@@ -209,7 +211,6 @@
<message id="Lms.Explore.most-played">Most played</message>
<message id="Lms.Explore.musicbrainz-artist">MusicBrainz Artist</message>
<message id="Lms.Explore.musicbrainz-release">MusicBrainz Release</message>
<message id="Lms.Explore.play-item">Play {1}</message>
<message id="Lms.Explore.play">Play</message>
<message id="Lms.Explore.play-last">Play last</message>
<message id="Lms.Explore.play-next">Play next</message>
+2
View File
@@ -520,6 +520,7 @@ namespace lms::ui
entry->bindString("duration", utils::durationToString(track->getDuration()), Wt::TextFormat::Plain);
Wt::WPushButton* playBtn{ entry->bindNew<Wt::WPushButton>("play-btn", Wt::WString::tr("Lms.template.play-btn"), Wt::TextFormat::XHTML) };
playBtn->setAttributeValue("aria-label", Wt::WString::tr("Lms.play-item").arg(track->getName()));
playBtn->clicked().connect([this, entry] {
const std::optional<std::size_t> pos{ _entriesContainer->getIndexOf(*entry) };
if (pos)
@@ -527,6 +528,7 @@ namespace lms::ui
});
Wt::WPushButton* delBtn{ entry->bindNew<Wt::WPushButton>("del-btn", Wt::WString::tr("Lms.template.delete-btn"), Wt::TextFormat::XHTML) };
delBtn->setAttributeValue("aria-label", Wt::WString::tr("Lms.delete-item").arg(track->getName()));
delBtn->setToolTip(Wt::WString::tr("Lms.delete"));
delBtn->clicked().connect([this, tracklistEntryId, entry] {
// Remove the entry n both the widget tree and the playqueue
+2 -2
View File
@@ -475,7 +475,7 @@ namespace lms::ui
}
Wt::WPushButton* playBtn{ entry->bindNew<Wt::WPushButton>("play-btn", Wt::WString::tr("Lms.template.play-btn"), Wt::TextFormat::XHTML) };
playBtn->setAttributeValue("aria-label", Wt::WString::tr("Lms.Explore.play-item").arg(track->getName()));
playBtn->setAttributeValue("aria-label", Wt::WString::tr("Lms.play-item").arg(track->getName()));
playBtn->clicked().connect([this, trackId] {
_playQueueController.playTrackInRelease(trackId);
});
@@ -678,7 +678,7 @@ namespace lms::ui
disc_title = Wt::WString::fromUTF8(std::string{ medium->getName() });
disc->bindNew<Wt::WText>("disc-title", disc_title, Wt::TextFormat::Plain);
Wt::WPushButton* playBtn{ disc->bindNew<Wt::WPushButton>("play-btn", Wt::WString::tr("Lms.template.play-btn"), Wt::TextFormat::XHTML) };
playBtn->setAttributeValue("aria-label", Wt::WString::tr("Lms.Explore.play-item").arg(disc_title));
playBtn->setAttributeValue("aria-label", Wt::WString::tr("Lms.play-item").arg(disc_title));
playBtn->clicked().connect([this, mediumId] {
_playQueueController.processCommand(PlayQueueController::Command::Play, mediumId);
});
+1 -1
View File
@@ -250,7 +250,7 @@ namespace lms::ui::TrackListHelpers
entry->bindString("duration", utils::durationToString(track->getDuration()), Wt::TextFormat::Plain);
Wt::WPushButton* playBtn{ entry->bindNew<Wt::WPushButton>("play-btn", Wt::WString::tr("Lms.template.play-btn"), Wt::TextFormat::XHTML) };
playBtn->setAttributeValue("aria-label", Wt::WString::tr("Lms.Explore.play-item").arg(track->getName()));
playBtn->setAttributeValue("aria-label", Wt::WString::tr("Lms.play-item").arg(track->getName()));
playBtn->clicked().connect([trackId, &playQueueController] {
playQueueController.processCommand(PlayQueueController::Command::Play, { trackId });
});