diff --git a/dashboard-ui/addplugin.html b/dashboard-ui/addplugin.html index a53ec7cdbf..bcc855e861 100644 --- a/dashboard-ui/addplugin.html +++ b/dashboard-ui/addplugin.html @@ -4,7 +4,7 @@ ${TitlePlugins} -
+
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 @@
-