1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

update now playing page

This commit is contained in:
Luke Pulverenti 2015-06-26 16:40:30 -04:00
parent 7fb59cc969
commit e33e5875cf
10 changed files with 148 additions and 197 deletions

View file

@ -35,7 +35,7 @@
"tag": "v1.0.1",
"commit": "3809f0eb7461c8ca63640aaa238775b3a25aa578"
},
"_source": "git://github.com/polymerelements/iron-menu-behavior.git",
"_source": "git://github.com/PolymerElements/iron-menu-behavior.git",
"_target": "^1.0.0",
"_originalSource": "polymerelements/iron-menu-behavior"
"_originalSource": "PolymerElements/iron-menu-behavior"
}

View file

@ -28,14 +28,14 @@
"web-component-tester": "*",
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
},
"homepage": "https://github.com/PolymerElements/iron-selector",
"homepage": "https://github.com/polymerelements/iron-selector",
"_release": "1.0.2",
"_resolution": {
"type": "version",
"tag": "v1.0.2",
"commit": "ea22d91d11ba6f72c01faa952d5e600f9d1773cf"
},
"_source": "git://github.com/PolymerElements/iron-selector.git",
"_source": "git://github.com/polymerelements/iron-selector.git",
"_target": "^1.0.0",
"_originalSource": "PolymerElements/iron-selector"
"_originalSource": "polymerelements/iron-selector"
}

View file

@ -1,6 +1,6 @@
{
"name": "paper-button",
"version": "1.0.1",
"version": "1.0.2",
"description": "Material design button",
"authors": [
"The Polymer Authors"
@ -36,14 +36,13 @@
"web-component-tester": "*",
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
},
"_release": "1.0.1",
"_release": "1.0.2",
"_resolution": {
"type": "version",
"tag": "v1.0.1",
"commit": "e11a0603feaaedd8cf6c7e0d533bdc67de24c8de"
"tag": "v1.0.2",
"commit": "e804f62099c79f909ec9f94d78b790bff7b88682"
},
"_source": "git://github.com/PolymerElements/paper-button.git",
"_target": "~1.0.1",
"_originalSource": "PolymerElements/paper-button",
"_direct": true
"_originalSource": "PolymerElements/paper-button"
}

View file

