diff --git a/dashboard-ui/apiclient/apiclient.js b/dashboard-ui/apiclient/apiclient.js
index 8af5498521..a4250f07c9 100644
--- a/dashboard-ui/apiclient/apiclient.js
+++ b/dashboard-ui/apiclient/apiclient.js
@@ -1197,53 +1197,9 @@
}, false);
};
- self.getInstantMixFromSong = function (itemId, options) {
+ self.getInstantMixFromItem = function (itemId, options) {
- var url = self.getUrl("Songs/" + itemId + "/InstantMix", options);
-
- return self.ajax({
- type: "GET",
- url: url,
- dataType: "json"
- });
- };
-
- self.getInstantMixFromAlbum = function (itemId, options) {
-
- var url = self.getUrl("Albums/" + itemId + "/InstantMix", options);
-
- return self.ajax({
- type: "GET",
- url: url,
- dataType: "json"
- });
- };
-
- self.getInstantMixFromArtist = function (options) {
-
- var url = self.getUrl("Artists/InstantMix", options);
-
- return self.ajax({
- type: "GET",
- url: url,
- dataType: "json"
- });
- };
-
- self.getInstantMixFromMusicGenre = function (options) {
-
- var url = self.getUrl("MusicGenres/InstantMix", options);
-
- return self.ajax({
- type: "GET",
- url: url,
- dataType: "json"
- });
- };
-
- self.getInstantMixFromPlaylist = function (itemId, options) {
-
- var url = self.getUrl("Playlists/" + itemId + "/InstantMix", options);
+ var url = self.getUrl("Items/" + itemId + "/InstantMix", options);
return self.ajax({
type: "GET",
diff --git a/dashboard-ui/apiclient/connectionmanager.js b/dashboard-ui/apiclient/connectionmanager.js
index ef070854e8..de9805c07b 100644
--- a/dashboard-ui/apiclient/connectionmanager.js
+++ b/dashboard-ui/apiclient/connectionmanager.js
@@ -376,7 +376,7 @@
throw new Error("null accessToken");
}
- var url = "https://connect.mediabrowser.tv/service/user?id=" + userId;
+ var url = "https://connect.emby.media/service/user?id=" + userId;
return HttpClient.send({
type: "GET",
@@ -632,7 +632,7 @@
return deferred.promise();
}
- var url = "https://connect.mediabrowser.tv/service/servers?userId=" + credentials.ConnectUserId;
+ var url = "https://connect.emby.media/service/servers?userId=" + credentials.ConnectUserId;
HttpClient.send({
type: "GET",
@@ -1085,7 +1085,7 @@
HttpClient.send({
type: "POST",
- url: "https://connect.mediabrowser.tv/service/user/authenticate",
+ url: "https://connect.emby.media/service/user/authenticate",
data: {
nameOrEmail: username,
password: md5
@@ -1148,7 +1148,7 @@
HttpClient.send({
type: "POST",
- url: "https://connect.mediabrowser.tv/service/register",
+ url: "https://connect.emby.media/service/register",
data: {
email: email,
userName: username,
@@ -1216,7 +1216,7 @@
throw new Error("null connectUserId");
}
- var url = "https://connect.mediabrowser.tv/service/servers?userId=" + self.connectUserId() + "&status=Waiting";
+ var url = "https://connect.emby.media/service/servers?userId=" + self.connectUserId() + "&status=Waiting";
return HttpClient.send({
type: "GET",
@@ -1256,7 +1256,7 @@
return deferred.promise();
}
- var url = "https://connect.mediabrowser.tv/service/serverAuthorizations?serverId=" + serverId + "&userId=" + self.connectUserId();
+ var url = "https://connect.emby.media/service/serverAuthorizations?serverId=" + serverId + "&userId=" + self.connectUserId();
HttpClient.send({
type: "DELETE",
@@ -1285,7 +1285,7 @@
throw new Error("null connectUserId");
}
- var url = "https://connect.mediabrowser.tv/service/serverAuthorizations?serverId=" + serverId + "&userId=" + self.connectUserId();
+ var url = "https://connect.emby.media/service/serverAuthorizations?serverId=" + serverId + "&userId=" + self.connectUserId();
return HttpClient.send({
type: "DELETE",
@@ -1312,7 +1312,7 @@
throw new Error("null connectUserId");
}
- var url = "https://connect.mediabrowser.tv/service/ServerAuthorizations/accept?serverId=" + serverId + "&userId=" + self.connectUserId();
+ var url = "https://connect.emby.media/service/ServerAuthorizations/accept?serverId=" + serverId + "&userId=" + self.connectUserId();
return HttpClient.send({
type: "GET",
diff --git a/dashboard-ui/bower_components/iron-flex-layout/.bower.json b/dashboard-ui/bower_components/iron-flex-layout/.bower.json
index 90b7b9e929..6533803466 100644
--- a/dashboard-ui/bower_components/iron-flex-layout/.bower.json
+++ b/dashboard-ui/bower_components/iron-flex-layout/.bower.json
@@ -23,14 +23,14 @@
"paper-styles": "polymerelements/paper-styles#^1.0.0",
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
},
- "homepage": "https://github.com/polymerelements/iron-flex-layout",
+ "homepage": "https://github.com/PolymerElements/iron-flex-layout",
"_release": "1.0.3",
"_resolution": {
"type": "version",
"tag": "v1.0.3",
"commit": "e6c2cfec18354973ac03e70dcd8afcc3c72d09b9"
},
- "_source": "git://github.com/polymerelements/iron-flex-layout.git",
+ "_source": "git://github.com/PolymerElements/iron-flex-layout.git",
"_target": "^1.0.0",
- "_originalSource": "polymerelements/iron-flex-layout"
+ "_originalSource": "PolymerElements/iron-flex-layout"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/iron-overlay-behavior/.bower.json b/dashboard-ui/bower_components/iron-overlay-behavior/.bower.json
index ea16ce655c..1d4238574e 100644
--- a/dashboard-ui/bower_components/iron-overlay-behavior/.bower.json
+++ b/dashboard-ui/bower_components/iron-overlay-behavior/.bower.json
@@ -1,6 +1,6 @@
{
"name": "iron-overlay-behavior",
- "version": "1.0.5",
+ "version": "1.0.6",
"license": "http://polymer.github.io/LICENSE.txt",
"description": "Provides a behavior for making an element an overlay",
"private": true,
@@ -35,11 +35,11 @@
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
},
"homepage": "https://github.com/polymerelements/iron-overlay-behavior",
- "_release": "1.0.5",
+ "_release": "1.0.6",
"_resolution": {
"type": "version",
- "tag": "v1.0.5",
- "commit": "f03cea265587c724cf3a85aef76b2ab7ccfd2b94"
+ "tag": "v1.0.6",
+ "commit": "9c77f077f4181b6f03cc986d0f3c224094edbc2d"
},
"_source": "git://github.com/polymerelements/iron-overlay-behavior.git",
"_target": "^1.0.0",
diff --git a/dashboard-ui/bower_components/iron-overlay-behavior/bower.json b/dashboard-ui/bower_components/iron-overlay-behavior/bower.json
index 36b2d27d30..678273fad3 100644
--- a/dashboard-ui/bower_components/iron-overlay-behavior/bower.json
+++ b/dashboard-ui/bower_components/iron-overlay-behavior/bower.json
@@ -1,6 +1,6 @@
{
"name": "iron-overlay-behavior",
- "version": "1.0.5",
+ "version": "1.0.6",
"license": "http://polymer.github.io/LICENSE.txt",
"description": "Provides a behavior for making an element an overlay",
"private": true,
diff --git a/dashboard-ui/bower_components/iron-overlay-behavior/iron-overlay-behavior.html b/dashboard-ui/bower_components/iron-overlay-behavior/iron-overlay-behavior.html
index 3539a61e6d..180b19cefa 100644
--- a/dashboard-ui/bower_components/iron-overlay-behavior/iron-overlay-behavior.html
+++ b/dashboard-ui/bower_components/iron-overlay-behavior/iron-overlay-behavior.html
@@ -138,17 +138,6 @@ context. You should place this element as a child of `` whenever possible.
},
-/**
- * Fired after the `iron-overlay` opens.
- * @event iron-overlay-opened
- */
-
-/**
- * Fired after the `iron-overlay` closes.
- * @event iron-overlay-closed
- * @param {{canceled: (boolean|undefined)}} set to the `closingReason` attribute
- */
-
listeners: {
'click': '_onClick',
'iron-resize': '_onIronResize'
@@ -425,6 +414,16 @@ context. You should place this element as a child of `` whenever possible.
}
}
+/**
+ * Fired after the `iron-overlay` opens.
+ * @event iron-overlay-opened
+ */
+
+/**
+ * Fired after the `iron-overlay` closes.
+ * @event iron-overlay-closed
+ * @param {{canceled: (boolean|undefined)}} set to the `closingReason` attribute
+ */
};
/** @polymerBehavior */
diff --git a/dashboard-ui/bower_components/iron-overlay-behavior/iron-overlay-manager.html b/dashboard-ui/bower_components/iron-overlay-behavior/iron-overlay-manager.html
index c66f9aa77c..a8709558da 100644
--- a/dashboard-ui/bower_components/iron-overlay-behavior/iron-overlay-manager.html
+++ b/dashboard-ui/bower_components/iron-overlay-behavior/iron-overlay-manager.html
@@ -45,7 +45,11 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
}
function currentOverlay() {
- return overlays[overlays.length-1];
+ var i = overlays.length - 1;
+ while (overlays[i] && !overlays[i].opened) {
+ --i;
+ }
+ return overlays[i];
}
function currentOverlayZ() {
diff --git a/dashboard-ui/bower_components/iron-overlay-behavior/test/iron-overlay-behavior.html b/dashboard-ui/bower_components/iron-overlay-behavior/test/iron-overlay-behavior.html
index 4829439f0b..f821e55899 100644
--- a/dashboard-ui/bower_components/iron-overlay-behavior/test/iron-overlay-behavior.html
+++ b/dashboard-ui/bower_components/iron-overlay-behavior/test/iron-overlay-behavior.html
@@ -141,6 +141,24 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
});
});
+ test('close an overlay in proximity to another overlay', function(done) {
+ var secondOverlay = fixture('basic');
+ // Open and close a separate overlay.
+ secondOverlay.open();
+ secondOverlay.close();
+
+ // Open the overlay we care about.
+ overlay.open();
+
+ // Wait for infinite recursion, otherwise we win:
+ overlay.addEventListener('iron-overlay-closed', function() {
+ done();
+ });
+
+ // Immediately close the first overlay:
+ overlay.close();
+ });
+
test('clicking an overlay does not close it', function(done) {
runAfterOpen(overlay, function() {
overlay.addEventListener('iron-overlay-closed', function() {
diff --git a/dashboard-ui/bower_components/paper-ripple/.bower.json b/dashboard-ui/bower_components/paper-ripple/.bower.json
index 93d8b8c843..0cbf50c9ff 100644
--- a/dashboard-ui/bower_components/paper-ripple/.bower.json
+++ b/dashboard-ui/bower_components/paper-ripple/.bower.json
@@ -26,14 +26,14 @@
"web-component-tester": "*",
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
},
- "homepage": "https://github.com/PolymerElements/paper-ripple",
+ "homepage": "https://github.com/polymerelements/paper-ripple",
"_release": "1.0.1",
"_resolution": {
"type": "version",
"tag": "v1.0.1",
"commit": "af19d904802437c305390bb03415c11661de3d0a"
},
- "_source": "git://github.com/PolymerElements/paper-ripple.git",
+ "_source": "git://github.com/polymerelements/paper-ripple.git",
"_target": "^1.0.0",
- "_originalSource": "PolymerElements/paper-ripple"
+ "_originalSource": "polymerelements/paper-ripple"
}
\ No newline at end of file
diff --git a/dashboard-ui/bower_components/polymer/.bower.json b/dashboard-ui/bower_components/polymer/.bower.json
index 81f446ebe9..1c882a78da 100644
--- a/dashboard-ui/bower_components/polymer/.bower.json
+++ b/dashboard-ui/bower_components/polymer/.bower.json
@@ -1,6 +1,6 @@
{
"name": "polymer",
- "version": "1.1.1",
+ "version": "1.1.2",
"main": [
"polymer.html"
],
@@ -25,11 +25,11 @@
},
"private": true,
"homepage": "https://github.com/Polymer/polymer",
- "_release": "1.1.1",
+ "_release": "1.1.2",
"_resolution": {
"type": "version",
- "tag": "v1.1.1",
- "commit": "c0bd5a73b4bd694b7fa5ead01ff558ed542f6bd8"
+ "tag": "v1.1.2",
+ "commit": "9b0a25e347404ac164bc610bbd2ccbc91b6799b2"
},
"_source": "git://github.com/Polymer/polymer.git",
"_target": "^1.0.0",
diff --git a/dashboard-ui/bower_components/polymer/bower.json b/dashboard-ui/bower_components/polymer/bower.json
index 0f0ad0362a..9a625e55cc 100644
--- a/dashboard-ui/bower_components/polymer/bower.json
+++ b/dashboard-ui/bower_components/polymer/bower.json
@@ -1,6 +1,6 @@
{
"name": "polymer",
- "version": "1.1.1",
+ "version": "1.1.2",
"main": [
"polymer.html"
],
diff --git a/dashboard-ui/bower_components/polymer/polymer-micro.html b/dashboard-ui/bower_components/polymer/polymer-micro.html
index 235770d4d8..c5ad27c6e9 100644
--- a/dashboard-ui/bower_components/polymer/polymer-micro.html
+++ b/dashboard-ui/bower_components/polymer/polymer-micro.html
@@ -20,7 +20,7 @@ addEventListener('DOMContentLoaded', resolve);
}
}
}());
-Polymer = {
+window.Polymer = {
Settings: function () {
var user = window.Polymer || {};
location.search.slice(1).split('&').forEach(function (o) {
@@ -48,15 +48,21 @@ useNativeCustomElements: useNativeCustomElements
(function () {
var userPolymer = window.Polymer;
window.Polymer = function (prototype) {
-var ctor = desugar(prototype);
-prototype = ctor.prototype;
-var options = { prototype: prototype };
-if (prototype.extends) {
-options.extends = prototype.extends;
+if (typeof prototype === 'function') {
+prototype = prototype.prototype;
}
+if (!prototype) {
+prototype = {};
+}
+var factory = desugar(prototype);
+prototype = factory.prototype;
+var options = {
+prototype: prototype,
+extends: prototype.extends
+};
Polymer.telemetry._registrate(prototype);
document.registerElement(prototype.is, options);
-return ctor;
+return factory;
};
var desugar = function (prototype) {
var base = Polymer.Base;
@@ -133,6 +139,8 @@ _addFeature: function (feature) {
this.extend(this, feature);
},
registerCallback: function () {
+this._desugarBehaviors();
+this._doBehavior('beforeRegister');
this._registerFeatures();
this._doBehavior('registered');
},
@@ -238,6 +246,7 @@ lcModules[id.toLowerCase()] = this;
}
},
import: function (id, selector) {
+if (id) {
var m = findModule(id);
if (!m) {
forceDocumentUpgrade();
@@ -248,6 +257,7 @@ m = m.querySelector(selector);
}
return m;
}
+}
});
var cePolyfill = window.CustomElements && !CustomElements.useNative;
document.registerElement('dom-module', DomModule);
@@ -255,8 +265,7 @@ function forceDocumentUpgrade() {
if (cePolyfill) {
var script = document._currentScript || document.currentScript;
var doc = script && script.ownerDocument;
-if (doc && !doc.__customElementsForceUpgraded) {
-doc.__customElementsForceUpgraded = true;
+if (doc) {
CustomElements.upgradeAll(doc);
}
}
@@ -278,11 +287,17 @@ this.is = this.is.toLowerCase();
});
Polymer.Base._addFeature({
behaviors: [],
-_prepBehaviors: function () {
+_desugarBehaviors: function () {
if (this.behaviors.length) {
-this.behaviors = this._flattenBehaviorsList(this.behaviors);
+this.behaviors = this._desugarSomeBehaviors(this.behaviors);
}
-this._prepAllBehaviors(this.behaviors);
+},
+_desugarSomeBehaviors: function (behaviors) {
+behaviors = this._flattenBehaviorsList(behaviors);
+for (var i = behaviors.length - 1; i >= 0; i--) {
+this._mixinBehavior(behaviors[i]);
+}
+return behaviors;
},
_flattenBehaviorsList: function (behaviors) {
var flat = [];
@@ -297,15 +312,6 @@ this._warn(this._logf('_flattenBehaviorsList', 'behavior is null, check for miss
}, this);
return flat;
},
-_prepAllBehaviors: function (behaviors) {
-for (var i = behaviors.length - 1; i >= 0; i--) {
-this._mixinBehavior(behaviors[i]);
-}
-for (var i = 0, l = behaviors.length; i < l; i++) {
-this._prepBehavior(behaviors[i]);
-}
-this._prepBehavior(this);
-},
_mixinBehavior: function (b) {
Object.getOwnPropertyNames(b).forEach(function (n) {
switch (n) {
@@ -329,6 +335,15 @@ break;
}
}, this);
},
+_prepBehaviors: function () {
+this._prepFlattenedBehaviors(this.behaviors);
+},
+_prepFlattenedBehaviors: function (behaviors) {
+for (var i = 0, l = behaviors.length; i < l; i++) {
+this._prepBehavior(behaviors[i]);
+}
+this._prepBehavior(this);
+},
_doBehavior: function (name, args) {
this.behaviors.forEach(function (b) {
this._invokeBehavior(b, name, args);
@@ -561,7 +576,7 @@ debouncer.stop();
}
}
});
-Polymer.version = '1.1.1';
+Polymer.version = '1.1.2';
Polymer.Base._addFeature({
_registerFeatures: function () {
this._prepIs();
diff --git a/dashboard-ui/bower_components/polymer/polymer-mini.html b/dashboard-ui/bower_components/polymer/polymer-mini.html
index 26f3ac69fb..edfbf670f3 100644
--- a/dashboard-ui/bower_components/polymer/polymer-mini.html
+++ b/dashboard-ui/bower_components/polymer/polymer-mini.html
@@ -580,8 +580,9 @@ return added;
},
_tryRemoveUndistributedNode: function (node) {
if (this.node.shadyRoot) {
-if (node._composedParent) {
-nativeRemoveChild.call(node._composedParent, node);
+var parent = getComposedParent(node);
+if (parent) {
+nativeRemoveChild.call(parent, node);
}
return true;
}
@@ -618,7 +619,7 @@ if (root && hostNeedsDist) {
this._updateInsertionPoints(root.host);
this._lazyDistribute(root.host);
} else if (ensureComposedRemoval) {
-removeFromComposedParent(node._composedParent, node);
+removeFromComposedParent(getComposedParent(node), node);
}
},
_removeDistributedChildren: function (root, container) {
@@ -842,7 +843,7 @@ configurable: true
},
parentNode: {
get: function () {
-return this.node._lightParent || (this.node.__patched ? this.node._composedParent : this.node.parentNode);
+return this.node._lightParent || getComposedParent(this.node);
},
configurable: true
},
@@ -964,6 +965,18 @@ DomApi.prototype._getComposedInnerHTML = function () {
return getInnerHTML(this.node, true);
};
} else {
+var forwardMethods = [
+'cloneNode',
+'appendChild',
+'insertBefore',
+'removeChild',
+'replaceChild'
+];
+forwardMethods.forEach(function (name) {
+DomApi.prototype[name] = function () {
+return this.node[name].apply(this.node, arguments);
+};
+});
DomApi.prototype.querySelectorAll = function (selector) {
return Array.prototype.slice.call(this.node.querySelectorAll(selector));
};
@@ -976,9 +989,6 @@ return n;
n = n.parentNode;
}
};
-DomApi.prototype.cloneNode = function (deep) {
-return this.node.cloneNode(deep);
-};
DomApi.prototype.importNode = function (externalNode, deep) {
var doc = this.node instanceof Document ? this.node : this.node.ownerDocument;
return doc.importNode(externalNode, deep);
@@ -1025,7 +1035,7 @@ return this.node.innerHTML = value;
configurable: true
}
});
-var forwards = [
+var forwardProperties = [
'parentNode',
'firstChild',
'lastChild',
@@ -1036,7 +1046,7 @@ var forwards = [
'nextElementSibling',
'previousElementSibling'
];
-forwards.forEach(function (name) {
+forwardProperties.forEach(function (name) {
Object.defineProperty(DomApi.prototype, name, {
get: function () {
return this.node[name];
@@ -1120,6 +1130,9 @@ node._composedChildren = null;
addNodeToComposedChildren(node, parent, children, i);
}
}
+function getComposedParent(node) {
+return node.__patched ? node._composedParent : node.parentNode;
+}
function addNodeToComposedChildren(node, parent, children, i) {
node._composedParent = parent;
children.splice(i >= 0 ? i : children.length, 0, node);
@@ -1150,6 +1163,7 @@ var p = Element.prototype;
var matchesSelector = p.matches || p.matchesSelector || p.mozMatchesSelector || p.msMatchesSelector || p.oMatchesSelector || p.webkitMatchesSelector;
return {
getLightChildren: getLightChildren,
+getComposedParent: getComposedParent,
getComposedChildren: getComposedChildren,
removeFromComposedParent: removeFromComposedParent,
saveLightChildrenIfNeeded: saveLightChildrenIfNeeded,
@@ -1338,7 +1352,9 @@ var composed = getComposedChildren(container);
var splices = Polymer.ArraySplice.calculateSplices(children, composed);
for (var i = 0, d = 0, s; i < splices.length && (s = splices[i]); i++) {
for (var j = 0, n; j < s.removed.length && (n = s.removed[j]); j++) {
+if (getComposedParent(n) === container) {
remove(n);
+}
composed.splice(s.index + d, 1);
}
d -= s.addedCount;
@@ -1351,6 +1367,7 @@ insertBefore(container, n, next);
composed.splice(j, 0, n);
}
}
+ensureComposedParent(container, children);
},
_matchesContentSelect: function (node, contentElement) {
var select = contentElement.getAttribute('select');
@@ -1380,6 +1397,7 @@ var getLightChildren = Polymer.DomApi.getLightChildren;
var matchesSelector = Polymer.DomApi.matchesSelector;
var hasInsertionPoint = Polymer.DomApi.hasInsertionPoint;
var getComposedChildren = Polymer.DomApi.getComposedChildren;
+var getComposedParent = Polymer.DomApi.getComposedParent;
var removeFromComposedParent = Polymer.DomApi.removeFromComposedParent;
function distributeNodeInto(child, insertionPoint) {
insertionPoint._distributedNodes.push(child);
@@ -1433,8 +1451,10 @@ node._composedParent = null;
nativeRemoveChild.call(parentNode, node);
}
}
-function getComposedParent(node) {
-return node.__patched ? node._composedParent : node.parentNode;
+function ensureComposedParent(parent, children) {
+for (var i = 0, n; i < children.length; i++) {
+children[i]._composedParent = parent;
+}
}
function getTopDistributingHost(host) {
while (host && hostNeedsRedistribution(host)) {
diff --git a/dashboard-ui/bower_components/polymer/polymer.html b/dashboard-ui/bower_components/polymer/polymer.html
index fdccf2a4eb..d9d046c2f3 100644
--- a/dashboard-ui/bower_components/polymer/polymer.html
+++ b/dashboard-ui/bower_components/polymer/polymer.html
@@ -236,7 +236,11 @@ if (!this._template) {
this._notes = [];
} else {
Polymer.Annotations.prepElement = this._prepElement.bind(this);
+if (this._template._content && this._template._content._notes) {
+this._notes = this._template._content._notes;
+} else {
this._notes = Polymer.Annotations.parseAnnotations(this._template);
+}
this._processAnnotations(this._notes);
Polymer.Annotations.prepElement = null;
}
@@ -637,7 +641,6 @@ prevent = dy > dx;
prevent = dx > dy;
}
if (prevent) {
-//This prevents horizontal scrolling in safari
//ev.preventDefault();
} else {
Gestures.prevent('track');
@@ -2234,6 +2237,9 @@ clearStyleRules: function (style) {
style.__cssRules = null;
},
forEachStyleRule: function (node, callback) {
+if (!node) {
+return;
+}
var s = node.parsedSelector;
var skipRules = false;
if (node.type === this.ruleTypes.STYLE_RULE) {
@@ -2262,19 +2268,22 @@ afterNode = n$[n$.length - 1];
target.insertBefore(style, afterNode && afterNode.nextSibling || target.firstChild);
return style;
},
-cssFromModules: function (moduleIds) {
+cssFromModules: function (moduleIds, warnIfNotFound) {
var modules = moduleIds.trim().split(' ');
var cssText = '';
for (var i = 0; i < modules.length; i++) {
-cssText += this.cssFromModule(modules[i]);
+cssText += this.cssFromModule(modules[i], warnIfNotFound);
}
return cssText;
},
-cssFromModule: function (moduleId) {
+cssFromModule: function (moduleId, warnIfNotFound) {
var m = Polymer.DomModule.import(moduleId);
if (m && !m._cssText) {
m._cssText = this._cssFromElement(m);
}
+if (!m && warnIfNotFound) {
+console.warn('Could not find style data in module named', moduleId);
+}
return m && m._cssText || '';
},
_cssFromElement: function (element) {
@@ -2288,12 +2297,12 @@ cssText += this._cssFromElement(e);
} else {
if (e.localName === 'style') {
var include = e.getAttribute(this.INCLUDE_ATTR);
+if (include) {
+cssText += this.cssFromModules(include, true);
+}
e = e.__appliedElement || e;
e.parentNode.removeChild(e);
cssText += this.resolveCss(e.textContent, element.ownerDocument);
-if (include) {
-cssText += this.cssFromModules(include);
-}
} else if (e.import && e.import.body) {
cssText += this.resolveCss(e.import.body.textContent, e.import);
}
@@ -3230,15 +3239,20 @@ observer.observe(e, { childList: true });
_apply: function () {
var e = this.__appliedElement || this;
if (this.include) {
-e.textContent += styleUtil.cssFromModules(this.include);
+e.textContent = styleUtil.cssFromModules(this.include, true) + e.textContent;
}
-var rules = styleUtil.rulesForStyle(e);
-styleUtil.forEachStyleRule(rules, function (rule) {
+if (e.textContent) {
+styleUtil.forEachStyleRule(styleUtil.rulesForStyle(e), function (rule) {
styleTransformer.documentRule(rule);
});
+this._applyCustomProperties(e);
+}
+},
+_applyCustomProperties: function (element) {
this._computeStyleProperties();
var props = this._styleProperties;
-e.textContent = styleUtil.toCssText(rules, function (rule) {
+var rules = styleUtil.rulesForStyle(element);
+element.textContent = styleUtil.toCssText(rules, function (rule) {
var css = rule.cssText = rule.parsedCssText;
if (rule.propertyInfo && rule.propertyInfo.cssText) {
css = cssParse.removeCustomPropAssignment(css);
diff --git a/dashboard-ui/css/card.css b/dashboard-ui/css/card.css
index e4892dafce..2a5a276a5c 100644
--- a/dashboard-ui/css/card.css
+++ b/dashboard-ui/css/card.css
@@ -62,6 +62,14 @@
background-color: #333;
}
+.homeTopViews .defaultBackground .cardImage {
+ background-color: #181818;
+}
+
+.homeTopViews .cardImage {
+ border-radius: 5px;
+}
+
.cardOverlayPlayButton {
position: absolute;
bottom: 0;
@@ -231,6 +239,11 @@
line-height: 1.4;
}
+.homeTopViews .cardText {
+ font-size: 15px;
+ padding-top: 10px;
+}
+
.cardButtonContainer {
text-align: right;
float: right;
@@ -309,10 +322,10 @@
position: absolute;
left: 0;
right: 0;
- width: 64px;
- height: 64px;
+ width: 50%;
+ height: 50%;
margin: auto;
- top: 25%;
+ top: 22%;
}
.bannerCard {
@@ -649,17 +662,24 @@
}
}
-@media all and (min-width: 1100px) {
+@media all and (min-width: 800px) {
.homePageSmallBackdropCard {
width: 20%;
}
}
+@media all and (min-width: 1100px) {
+
+ .homePageSmallBackdropCard {
+ width: 16.66666666666667%;
+ }
+}
+
@media all and (min-width: 1440px) {
.homePageSmallBackdropCard {
- width: 14.285714285714285714285714285714%;
+ width: 12.5%;
}
}
diff --git a/dashboard-ui/css/mediaplayer-video.css b/dashboard-ui/css/mediaplayer-video.css
index d255a0d87f..74adec32eb 100644
--- a/dashboard-ui/css/mediaplayer-video.css
+++ b/dashboard-ui/css/mediaplayer-video.css
@@ -37,8 +37,6 @@
}
.videoControls {
- padding: 0 .5em;
- background-color: rgba(0, 0, 0, .7);
position: fixed;
left: 0;
bottom: 0;
@@ -47,6 +45,14 @@
text-align: center;
}
+ .videoControls > div {
+ background-color: rgba(0, 0, 0, .7);
+ }
+
+.videoControlButtons {
+ padding: 0 .5em;
+}
+
.videoTopControls {
padding: 0 1em;
background-color: rgba(0, 0, 0, .5);
@@ -69,8 +75,8 @@
}
.nowPlayingInfo {
- text-align: center;
- padding: 1.5em 1em 2em 1em;
+ text-align: left;
+ padding: 1.5em 1em 2em 3em;
}
#videoPlayer .nowPlayingImage img {
@@ -88,7 +94,7 @@
vertical-align: top;
color: #eee;
display: inline-block;
- width: 70%;
+ width: 80%;
font-weight: normal;
font-size: 14px;
}
@@ -202,7 +208,7 @@
@media all and (max-width: 1400px), all and (max-height: 900px) {
- #mediaPlayer .nowPlayingInfo {
+ .mediaButton.infoButton {
display: none !important;
}
}
diff --git a/dashboard-ui/css/mediaplayer.css b/dashboard-ui/css/mediaplayer.css
index 162ede6f42..c997503314 100644
--- a/dashboard-ui/css/mediaplayer.css
+++ b/dashboard-ui/css/mediaplayer.css
@@ -4,7 +4,7 @@
}
.nowPlayingText {
- display: inline-block;
+ display: inline-block;.
font-weight: normal;
position: relative;
top: -7px;
@@ -18,6 +18,15 @@
max-width: 130px;
}
+.mediaButton.infoButton iron-icon {
+ width: 34px;
+ height: 34px;
+}
+
+.mediaButton.active {
+ color: #2ad;
+}
+
@media (min-width: 500px) {
.nowPlayingText {
max-width: 180px;
diff --git a/dashboard-ui/css/search.css b/dashboard-ui/css/search.css
index a92da8ca01..058ebcc5b9 100644
--- a/dashboard-ui/css/search.css
+++ b/dashboard-ui/css/search.css
@@ -125,8 +125,7 @@
.searchInputIcon {
position: absolute;
left: 20px;
- top: 15px;
- font-size: 16px !important;
+ top: 12px;
color: #ddd !important;
}
diff --git a/dashboard-ui/css/site.css b/dashboard-ui/css/site.css
index 0db3298dfe..1108f5e6bd 100644
--- a/dashboard-ui/css/site.css
+++ b/dashboard-ui/css/site.css
@@ -115,7 +115,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
- src: local('Roboto'), local('Roboto-Regular'), url(http://fonts.gstatic.com/s/roboto/v15/ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
+ src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/ek4gzZ-GeXAPcSbHtCeQI_esZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
}
/* cyrillic */
@@ -123,7 +123,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
- src: local('Roboto'), local('Roboto-Regular'), url(http://fonts.gstatic.com/s/roboto/v15/mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
+ src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/mErvLBYg_cXG3rLvUsKT_fesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@@ -131,7 +131,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
- src: local('Roboto'), local('Roboto-Regular'), url(http://fonts.gstatic.com/s/roboto/v15/-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
+ src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/-2n2p-_Y08sg57CNWQfKNvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
unicode-range: U+1F00-1FFF;
}
/* greek */
@@ -139,7 +139,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
- src: local('Roboto'), local('Roboto-Regular'), url(http://fonts.gstatic.com/s/roboto/v15/u0TOpm082MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
+ src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/u0TOpm082MNkS5K0Q4rhqvesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
unicode-range: U+0370-03FF;
}
/* vietnamese */
@@ -147,7 +147,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 400;
- src: local('Roboto'), local('Roboto-Regular'), url(http://fonts.gstatic.com/s/roboto/v15/NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
+ src: local('Roboto'), local('Roboto-Regular'), url(https://fonts.gstatic.com/s/roboto/v15/NdF9MtnOpLzo-noMoG0miPesZW2xOQ-xsNqO47m55DA.woff2) format('woff2'), url(fonts/roboto/RobotoRegular.woff) format('woff');
unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
}
/* latin-ext */
@@ -171,7 +171,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 500;
- src: local('Roboto Medium'), local('Roboto-Medium'), url(http://fonts.gstatic.com/s/roboto/v15/ZLqKeelYbATG60EpZBSDyxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
+ src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/ZLqKeelYbATG60EpZBSDyxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
}
/* cyrillic */
@@ -179,7 +179,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 500;
- src: local('Roboto Medium'), local('Roboto-Medium'), url(http://fonts.gstatic.com/s/roboto/v15/oHi30kwQWvpCWqAhzHcCSBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
+ src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/oHi30kwQWvpCWqAhzHcCSBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@@ -187,7 +187,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 500;
- src: local('Roboto Medium'), local('Roboto-Medium'), url(http://fonts.gstatic.com/s/roboto/v15/rGvHdJnr2l75qb0YND9NyBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
+ src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/rGvHdJnr2l75qb0YND9NyBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
unicode-range: U+1F00-1FFF;
}
/* greek */
@@ -195,7 +195,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 500;
- src: local('Roboto Medium'), local('Roboto-Medium'), url(http://fonts.gstatic.com/s/roboto/v15/mx9Uck6uB63VIKFYnEMXrRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
+ src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/mx9Uck6uB63VIKFYnEMXrRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
unicode-range: U+0370-03FF;
}
/* vietnamese */
@@ -203,7 +203,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 500;
- src: local('Roboto Medium'), local('Roboto-Medium'), url(http://fonts.gstatic.com/s/roboto/v15/mbmhprMH69Zi6eEPBYVFhRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
+ src: local('Roboto Medium'), local('Roboto-Medium'), url(https://fonts.gstatic.com/s/roboto/v15/mbmhprMH69Zi6eEPBYVFhRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoMedium.woff) format('woff');
unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
}
/* latin-ext */
@@ -227,7 +227,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 700;
- src: local('Roboto Bold'), local('Roboto-Bold'), url(http://fonts.gstatic.com/s/roboto/v15/77FXFjRbGzN4aCrSFhlh3hJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
+ src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/77FXFjRbGzN4aCrSFhlh3hJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
}
/* cyrillic */
@@ -235,7 +235,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 700;
- src: local('Roboto Bold'), local('Roboto-Bold'), url(http://fonts.gstatic.com/s/roboto/v15/isZ-wbCXNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
+ src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/isZ-wbCXNKAbnjo6_TwHThJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@@ -243,7 +243,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 700;
- src: local('Roboto Bold'), local('Roboto-Bold'), url(http://fonts.gstatic.com/s/roboto/v15/UX6i4JxQDm3fVTc1CPuwqhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
+ src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/UX6i4JxQDm3fVTc1CPuwqhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
unicode-range: U+1F00-1FFF;
}
/* greek */
@@ -251,7 +251,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 700;
- src: local('Roboto Bold'), local('Roboto-Bold'), url(http://fonts.gstatic.com/s/roboto/v15/jSN2CGVDbcVyCnfJfjSdfBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
+ src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/jSN2CGVDbcVyCnfJfjSdfBJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
unicode-range: U+0370-03FF;
}
/* vietnamese */
@@ -259,7 +259,7 @@
font-family: 'Roboto';
font-style: normal;
font-weight: 700;
- src: local('Roboto Bold'), local('Roboto-Bold'), url(http://fonts.gstatic.com/s/roboto/v15/PwZc-YbIL414wB9rB1IAPRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
+ src: local('Roboto Bold'), local('Roboto-Bold'), url(https://fonts.gstatic.com/s/roboto/v15/PwZc-YbIL414wB9rB1IAPRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2'), url(fonts/roboto/RobotoBold.woff) format('woff');
unicode-range: U+0102-0103, U+1EA0-1EF1, U+20AB;
}
/* latin-ext */
@@ -930,7 +930,7 @@ paper-input + .fieldDescription {
}
.footerOverBottomTabs {
- bottom: 49px !important;
+ bottom: 52px !important;
}
.footerNotification {
diff --git a/dashboard-ui/livetv.html b/dashboard-ui/livetv.html
index 0cf1b52c27..d6e1ed9866 100644
--- a/dashboard-ui/livetv.html
+++ b/dashboard-ui/livetv.html
@@ -7,7 +7,7 @@
-
+
${TabSuggestions}
${TabGuide}
${TabChannels}
@@ -100,12 +100,12 @@
-
+
-
+
${ButtonSync}
@@ -113,7 +113,7 @@
-
+
diff --git a/dashboard-ui/metadataadvanced.html b/dashboard-ui/metadataadvanced.html
index f832f2a7cf..ed9ff773e4 100644
--- a/dashboard-ui/metadataadvanced.html
+++ b/dashboard-ui/metadataadvanced.html
@@ -168,6 +168,24 @@
+
+
${HeaderVideos}
+
+
+
+
${OptionEnableVideoFrameAnalysis}
+
${OptionEnableVideoFrameAnalysisHelp}
+
+
+
+
+
+