new screenshots with cover art, better popups, playlists active marker

This commit is contained in:
Wouter van Wijk 2013-02-19 21:18:28 +01:00
parent 4e496e1073
commit 8c77d48b44
15 changed files with 40 additions and 12 deletions

View File

@ -2,7 +2,7 @@
Mopidy Browser Client Mopidy Browser Client
********************* *********************
This is a responsive html/js/css client for Mopidy. Responsive, so it works on desktop and mobile browsers. This is a responsive html/js/css client for Mopidy. Responsive, so it works on desktop and mobile browsers. You can browse, search and play albums, artists, playlists, and it has cover art from Last.fm.
`Mopidy <http://www.mopidy.com/>`_ is a music server which can play music from `Spotify <http://www.spotify.com/>`_ or from your local hard drive. `Mopidy <http://www.mopidy.com/>`_ is a music server which can play music from `Spotify <http://www.spotify.com/>`_ or from your local hard drive.

BIN
screenshots/artist.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

BIN
screenshots/playlists.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
screenshots/queue-small.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

BIN
screenshots/queue.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

BIN
screenshots/search.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -36,18 +36,27 @@
clear: left; clear: left;
} }
.srch-breakpoint.ui-grid-a .ui-block-b { .srch-breakpoint.ui-grid-a .ui-block-b {
margin-left: 5px; margin-left: .5em;
} }
.srch-breakpoint.ui-grid-a .ui-block-a, .srch-breakpoint.ui-grid-a .ui-block-b { .srch-breakpoint.ui-grid-a .ui-block-a, .srch-breakpoint.ui-grid-a .ui-block-b {
width: 49.5%; width: 49%;
} }
#playlisttablediv { #playlisttablediv {
margin-left: 10px; margin-left: 10px;
} }
#btcontrols {
display: none;
}
} }
/* tablet etc */ /* tablet etc */
@media all and (max-width: 50em) and (min-width: 30.1em) { @media all and (max-width: 49.9em) and (min-width: 30.1em) {
.srch-breakpoint.ui-grid-a .ui-block-b {
margin-left: .2em;
}
.srch-breakpoint.ui-grid-a .ui-block-a, .srch-breakpoint.ui-grid-a .ui-block-b {
width: 49.5%;
}
.header-breakpoint.ui-grid-b .ui-block-a { .header-breakpoint.ui-grid-b .ui-block-a {
width: 39.95%; width: 39.95%;
} }
@ -61,6 +70,9 @@
/* phone */ /* phone */
@media all and (max-width: 30em) { @media all and (max-width: 30em) {
.srch-breakpoint.ui-grid-a .ui-block-a, .srch-breakpoint.ui-grid-a .ui-block-b {
width: 100%;
}
.pl-breakpoint .ui-block-a, .pl-breakpoint .ui-block-b { .pl-breakpoint .ui-block-a, .pl-breakpoint .ui-block-b {
width: 100%; width: 100%;
} }
@ -74,6 +86,10 @@
.header-breakpoint.ui-grid-b .ui-block-b { .header-breakpoint.ui-grid-b .ui-block-b {
display: none; display: none;
} }
#btcontrols {
display: block;
}
} }
/************************ /************************
@ -265,7 +281,7 @@ a {
font-style: oblique; font-style: oblique;
} }
#controlsmodal { #controlsmodal, #artistpopup, #coverpopup {
max-width: 500px; max-width: 500px;
min-width: 300px; min-width: 300px;
} }
@ -292,5 +308,9 @@ a {
#buttons, #controlspopupimage, #coverpopupimage, #artistpopupimage { #buttons, #controlspopupimage, #coverpopupimage, #artistpopupimage {
display: block; display: block;
margin-left: auto; margin-left: auto;
margin-right: auto margin-right: auto;
margin-bottom: 5px;
} }
.playlistactive {
background-color: #ccc;
}

View File

@ -101,11 +101,12 @@
<span id="btprev"><a href="#" onclick="doPrevious(); return false"><img id="previmg" src="images/icons/first_24x24.png" alt="Previous Track" /></a></span> <span id="btprev"><a href="#" onclick="doPrevious(); return false"><img id="previmg" src="images/icons/first_24x24.png" alt="Previous Track" /></a></span>
<span id="btplay"><a href="#" onclick="doPlay(); return false"><img src="images/icons/pause_32x32.png" alt="Play" id="playimg" /></a></span> <span id="btplay"><a href="#" onclick="doPlay(); return false"><img src="images/icons/pause_32x32.png" alt="Play" id="playimg" /></a></span>
<span id="btnext"><a href="#" onclick="doNext(); return false"><img id="nextimg" src="images/icons/last_24x24.png" alt="Next Track" /></a></span> <span id="btnext"><a href="#" onclick="doNext(); return false"><img id="nextimg" src="images/icons/last_24x24.png" alt="Next Track" /></a></span>
<span id="btcontrols"><a href="#controlsmodal" data-rel="popup"><img src="images/icons/new_window_24x24.png" id="controlsimg" alt="More controls" class="breakafter" /></a></span> <span id="btcontrols"><a href="#controlsmodal" data-position-to="window" data-rel="popup"><img src="images/icons/new_window_24x24.png" id="controlsimg" alt="More controls" class="breakafter" /></a></span>
</div> </div>
<div id="songinfo" class=" ui-block-b"> <div id="songinfo" class=" ui-block-b">
<a href="#controlsmodal" data-rel="popup"> <img id="infocover" width="36" height="36"></img> <div id="infoname"></div> <div id="infoartist"></div> </a> <a href="#controlsmodal" data-position-to="window" data-rel="popup">
<img id="infocover" width="36" height="36"></img> <div id="infoname"></div> <div id="infoartist"></div> </a>
</div> </div>
<div id="slidercontainer" class="ui-block-c"> <div id="slidercontainer" class="ui-block-c">
@ -135,7 +136,7 @@
</div> </div>
<div data-role="content" class="pane" id="albumspane"> <div data-role="content" class="pane" id="albumspane">
<a href="#coverpopup" data-rel="popup"><img height="90" src="" id="albumviewcover" /></a> <a href="#coverpopup" data-position-to="window" data-rel="popup"><img height="90" src="" id="albumviewcover" /></a>
<h3 id="h_albumname"></h3> <h3 id="h_albumname"></h3>
<h5 id="h_albumartist"></h5> <h5 id="h_albumartist"></h5>
<ul data-role="listview" data-icon="false" data-inset="true" id="albumstable"></ul> <ul data-role="listview" data-icon="false" data-inset="true" id="albumstable"></ul>
@ -144,7 +145,7 @@
<div data-role="content" class="pane" id="artistspane"> <div data-role="content" class="pane" id="artistspane">
<!-- <h4>Artist</h4> --> <!-- <h4>Artist</h4> -->
<a href="#artistpopup" data-rel="popup"><img height="90" src="" id="artistviewimage" /></a> <a href="#artistpopup" data-position-to="window" data-rel="popup"><img height="90" src="" id="artistviewimage" /></a>
<h3 id="h_artistname"></h3> <h3 id="h_artistname"></h3>
<ul data-role="listview" data-icon="false" data-inset="true" id="artiststable"></ul> <ul data-role="listview" data-icon="false" data-inset="true" id="artiststable"></ul>
<img src="images/loader.gif" id="artistsloader" class="loader" /> <img src="images/loader.gif" id="artistsloader" class="loader" />

View File

@ -43,7 +43,7 @@ function resizeSonginfo() {
}); });
$("#infoartist").html('<a href="#controlsmodal" data-rel="popup">' + $("#infoartist").html() + '</a>'); $("#infoartist").html('<a href="#controlsmodal" data-rel="popup">' + $("#infoartist").html() + '</a>');
} else { } else {
$("#infoartist").html(artistshtml); $("#infoartist").html(artiststext);
} }
} }

View File

@ -110,7 +110,6 @@ function getCurrentPlaylist() {
function showTracklist(uri) { function showTracklist(uri) {
$(PLAYLIST_TABLE).empty(); $(PLAYLIST_TABLE).empty();
$('#playlisttablediv').show(); $('#playlisttablediv').show();
// $('#playlistloader').show();
showLoading(true); showLoading(true);
var pl = getPlaylistFromUri(uri); var pl = getPlaylistFromUri(uri);
@ -118,6 +117,14 @@ function showTracklist(uri) {
if (pl) { if (pl) {
playlisttotable(pl.tracks, PLAYLIST_TABLE, uri); playlisttotable(pl.tracks, PLAYLIST_TABLE, uri);
} }
$('#playlistslist li a').each(function() {
$(this).removeClass("playlistactive");
if (this.id == uri) {
$(this).addClass('playlistactive');
}
});
scrollToTracklist(); scrollToTracklist();
//lookup recent tracklist //lookup recent tracklist
mopidy.playlists.lookup(uri).then(processGetTracklist, console.error); mopidy.playlists.lookup(uri).then(processGetTracklist, console.error);