diff --git a/dashboard-ui/bower_components/iron-a11y-keys-behavior/.bower.json b/dashboard-ui/bower_components/iron-a11y-keys-behavior/.bower.json index 50bbb83a9d..503ff0f3a9 100644 --- a/dashboard-ui/bower_components/iron-a11y-keys-behavior/.bower.json +++ b/dashboard-ui/bower_components/iron-a11y-keys-behavior/.bower.json @@ -1,6 +1,6 @@ { "name": "iron-a11y-keys-behavior", - "version": "1.0.7", + "version": "1.0.8", "description": "A behavior that enables keybindings for greater a11y.", "keywords": [ "web-components", @@ -29,14 +29,14 @@ "web-component-tester": "*", "webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0" }, - "homepage": "https://github.com/PolymerElements/iron-a11y-keys-behavior", - "_release": "1.0.7", + "homepage": "https://github.com/polymerelements/iron-a11y-keys-behavior", + "_release": "1.0.8", "_resolution": { "type": "version", - "tag": "v1.0.7", - "commit": "4dfdd8cca76eabe12245e86deb9d5da3cd717460" + "tag": "v1.0.8", + "commit": "df29a9edcff3b4693707f1e3eebce5a1dc46e946" }, - "_source": "git://github.com/PolymerElements/iron-a11y-keys-behavior.git", + "_source": "git://github.com/polymerelements/iron-a11y-keys-behavior.git", "_target": "^1.0.0", - "_originalSource": "PolymerElements/iron-a11y-keys-behavior" + "_originalSource": "polymerelements/iron-a11y-keys-behavior" } \ No newline at end of file diff --git a/dashboard-ui/bower_components/iron-a11y-keys-behavior/bower.json b/dashboard-ui/bower_components/iron-a11y-keys-behavior/bower.json index 6218998318..623d4715eb 100644 --- a/dashboard-ui/bower_components/iron-a11y-keys-behavior/bower.json +++ b/dashboard-ui/bower_components/iron-a11y-keys-behavior/bower.json @@ -1,6 +1,6 @@ { "name": "iron-a11y-keys-behavior", - "version": "1.0.7", + "version": "1.0.8", "description": "A behavior that enables keybindings for greater a11y.", "keywords": [ "web-components", diff --git a/dashboard-ui/bower_components/iron-a11y-keys-behavior/iron-a11y-keys-behavior.html b/dashboard-ui/bower_components/iron-a11y-keys-behavior/iron-a11y-keys-behavior.html index be64729fbc..d3fdb61a4f 100644 --- a/dashboard-ui/bower_components/iron-a11y-keys-behavior/iron-a11y-keys-behavior.html +++ b/dashboard-ui/bower_components/iron-a11y-keys-behavior/iron-a11y-keys-behavior.html @@ -424,10 +424,14 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN _triggerKeyHandler: function(keyCombo, handlerName, keyboardEvent) { var detail = Object.create(keyCombo); detail.keyboardEvent = keyboardEvent; - - this[handlerName].call(this, new CustomEvent(keyCombo.event, { - detail: detail - })); + var event = new CustomEvent(keyCombo.event, { + detail: detail, + cancelable: true + }); + this[handlerName].call(this, event); + if (event.defaultPrevented) { + keyboardEvent.preventDefault(); + } } }; })(); diff --git a/dashboard-ui/bower_components/iron-a11y-keys-behavior/test/basic-test.html b/dashboard-ui/bower_components/iron-a11y-keys-behavior/test/basic-test.html index fea60b6841..289dff07f9 100644 --- a/dashboard-ui/bower_components/iron-a11y-keys-behavior/test/basic-test.html +++ b/dashboard-ui/bower_components/iron-a11y-keys-behavior/test/basic-test.html @@ -70,6 +70,9 @@ suite('Polymer.IronA11yKeysBehavior', function() { _keyHandler: function(event) { this.keyCount++; this.lastEvent = event; + }, + _preventDefaultHandler: function(event) { + event.preventDefault(); } }]; @@ -124,7 +127,8 @@ suite('Polymer.IronA11yKeysBehavior', function() { ], keyBindings: { - 'space': '_keyHandler' + 'space': '_keyHandler', + 'enter': '_preventDefaultHandler' } }); }); @@ -273,6 +277,21 @@ suite('Polymer.IronA11yKeysBehavior', function() { }); }); + suite('prevent default behavior of event', function() { + setup(function() { + keys = fixture('BehaviorKeys'); + }); + test('defaultPrevented is correctly set', function() { + var keySpy = sinon.spy(); + + document.addEventListener('keydown', keySpy); + + MockInteractions.pressEnter(keys); + + expect(keySpy.getCall(0).args[0].defaultPrevented).to.be.equal(true); + }); + }); + }); diff --git a/dashboard-ui/bower_components/iron-autogrow-textarea/.bower.json b/dashboard-ui/bower_components/iron-autogrow-textarea/.bower.json index 2533391c70..e732fccf8f 100644 --- a/dashboard-ui/bower_components/iron-autogrow-textarea/.bower.json +++ b/dashboard-ui/bower_components/iron-autogrow-textarea/.bower.json @@ -1,6 +1,6 @@ { "name": "iron-autogrow-textarea", - "version": "1.0.7", + "version": "1.0.8", "description": "A textarea element that automatically grows with input", "authors": [ "The Polymer Authors" @@ -37,11 +37,11 @@ "paper-styles": "PolymerElements/paper-styles#^1.0.0", "webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0" }, - "_release": "1.0.7", + "_release": "1.0.8", "_resolution": { "type": "version", - "tag": "v1.0.7", - "commit": "f31131a9c45af7845780f94ec7e69816929ac6cc" + "tag": "v1.0.8", + "commit": "ea7fb14d8038ccbedc6e85b9c4842b68c659a503" }, "_source": "git://github.com/PolymerElements/iron-autogrow-textarea.git", "_target": "^1.0.0", diff --git a/dashboard-ui/bower_components/iron-autogrow-textarea/bower.json b/dashboard-ui/bower_components/iron-autogrow-textarea/bower.json index 278babaa63..8fdbca8ee5 100644 --- a/dashboard-ui/bower_components/iron-autogrow-textarea/bower.json +++ b/dashboard-ui/bower_components/iron-autogrow-textarea/bower.json @@ -1,6 +1,6 @@ { "name": "iron-autogrow-textarea", - "version": "1.0.7", + "version": "1.0.8", "description": "A textarea element that automatically grows with input", "authors": [ "The Polymer Authors" diff --git a/dashboard-ui/bower_components/iron-autogrow-textarea/iron-autogrow-textarea.html b/dashboard-ui/bower_components/iron-autogrow-textarea/iron-autogrow-textarea.html index cdd6fdb798..9e2f1d5ebf 100644 --- a/dashboard-ui/bower_components/iron-autogrow-textarea/iron-autogrow-textarea.html +++ b/dashboard-ui/bower_components/iron-autogrow-textarea/iron-autogrow-textarea.html @@ -10,7 +10,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN - + @@ -55,6 +55,10 @@ Custom property | Description | Default word-wrap: break-word; } + .fit { + @apply(--layout-fit); + } + textarea { position: relative; outline: none; @@ -68,6 +72,7 @@ Custom property | Description | Default font-size: inherit; font-family: inherit; line-height: inherit; + text-align: inherit; @apply(--iron-autogrow-textarea); } @@ -78,7 +83,8 @@ Custom property | Description | Default diff --git a/dashboard-ui/bower_components/paper-ripple/.bower.json b/dashboard-ui/bower_components/paper-ripple/.bower.json index 9a26a4dc8c..fc500c12fb 100644 --- a/dashboard-ui/bower_components/paper-ripple/.bower.json +++ b/dashboard-ui/bower_components/paper-ripple/.bower.json @@ -31,14 +31,14 @@ "webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0", "iron-test-helpers": "PolymerElements/iron-test-helpers#^1.0.0" }, - "homepage": "https://github.com/polymerelements/paper-ripple", + "homepage": "https://github.com/PolymerElements/paper-ripple", "_release": "1.0.4", "_resolution": { "type": "version", "tag": "v1.0.4", "commit": "5f5893ca7bd6a8413d2f777c092a1a179b6bd45e" }, - "_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/cordova/iap.js b/dashboard-ui/cordova/iap.js index bf653dc364..635d47abea 100644 --- a/dashboard-ui/cordova/iap.js +++ b/dashboard-ui/cordova/iap.js @@ -73,7 +73,6 @@ application: "com.emby.mobile", product: productId, type: "Subscription", - feature: "MBSClubMonthly", storeToken: receipt, amt: price }; @@ -81,6 +80,7 @@ if (enteredEmail) { postData.email = enteredEmail; postData.storeId = enteredEmail; + postData.feature = "MBSClubMonthly"; } ApiClient.ajax({ @@ -98,7 +98,22 @@ }).fail(function (e) { alert('validate fail'); - callback(false, product); + + if (e.status == 402) { + callback(false, { + code: store.PURCHASE_EXPIRED, + error: { + message: "Subscription Expired" + } + }); + } else { + callback(false, { + code: store.CONNECTION_FAILED, + error: { + message: "Connection Failure" + } + }); + } }); } @@ -124,6 +139,7 @@ if (requiresVerification) { store.when(id).verified(function (p) { + alert('verified'); updateProductInfo(p); p.finish(); }); @@ -136,7 +152,7 @@ if (product.loaded && product.valid && product.state == store.APPROVED) { Logger.log('finishing previously created transaction'); if (requiresVerification) { - product.verify(); + //product.verify(); } else { product.finish(); } diff --git a/dashboard-ui/scripts/itemlistpage.js b/dashboard-ui/scripts/itemlistpage.js index 3f845af7ea..cb71da0cca 100644 --- a/dashboard-ui/scripts/itemlistpage.js +++ b/dashboard-ui/scripts/itemlistpage.js @@ -75,7 +75,7 @@ currentLayout: view, viewIcon: 'filter-list', sortButton: true, - layouts: 'Poster,PosterCard' + layouts: 'Poster,PosterCard,Thumb' }); page.querySelector('.listTopPaging').innerHTML = pagingHtml; diff --git a/dashboard-ui/vulcanize-out.html b/dashboard-ui/vulcanize-out.html index 404d50fc99..c51bbc61d9 100644 --- a/dashboard-ui/vulcanize-out.html +++ b/dashboard-ui/vulcanize-out.html @@ -7379,10 +7379,14 @@ this.fire('dom-change'); _triggerKeyHandler: function(keyCombo, handlerName, keyboardEvent) { var detail = Object.create(keyCombo); detail.keyboardEvent = keyboardEvent; - - this[handlerName].call(this, new CustomEvent(keyCombo.event, { - detail: detail - })); + var event = new CustomEvent(keyCombo.event, { + detail: detail, + cancelable: true + }); + this[handlerName].call(this, event); + if (event.defaultPrevented) { + keyboardEvent.preventDefault(); + } } }; })(); @@ -11833,7 +11837,7 @@ The `aria-labelledby` attribute will be set to the header element, if one exists /** * `Polymer.PaperInkyFocusBehavior` implements a ripple when the element has keyboard focus. * - * @polymerBehavior Polymer.PaperInkyFocusBehaviorImpl + * @polymerBehavior Polymer.PaperInkyFocusBehavior */ Polymer.PaperInkyFocusBehaviorImpl = { @@ -17790,11 +17794,12 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { .input-content.label-is-floating ::content .paper-input-label { -webkit-transform: translateY(-75%) scale(0.75); transform: translateY(-75%) scale(0.75); - -webkit-transform-origin: left top; - transform-origin: left top; -webkit-transition: -webkit-transform 0.25s; transition: transform 0.25s; + -webkit-transform-origin: left top; + transform-origin: left top; + /* Since we scale to 75/100 of the size, we actually have 100/75 of the original space now available */ width: 133%; @@ -17802,6 +17807,16 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { @apply(--paper-transition-easing); } + :host-context([dir="rtl"]) .input-content.label-is-floating ::content label, + :host-context([dir="rtl"]) .input-content.label-is-floating ::content .paper-input-label { + /* TODO(noms): Figure out why leaving the width at 133% before the animation + * actually makes + * it wider on the right side, not left side, as you would expect in RTL */ + width: 100%; + -webkit-transform-origin: right top; + transform-origin: right top; + } + .input-content.label-is-highlighted ::content label, .input-content.label-is-highlighted ::content .paper-input-label { color: var(--paper-input-container-focus-color, --default-primary-color); @@ -17832,6 +17847,7 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { border: none; color: var(--paper-input-container-input-color, --primary-text-color); -webkit-appearance: none; + text-align: inherit; @apply(--paper-font-subhead); @apply(--paper-input-container-input); @@ -17856,6 +17872,10 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { resize: none; } + .add-on-content { + position: relative; + } + .add-on-content.is-invalid ::content * { color: var(--paper-input-container-invalid-color, --google-red-500); } @@ -17871,7 +17891,8 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {
-
+ +
@@ -18034,6 +18055,21 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { } else { this._handleValue(this._inputElement); } + + this._numberOfPrefixNodes = 0; + this._prefixObserver = Polymer.dom(this.$.prefix).observeNodes( + function(mutations) { + // Keep track whether there's at least one prefix node, since it + // affects laying out the floating label. + this._numberOfPrefixNodes += mutations.addedNodes.length - + mutations.removedNodes.length; + }.bind(this)); + }, + + detached: function() { + if (this._prefixObserver) { + Polymer.dom(this.$.prefix).unobserveNodes(this._prefixObserver); + } }, _onAddonAttached: function(event) { @@ -18130,16 +18166,15 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { } else if (focused) { cls += " label-is-highlighted"; } - // The label might have a horizontal offset if a prefix element exists + // If a prefix element exists, the label has a horizontal offset // which needs to be undone when displayed as a floating label. - if (Polymer.dom(this.$.prefix).getDistributedNodes().length > 0 && - label && label.offsetParent) { - label.style.left = -label.offsetParent.offsetLeft + 'px'; + if (this._numberOfPrefixNodes > 0) { + this.$.labelAndInputContainer.style.position = 'static'; } } else { // When the label is not floating, it should overlap the input element. if (label) { - label.style.left = 0; + this.$.labelAndInputContainer.style.position = 'relative'; } } } else { @@ -18184,6 +18219,8 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { @apply(--paper-font-caption); @apply(--paper-input-error); position: absolute; + left:0; + right:0; } :host([invalid]) { @@ -18192,7 +18229,7 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { - + @@ -18231,6 +18268,10 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { @apply(--paper-font-caption); @apply(--paper-input-char-counter); } + + :host-context([dir="rtl"]) { + float: left; + } [[_charCounterStr]] @@ -19089,6 +19130,10 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { word-wrap: break-word; } + .fit { + @apply(--layout-fit); + } + textarea { position: relative; outline: none; @@ -19102,6 +19147,7 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] { font-size: inherit; font-family: inherit; line-height: inherit; + text-align: inherit; @apply(--iron-autogrow-textarea); } @@ -19112,6 +19158,7 @@ iron-selector:not(.narrow-layout) #main ::content [paper-drawer-toggle] {