@ -1,6 +1,6 @@
{
"name": "paper-button",
"version": "1.0.1",
"version": "1.0.2",
"description": "Material design button",
"authors": [
"The Polymer Authors"

View file

@ -31,7 +31,7 @@ You may use custom DOM in the button body to create a variety of buttons. For ex
create a button with an icon and some text:
<paper-button>
<core-icon icon="favorite"></core-icon>
<iron-icon icon="favorite"></iron-icon>
custom button content
</paper-button>

View file

@ -14,144 +14,142 @@
<paper-fab mini icon="cast" class="blue nowPlayingCastIcon" onclick="MediaController.showPlayerSelection();" style="vertical-align:middle;"></paper-fab>
</div>
<template is="dom-bind" id="scope">
<neon-animated-pages selected="{{selected}}" entry-animation="slide-from-right-animation" exit-animation="slide-left-animation">
<neon-animatable>
<div style="text-align:center;padding-bottom:100px;">
<neon-animated-pages selected="{{selected}}" entry-animation="slide-from-right-animation" exit-animation="slide-left-animation">
<neon-animatable>
<div style="text-align:center;padding-bottom:100px;">
<div class="nowPlayingPageTitle">
<div class="itemName" style="line-height: normal;"></div>
<div class="nowPlayingPageTitle">
<div class="itemName" style="line-height: normal;"></div>
</div>
<div class="nowPlayingInfoMetadata">
<div class="nowPlayingPageImage" style="margin: 1em 0;"></div>
<div class="nowPlayingTimeContainer">
<div>
<div class="positionSliderContainer sliderContainer requiresJqmCreate" style="margin: 0 auto;">
<input type="range" style="display: none;" class="mediaSlider positionSlider slider" step=".001" min="0" max="100" value="0" data-mini="true" data-theme="a" data-highlight="true" />
</div>
</div>
<div style="text-align:left;">
<div class="positionTime" style="float:left;"></div>
<div class="runtime" style="float: right;"></div>
</div>
</div>
</div>
<div class="nowPlayingInfoMetadata">
<div class="nowPlayingPageImage" style="margin: 1em 0;"></div>
<div class="nowPlayingInfoButtons">
<div>
<paper-fab icon="skip-previous" class="btnPreviousTrack btnPlayStateCommand subdued" title="${ButtonPreviousTrack}"></paper-fab>
<paper-fab icon="pause" class="btnPause btnPlayStateCommand subdued" title="${ButtonPause}"></paper-fab>
<paper-fab icon="play-arrow" class="btnPlay btnPlayStateCommand subdued" title="${ButtonPlay}"></paper-fab>
<paper-fab icon="stop" class="btnPlayStateCommand btnStop subdued" title="${ButtonStop}"></paper-fab>
<paper-fab icon="skip-next" class="btnPlayStateCommand btnNextTrack subdued" title="${ButtonNextTrack}"></paper-fab>
</div>
<div>
<paper-fab icon="volume-up" class="btnCommand subdued" title="${ButtonVolumeUp}" data-command="VolumeUp"></paper-fab>
<paper-fab icon="volume-off" class="btnCommand subdued" title="${ButtonMute}" data-command="ToggleMute"></paper-fab>
<paper-fab icon="info" class="btnCommand videoButton subdued" title="${ButtonOsd}" data-command="ToggleOsdMenu"></paper-fab>
<paper-fab icon="fullscreen" class="btnToggleFullscreen videoButton btnPlayStateCommand subdued" title="${ButtonFullscreen}" data-command="ToggleFullscreen"></paper-fab>
</div>
<div>
<paper-fab icon="volume-down" class="btnCommand subdued" title="${ButtonVolumeDown}" data-command="VolumeDown"></paper-fab>
<paper-fab icon="audiotrack" class="btnAudioTracks videoButton btnPlayStateCommand subdued" title="${ButtonAudioTracks}" data-command="GoToSearch"></paper-fab>
<paper-fab icon="subtitles" class="btnSubtitles videoButton btnPlayStateCommand subdued" title="${ButtonSubtitles}" data-command="GoToSearch"></paper-fab>
<paper-fab icon="movie" class="btnChapters videoButton btnPlayStateCommand subdued" title="${ButtonScenes}" data-command="GoToSearch"></paper-fab>
</div>
</div>
</div>
</neon-animatable>
<neon-animatable>
<div style="text-align:center;">
<div>
<paper-fab icon="keyboard-arrow-up" class="btnArrowUp btnCommand subdued" title="${ButtonArrowUp}" data-command="MoveUp"></paper-fab>
</div>
<div>
<paper-fab icon="keyboard-arrow-left" class="btnArrowLeft btnCommand subdued" title="${ButtonArrowLeft}" data-command="MoveLeft"></paper-fab>
<div class="nowPlayingTimeContainer">
<paper-fab icon="check" class="btnOk btnCommand subdued" title="${ButtonOk}" data-command="Select"></paper-fab>
<paper-fab icon="keyboard-arrow-right" class="btnArrowRight btnCommand subdued" title="${ButtonArrowRight}" data-command="MoveRight"></paper-fab>
</div>
<div>
<paper-fab icon="keyboard-arrow-down" class="btnArrowDown btnCommand subdued" title="${ButtonArrowDown}" data-command="MoveDown"></paper-fab>
</div>
<div>
<paper-fab icon="arrow-back" class="btnBack btnCommand subdued" title="${ButtonBack}" data-command="Back"></paper-fab>
<paper-fab icon="info" class="btnInfo btnCommand subdued" title="${ButtonInfo}" data-command="ToggleContextMenu"></paper-fab>
</div>
<br />
<div>
<paper-fab icon="home" class="btnGoHome btnCommand subdued" title="${ButtonHome}" data-command="GoHome"></paper-fab>
<!--<button data-inline="true" data-iconpos="right" title="${ButtonPageUp}" data-icon="plus" class="btnPageUp btnCommand ui-nodisc-icon" data-command="PageUp">${PageButtonAbbreviation}</button>
<button data-inline="true" data-iconpos="right" title="${ButtonLetterUp}" data-icon="plus" class="btnLetterUp btnCommand ui-nodisc-icon" data-command="NextLetter">${LetterButtonAbbreviation}</button>-->
<paper-fab icon="search" class="btnShowSearch btnCommand subdued" title="${ButtonSearch}" data-command="GoToSearch"></paper-fab>
</div>
<div>
<paper-fab icon="settings" class="bthShowSettings btnCommand subdued" title="${ButtonSettings}" data-command="GoToSettings"></paper-fab>
<!--<button data-inline="true" data-iconpos="right" title="${ButtonPageDown}" data-icon="minus" class="btnPageDown btnCommand ui-nodisc-icon" data-command="PageDown">${PageButtonAbbreviation}</button>
<button data-inline="true" data-iconpos="right" title="${ButtonLetterDown}" data-icon="minus" class="btnLetterDown btnCommand ui-nodisc-icon" data-command="PreviousLetter">${LetterButtonAbbreviation}</button>-->
<paper-fab icon="videocam" class="btnScreenshot btnCommand subdued" title="${ButtonTakeScreenshot}" data-command="TakeScreenshot"></paper-fab>
</div>
</div>
<div class="readOnlyContent requiresJqmCreate" style="margin: 2em auto 0; padding: 0 1em 100px;">
<div data-role="collapsible">
<h2>${HeaderSendMessage}</h2>
<div style="text-align: left;">
<br />
<form class="sendMessageForm">
<div>
<div class="positionSliderContainer sliderContainer" style="margin: 0 auto;">
<input type="range" style="display: none;" class="mediaSlider positionSlider slider" step=".001" min="0" max="100" value="0" data-mini="true" data-theme="a" data-highlight="true" />
</div>
<label for="txtMessageTitle">${LabelMessageTitle}</label>
<input class="sendMessageElement" type="text" id="txtMessageTitle" required="required" />
</div>
<div style="text-align:left;">
<div class="positionTime" style="float:left;"></div>
<div class="runtime" style="float: right;"></div>
<br />
<div>
<label for="txtMessageText">${LabelMessageText}</label>
<input class="sendMessageElement" type="text" id="txtMessageText" required="required" />
</div>
</div>
</div>
<p>
<button class="sendMessageElement" type="submit" data-icon="mail">${ButtonSend}</button>
</p>
</form>
<div class="nowPlayingInfoButtons">
<div>
<paper-fab icon="skip-previous" class="btnPreviousTrack btnPlayStateCommand subdued" title="${ButtonPreviousTrack}"></paper-fab>
<paper-fab icon="pause" class="btnPause btnPlayStateCommand subdued" title="${ButtonPause}"></paper-fab>
<paper-fab icon="play-arrow" class="btnPlay btnPlayStateCommand subdued" title="${ButtonPlay}"></paper-fab>
<paper-fab icon="stop" class="btnPlayStateCommand btnStop subdued" title="${ButtonStop}"></paper-fab>
<paper-fab icon="skip-next" class="btnPlayStateCommand btnNextTrack subdued" title="${ButtonNextTrack}"></paper-fab>
</div>
<div>
<paper-fab icon="volume-up" class="btnCommand subdued" title="${ButtonVolumeUp}" data-command="VolumeUp"></paper-fab>
<paper-fab icon="volume-off" class="btnCommand subdued" title="${ButtonMute}" data-command="ToggleMute"></paper-fab>
<paper-fab icon="info" class="btnCommand videoButton subdued" title="${ButtonOsd}" data-command="ToggleOsdMenu"></paper-fab>
<paper-fab icon="fullscreen" class="btnToggleFullscreen videoButton btnPlayStateCommand subdued" title="${ButtonFullscreen}" data-command="ToggleFullscreen"></paper-fab>
</div>
<div>
<paper-fab icon="volume-down" class="btnCommand subdued" title="${ButtonVolumeDown}" data-command="VolumeDown"></paper-fab>
<paper-fab icon="audiotrack" class="btnAudioTracks videoButton btnPlayStateCommand subdued" title="${ButtonAudioTracks}" data-command="GoToSearch"></paper-fab>
<paper-fab icon="subtitles" class="btnSubtitles videoButton btnPlayStateCommand subdued" title="${ButtonSubtitles}" data-command="GoToSearch"></paper-fab>
<paper-fab icon="movie" class="btnChapters videoButton btnPlayStateCommand subdued" title="${ButtonScenes}" data-command="GoToSearch"></paper-fab>
</div>
</div>
</div>
</neon-animatable>
<neon-animatable>
<div style="text-align:center;">
<div>
<paper-fab icon="keyboard-arrow-up" class="btnArrowUp btnCommand subdued" title="${ButtonArrowUp}" data-command="MoveUp"></paper-fab>
</div>
<div>
<paper-fab icon="keyboard-arrow-left" class="btnArrowLeft btnCommand subdued" title="${ButtonArrowLeft}" data-command="MoveLeft"></paper-fab>
<div data-role="collapsible">
<h2>${HeaderTypeText}</h2>
<div style="text-align: left;">
<paper-fab icon="check" class="btnOk btnCommand subdued" title="${ButtonOk}" data-command="Select"></paper-fab>
<paper-fab icon="keyboard-arrow-right" class="btnArrowRight btnCommand subdued" title="${ButtonArrowRight}" data-command="MoveRight"></paper-fab>
</div>
<div>
<paper-fab icon="keyboard-arrow-down" class="btnArrowDown btnCommand subdued" title="${ButtonArrowDown}" data-command="MoveDown"></paper-fab>
</div>
<div>
<paper-fab icon="arrow-back" class="btnBack btnCommand subdued" title="${ButtonBack}" data-command="Back"></paper-fab>
<paper-fab icon="info" class="btnInfo btnCommand subdued" title="${ButtonInfo}" data-command="ToggleContextMenu"></paper-fab>
</div>
<br />
<div>
<paper-fab icon="home" class="btnGoHome btnCommand subdued" title="${ButtonHome}" data-command="GoHome"></paper-fab>
<br />
<form class="typeTextForm">
<div>
<label for="txtTypeText">${LabelTypeText}</label>
<input class="typeTextElement" type="text" id="txtTypeText" required="required" />
</div>
<p>
<button class="typeTextElement" type="submit" data-icon="arrow-r">${ButtonSend}</button>
</p>
</form>
<!--<button data-inline="true" data-iconpos="right" title="${ButtonPageUp}" data-icon="plus" class="btnPageUp btnCommand ui-nodisc-icon" data-command="PageUp">${PageButtonAbbreviation}</button>
<button data-inline="true" data-iconpos="right" title="${ButtonLetterUp}" data-icon="plus" class="btnLetterUp btnCommand ui-nodisc-icon" data-command="NextLetter">${LetterButtonAbbreviation}</button>-->
<paper-fab icon="search" class="btnShowSearch btnCommand subdued" title="${ButtonSearch}" data-command="GoToSearch"></paper-fab>
</div>
<div>
<paper-fab icon="settings" class="bthShowSettings btnCommand subdued" title="${ButtonSettings}" data-command="GoToSettings"></paper-fab>
<!--<button data-inline="true" data-iconpos="right" title="${ButtonPageDown}" data-icon="minus" class="btnPageDown btnCommand ui-nodisc-icon" data-command="PageDown">${PageButtonAbbreviation}</button>
<button data-inline="true" data-iconpos="right" title="${ButtonLetterDown}" data-icon="minus" class="btnLetterDown btnCommand ui-nodisc-icon" data-command="PreviousLetter">${LetterButtonAbbreviation}</button>-->
<paper-fab icon="videocam" class="btnScreenshot btnCommand subdued" title="${ButtonTakeScreenshot}" data-command="TakeScreenshot"></paper-fab>
</div>
</div>
<div class="readOnlyContent" style="margin: 2em auto 0; padding: 0 1em 100px;">
</div>
</neon-animatable>
<neon-animatable>
<div class="playlist itemsContainer" style="max-width:800px;margin: 1.5em auto 0;">
</div>
</neon-animatable>
</neon-animated-pages>
<div data-role="collapsible">
<h2>${HeaderSendMessage}</h2>
<div style="text-align: left;">
<paper-tabs selected="{{selected}}" style="position:fixed;bottom:0;left:0;right:0;" alignbottom>
<br />
<form class="sendMessageForm">
<div>
<label for="txtMessageTitle">${LabelMessageTitle}</label>
<input class="sendMessageElement" type="text" id="txtMessageTitle" required="required" />
</div>
<br />
<div>
<label for="txtMessageText">${LabelMessageText}</label>
<input class="sendMessageElement" type="text" id="txtMessageText" required="required" />
</div>
<p>
<button class="sendMessageElement" type="submit" data-icon="mail">${ButtonSend}</button>
</p>
</form>
<paper-tab>${TabNowPlaying}</paper-tab>
<paper-tab>${TabControls}</paper-tab>
<paper-tab>${TabPlaylist}</paper-tab>
</div>
</div>
<div data-role="collapsible">
<h2>${HeaderTypeText}</h2>
<div style="text-align: left;">
<br />
<form class="typeTextForm">
<div>
<label for="txtTypeText">${LabelTypeText}</label>
<input class="typeTextElement" type="text" id="txtTypeText" required="required" />
</div>
<p>
<button class="typeTextElement" type="submit" data-icon="arrow-r">${ButtonSend}</button>
</p>
</form>
</div>
</div>
</div>
</neon-animatable>
<neon-animatable>
<div class="playlist itemsContainer" style="max-width:800px;margin: 1.5em auto 0;">
</div>
</neon-animatable>
</neon-animated-pages>
<paper-tabs selected="{{selected}}" style="position:fixed;bottom:0;left:0;right:0;" alignbottom>
<paper-tab>${TabNowPlaying}</paper-tab>
<paper-tab>${TabControls}</paper-tab>
<paper-tab>${TabPlaylist}</paper-tab>
</paper-tabs>
</template>
</paper-tabs>
</div>

View file

@ -703,29 +703,31 @@
$('.sendMessageForm').off('submit', NowPlayingPage.onMessageSubmit).on('submit', NowPlayingPage.onMessageSubmit);
$('.typeTextForm').off('submit', NowPlayingPage.onSendStringSubmit).on('submit', NowPlayingPage.onSendStringSubmit);
$('iron-pages,neon-animatable', this).trigger('create');
$('.requiresJqmCreate', this).trigger('create');
$(page).on('swipeleft', function () {
var pages = this.querySelectorAll('neon-animated-pages')[0];
var tabs = this.querySelectorAll('paper-tabs')[0];
var selected = parseInt(pages.selected || '0');
if (selected < 2) {
pages.entryAnimation = 'slide-from-right-animation';
pages.exitAnimation = 'slide-left-animation';
pages.selectNext();
tabs.selectNext();
}
});
$(page).on('swiperight', function () {
var pages = this.querySelectorAll('neon-animated-pages')[0];
var tabs = this.querySelectorAll('paper-tabs')[0];
var selected = parseInt(pages.selected || '0');
if (selected > 0) {
pages.entryAnimation = 'slide-from-left-animation';
pages.exitAnimation = 'slide-right-animation';
pages.selectPrevious();
tabs.selectPrevious();
}
});
@ -733,6 +735,10 @@
updateCastIcon(page);
});
$('paper-tabs').on('iron-select', function () {
page.querySelectorAll('neon-animated-pages')[0].selected = this.selected;
});
}).on('pagebeforeshowready', "#nowPlayingPage", function () {
$(document.body).addClass('hiddenViewMenuBar');
@ -755,7 +761,8 @@
loadPlaylist(page);
var tab = getParameterByName('tab');
this.querySelectorAll('#scope')[0].selected = tab == 'Playlist' ? 2 : 0;
var selected = tab == 'Playlist' ? 2 : 0;;
this.querySelectorAll('paper-tabs')[0].selected = selected;
updateCastIcon(page);

View file

@ -1,9 +1,14 @@
html, body {
html {
font-family: Helvetica Neue;
/* Setting it here will help prevent white flashes */
background-color: #1c1c1c;
}
html, body {
font-family: Helvetica Neue;
}
.viewMenuBar, .libraryViewNav {
background-color: rgba(28,28,28,.97);
}

View file

@ -15,5 +15,4 @@
<link rel="import" href="bower_components/paper-icon-button/paper-icon-button.html">
<link rel="import" href="bower_components/paper-drawer-panel/paper-drawer-panel.html">
<link rel="import" href="bower_components/paper-tabs/paper-tabs.html">
<link rel="import" href="bower_components/iron-pages/iron-pages.html">
<link rel="import" href="thirdparty/emby-icons.html">

View file

@ -11252,8 +11252,6 @@ The `aria-labelledby` attribute will be set to the header element, if one exists
</head><body><div hidden="" by-vulcanize=""><dom-module id="paper-material" assetpath="bower_components/paper-material/">
<style>
:host {
@ -14788,61 +14786,6 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
});
</script>
<dom-module id="iron-pages" assetpath="bower_components/iron-pages/">
<style>
:host {
display: block;
}
:host > ::content > :not(.iron-selected) {
display: none !important;
}
</style>
<template>
<content></content>
</template>
</dom-module>
<script>
Polymer({
is: 'iron-pages',
behaviors: [
Polymer.IronResizableBehavior,
Polymer.IronSelectableBehavior
],
properties: {
// as the selected page is the only one visible, activateEvent
// is both non-sensical and problematic; e.g. in cases where a user
// handler attempts to change the page and the activateEvent
// handler immediately changes it back
activateEvent: {
value: null
}
},
observers: [
'_selectedPageChanged(selected)'
],
_selectedPageChanged: function(selected, old) {
this.async(this.notifyResize);
}
});
</script>
<iron-iconset-svg name="icons" size="24">
<svg>