Improved the tracks/playqueue view

This commit is contained in:
emeric
2018-08-31 15:48:01 +02:00
parent 65269904df
commit 4c2dca647b
6 changed files with 52 additions and 19 deletions
+11 -3
View File
@@ -23,16 +23,24 @@
</message> </message>
<message id="Lms.PlayQueue.play"> <message id="Lms.PlayQueue.play">
<i class="fa fa-play"></i> <i class="fa fa-play Lms-playqueue-btn"></i>
</message> </message>
<message id="Lms.PlayQueue.delete"> <message id="Lms.PlayQueue.delete">
<i class="fa fa-remove"></i> <i class="fa fa-remove Lms-playqueue-btn"></i>
</message> </message>
<message id="Lms.PlayQueue.template.entry"> <message id="Lms.PlayQueue.template.entry">
<div class="row Lms-playqueue-entry Lms-vertical-align">
<div class="col-xs-9">
<h4>${name}</h4>
${<if-has-release>}<div class="hidden-xs" style="display: inline"><small>${release-name}</small></div>${</if-has-release>}
${<if-has-artist>}<small><i>${artist-name}</i></small>${</if-has-artist>}
</div>
<div class="col-xs-3 Lms-playqueue-entry-controls">
${play-btn} ${del-btn} ${play-btn} ${del-btn}
${name} ${<if-has-release>}${release-name}${</if-has-release>} ${<if-has-artist>}${artist-name}${</if-has-artist>} </div>
</div>
</message> </message>
</messages> </messages>
+4 -7
View File
@@ -19,16 +19,13 @@
</message> </message>
<message id="Lms.Explore.Tracks.template.entry"> <message id="Lms.Explore.Tracks.template.entry">
<div class="media list-group-item"> <div class="media-left">
<div class="pull-left media-middle">
${cover class="media-object"} ${cover class="media-object"}
</div> </div>
<div class="media-body"> <div class="media-body media-middle">
<h4 class="media-heading">${name}</h4> <h4 class="media-heading">${name}</h4>
</div> ${<if-has-release>}<h4><small>${release-name}</small></h4>${</if-has-release>}
${<if-has-release>}${release-name}${</if-has-release>} ${<if-has-artist>}<h4><small><i>${artist-name}</i></small></h4>${</if-has-artist>}
${<if-has-artist>}${artist-name}${</if-has-artist>}
${clusters}
${play-btn}${add-btn} ${play-btn}${add-btn}
</div> </div>
</message> </message>
+28 -4
View File
@@ -72,10 +72,6 @@ a:hover {
margin-bottom: 4px; margin-bottom: 4px;
} }
.Lms-playqueue-selected {
font-weight: bold;
}
.Lms-contents { .Lms-contents {
margin-bottom: 50px; margin-bottom: 50px;
} }
@@ -125,6 +121,34 @@ a:hover {
cursor: pointer; cursor: pointer;
} }
.Lms-playqueue-entry {
min-height: 32px;
margin-bottom: 2px;
}
.Lms-playqueue-entry:hover {
background-color: lightgrey;
}
.Lms-playqueue-entry-controls {
text-align: center;
}
.Lms-playqueue-btn {
font-size: 22px !important;
cursor: pointer;
margin: 2px;
}
.Lms-playqueue-selected {
font-weight: 800;
}
.Lms-playqueue-selected h4 {
font-weight: inherit;
}
.Lms-player { .Lms-player {
position: fixed; position: fixed;
bottom: 0; bottom: 0;
+1
View File
@@ -49,6 +49,7 @@ void addEntries(Wt::WContainerWidget* container, const std::vector<Release::poin
Wt::WAnchor* anchor = entry->bindWidget("cover", LmsApplication::createReleaseAnchor(release, false)); Wt::WAnchor* anchor = entry->bindWidget("cover", LmsApplication::createReleaseAnchor(release, false));
auto cover = std::make_unique<Wt::WImage>(); auto cover = std::make_unique<Wt::WImage>();
cover->setImageLink(LmsApp->getImageResource()->getReleaseUrl(release.id(), 48)); cover->setImageLink(LmsApp->getImageResource()->getReleaseUrl(release.id(), 48));
cover->setWidth(48);
anchor->setImage(std::move(cover)); anchor->setImage(std::move(cover));
auto artists = release->getArtists(); auto artists = release->getArtists();
+2
View File
@@ -92,6 +92,8 @@ Releases::addSome()
Wt::WAnchor* anchor = entry->bindWidget("cover", LmsApplication::createReleaseAnchor(release, false)); Wt::WAnchor* anchor = entry->bindWidget("cover", LmsApplication::createReleaseAnchor(release, false));
auto cover = std::make_unique<Wt::WImage>(); auto cover = std::make_unique<Wt::WImage>();
cover->setImageLink(LmsApp->getImageResource()->getReleaseUrl(release.id(), 128)); cover->setImageLink(LmsApp->getImageResource()->getReleaseUrl(release.id(), 128));
// Some images may not be square
cover->setWidth(128);
anchor->setImage(std::move(cover)); anchor->setImage(std::move(cover));
entry->bindWidget("release-name", LmsApplication::createReleaseAnchor(release)); entry->bindWidget("release-name", LmsApplication::createReleaseAnchor(release));
+3 -2
View File
@@ -115,6 +115,7 @@ Tracks::addSome()
{ {
auto trackId = track.id(); auto trackId = track.id();
Wt::WTemplate* entry = _tracksContainer->addNew<Wt::WTemplate>(Wt::WString::tr("Lms.Explore.Tracks.template.entry")); Wt::WTemplate* entry = _tracksContainer->addNew<Wt::WTemplate>(Wt::WString::tr("Lms.Explore.Tracks.template.entry"));
entry->addStyleClass("media");
entry->bindString("name", Wt::WString::fromUTF8(track->getName()), Wt::TextFormat::Plain); entry->bindString("name", Wt::WString::fromUTF8(track->getName()), Wt::TextFormat::Plain);
@@ -130,9 +131,9 @@ Tracks::addSome()
entry->bindWidget("release-name", LmsApplication::createReleaseAnchor(track->getRelease())); entry->bindWidget("release-name", LmsApplication::createReleaseAnchor(track->getRelease()));
} }
Wt::WImage* cover = entry->bindNew<Wt::WImage>("cover", LmsApp->getImageResource()->getTrackUrl(track.id(), 64)); Wt::WImage* cover = entry->bindNew<Wt::WImage>("cover", LmsApp->getImageResource()->getTrackUrl(track.id(), 128));
// Some images may not be square // Some images may not be square
cover->setWidth(64); cover->setWidth(128);
Wt::WContainerWidget* clusterContainers = entry->bindNew<Wt::WContainerWidget>("clusters"); Wt::WContainerWidget* clusterContainers = entry->bindNew<Wt::WContainerWidget>("clusters");
{ {