diff --git a/dashboard-ui/bower_components/emby-webcomponents/.bower.json b/dashboard-ui/bower_components/emby-webcomponents/.bower.json
index 56d636822..823318aad 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/.bower.json
+++ b/dashboard-ui/bower_components/emby-webcomponents/.bower.json
@@ -15,12 +15,12 @@
},
"devDependencies": {},
"ignore": [],
- "version": "1.4.97",
- "_release": "1.4.97",
+ "version": "1.4.98",
+ "_release": "1.4.98",
"_resolution": {
"type": "version",
- "tag": "1.4.97",
- "commit": "8b11aa9b8f073cbcd9eacf3170efce38d43a5526"
+ "tag": "1.4.98",
+ "commit": "6e0ce46f8c48908f94a7f32e95fee78b994c16f5"
},
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "^1.2.0",
diff --git a/dashboard-ui/bower_components/emby-webcomponents/indicators/indicators.css b/dashboard-ui/bower_components/emby-webcomponents/indicators/indicators.css
index dc3570303..764f69c4f 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/indicators/indicators.css
+++ b/dashboard-ui/bower_components/emby-webcomponents/indicators/indicators.css
@@ -58,8 +58,12 @@
height: 3.8vh;
}
- .layout-tv .playedIndicator i {
- width: 2.6vh;
- height: 2.6vh;
- font-size: 2.6vh;
- }
+.layout-tv .countIndicator {
+ font-size: 80%;
+}
+
+.layout-tv .playedIndicator i {
+ width: 2.6vh;
+ height: 2.6vh;
+ font-size: 2.6vh;
+}
diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js b/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js
index 0346d41bc..df3da7a0a 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js
@@ -120,7 +120,7 @@ define(['apphost', 'globalize', 'connectionManager', 'itemHelper', 'embyRouter',
});
}
- if (options.playAllFromHere) {
+ if (options.playAllFromHere && item.Type != 'Program' && item.Type != 'TvChannel') {
commands.push({
name: globalize.translate('sharedcomponents#PlayAllFromHere'),
id: 'playallfromhere'
diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.css b/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.css
index 3786543ce..cae70cf2b 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.css
+++ b/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.css
@@ -7,11 +7,14 @@
background-color: rgba(0, 0, 0, .85);
z-index: 998;
line-height: initial;
+ font-size: initial;
}
.cardOverlayInner {
- padding: 11px 12px 10px;
+ padding: .5em;
color: #fff;
+ text-align: left;
+
}
.cardOverlayInner button:last-child {
diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.js b/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.js
index 603642ed2..177b40530 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.js
@@ -47,7 +47,7 @@
var keyframes = [
{ transform: 'translateY(0)', offset: 0 },
{ transform: 'translateY(100%)', offset: 1 }];
- var timing = { duration: 300, iterations: 1, fill: 'forwards', easing: 'ease-out' };
+ var timing = { duration: 180, iterations: 1, fill: 'forwards', easing: 'ease-out' };
elem.animate(keyframes, timing).onfinish = function () {
elem.classList.add('hide');
@@ -72,12 +72,12 @@
var keyframes = [
{ transform: 'translateY(100%)', offset: 0 },
{ transform: 'translateY(0)', offset: 1 }];
- var timing = { duration: 300, iterations: 1, fill: 'forwards', easing: 'ease-out' };
+ var timing = { duration: 200, iterations: 1, fill: 'forwards', easing: 'ease-out' };
elem.animate(keyframes, timing);
});
}
- function getOverlayHtml(item, currentUser, card) {
+ function getOverlayHtml(apiClient, item, currentUser, card) {
var html = '';
@@ -93,12 +93,12 @@
var name = itemHelper.getDisplayName(item);
html += '
';
- var logoHeight = isSmallItem || isMiniItem ? 20 : 26;
+ var logoHeight = 26;
var imgUrl;
if (parentName && item.ParentLogoItemId) {
- imgUrl = ApiClient.getScaledImageUrl(item.ParentLogoItemId, {
+ imgUrl = apiClient.getScaledImageUrl(item.ParentLogoItemId, {
maxHeight: logoHeight,
type: 'logo',
tag: item.ParentLogoImageTag
@@ -109,7 +109,7 @@
}
else if (item.ImageTags.Logo) {
- imgUrl = ApiClient.getScaledImageUrl(item.Id, {
+ imgUrl = apiClient.getScaledImageUrl(item.Id, {
maxHeight: logoHeight,
type: 'logo',
tag: item.ImageTags.Logo
@@ -179,18 +179,17 @@
function onShowTimerExpired(elem) {
- elem = elem.querySelector('a');
-
var innerElem = elem.querySelector('.cardOverlayTarget');
if (!innerElem) {
innerElem = document.createElement('div');
innerElem.classList.add('hide');
innerElem.classList.add('cardOverlayTarget');
- parentWithClass(elem, 'cardContent').appendChild(innerElem);
+
+ (elem.querySelector('.cardContent') || elem.querySelector('.cardBox')).appendChild(innerElem);
}
- var dataElement = parentWithAttribute(elem, 'data-id');
+ var dataElement = elem;
var id = dataElement.getAttribute('data-id');
var type = dataElement.getAttribute('data-type');
@@ -212,9 +211,7 @@
var card = elem;
- elem = parentWithAttribute(elem, 'data-id');
-
- innerElem.innerHTML = getOverlayHtml(item, user, card);
+ innerElem.innerHTML = getOverlayHtml(apiClient, item, user, card);
});
slideUpToShow(innerElem);
@@ -223,8 +220,15 @@
function onHoverIn(e) {
var elem = e.target;
+ var card = parentWithClass(elem, 'card');
- if (!elem.classList.contains('cardImage')) {
+ if (!card) {
+ return;
+ }
+
+ elem = card.querySelector('.cardImage,.cardImageContainer');
+
+ if (!elem) {
return;
}
@@ -243,7 +247,7 @@
showOverlayTimeout = setTimeout(function () {
onShowTimerExpired(elem);
- }, 1200);
+ }, 1000);
}
function preventTouchHover() {
diff --git a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.css b/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.css
index 63acb6d5e..f3b6d79b1 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.css
+++ b/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.css
@@ -14,10 +14,9 @@
top: 0;
left: 0;
right: 0;
- height: 50px;
background: #43A047;
z-index: 1000;
- padding: 0 .75em 0 .25em;
+ padding: .5em;
display: flex;
align-items: center;
color: #fff;
diff --git a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js b/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js
index 2c1c05617..5ed78712a 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js
@@ -131,7 +131,7 @@
itemSelectionPanel = document.createElement('div');
itemSelectionPanel.classList.add('itemSelectionPanel');
- item.querySelector('.cardContent').appendChild(itemSelectionPanel);
+ item.querySelector('.cardContent,.cardBox').appendChild(itemSelectionPanel);
var cssClass = 'chkItemSelect';
if (isChecked && !browser.firefox) {
@@ -416,8 +416,7 @@
require(['alert'], function (alert) {
alert({
- text: globalize.translate('sharedcomponents#PleaseSelectTwoItems'),
- title: globalize.translate('sharedcomponents#Error')
+ text: globalize.translate('sharedcomponents#PleaseSelectTwoItems')
});
});
return;
diff --git a/dashboard-ui/bower_components/emby-webcomponents/scroller/smoothscroller.js b/dashboard-ui/bower_components/emby-webcomponents/scroller/smoothscroller.js
index 2d14680fd..054049469 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/scroller/smoothscroller.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/scroller/smoothscroller.js
@@ -974,13 +974,13 @@ define(['browser', 'layoutManager', 'scrollStyles'], function (browser, layoutMa
if (!transform) {
if (o.horizontal) {
- if (layoutManager.desktop && o.hiddenScroll === false) {
+ if (layoutManager.desktop) {
slideeElement.classList.add('smoothScrollX');
} else {
slideeElement.classList.add('hiddenScrollX');
}
} else {
- if (layoutManager.desktop && o.hiddenScroll === false) {
+ if (layoutManager.desktop) {
slideeElement.classList.add('smoothScrollY');
} else {
slideeElement.classList.add('hiddenScrollY');
@@ -990,9 +990,6 @@ define(['browser', 'layoutManager', 'scrollStyles'], function (browser, layoutMa
slideeElement.style['will-change'] = 'transform';
}
- // Scrolling navigation
- scrollSource.addEventListener(wheelEvent, scrollHandler);
-
if (transform) {
dragInitEventNames.forEach(function (eventName) {
dragSourceElement.addEventListener(eventName, dragInitSlidee);
@@ -1007,6 +1004,16 @@ define(['browser', 'layoutManager', 'scrollStyles'], function (browser, layoutMa
passive: true
});
}
+
+ // Scrolling navigation
+ scrollSource.addEventListener(wheelEvent, scrollHandler);
+
+ } else if (o.horizontal) {
+
+ // Don't bind to mouse events with vertical scroll since the mouse wheel can handle this natively
+
+ // Scrolling navigation
+ scrollSource.addEventListener(wheelEvent, scrollHandler);
}
// Mark instance as initialized