diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.js b/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.js index 177b40530..e82e85bdc 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.js +++ b/dashboard-ui/bower_components/emby-webcomponents/itemhovermenu/itemhovermenu.js @@ -25,7 +25,7 @@ showOverlayTimeout = null; } - elem = elem.querySelector('.cardOverlayTarget'); + elem = elem.classList.contains('cardOverlayTarget') ? elem : elem.querySelector('.cardOverlayTarget'); if (elem) { slideDownToHide(elem); @@ -186,10 +186,10 @@ innerElem.classList.add('hide'); innerElem.classList.add('cardOverlayTarget'); - (elem.querySelector('.cardContent') || elem.querySelector('.cardBox')).appendChild(innerElem); + elem.parentNode.appendChild(innerElem); } - var dataElement = elem; + var dataElement = parentWithAttribute(elem, 'data-id'); var id = dataElement.getAttribute('data-id'); var type = dataElement.getAttribute('data-type'); @@ -209,9 +209,7 @@ var item = responses[0]; var user = responses[1]; - var card = elem; - - innerElem.innerHTML = getOverlayHtml(apiClient, item, user, card); + innerElem.innerHTML = getOverlayHtml(apiClient, item, user, dataElement); }); slideUpToShow(innerElem); @@ -220,18 +218,12 @@ function onHoverIn(e) { var elem = e.target; - var card = parentWithClass(elem, 'card'); + var card = parentWithClass(elem, 'cardImageContainer') || parentWithClass(elem, 'cardImage'); if (!card) { return; } - elem = card.querySelector('.cardImage,.cardImageContainer'); - - if (!elem) { - return; - } - if (preventHover === true) { preventHover = false; return; @@ -242,10 +234,8 @@ showOverlayTimeout = null; } - elem = parentWithAttribute(elem, 'data-id'); - showOverlayTimeout = setTimeout(function () { - onShowTimerExpired(elem); + onShowTimerExpired(card); }, 1000); } diff --git a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js b/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js index 5ed78712a..7a932c186 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js +++ b/dashboard-ui/bower_components/emby-webcomponents/multiselect/multiselect.js @@ -1,4 +1,4 @@ -define(['browser', 'apphost', 'loading', 'connectionManager', 'globalize', 'embyRouter', 'css!./multiselect'], function (browser, appHost, loading, connectionManager, globalize, embyRouter) { +define(['browser', 'appStorage', 'apphost', 'loading', 'connectionManager', 'globalize', 'embyRouter', 'css!./multiselect'], function (browser, appStorage, appHost, loading, connectionManager, globalize, embyRouter) { var selectedItems = []; var selectedElements = []; @@ -34,17 +34,17 @@ } } + var initCount = 0; function showTapHoldHelp(element) { - return; - var page = parentWithClass(element, 'page'); - - if (!page) { + if (initCount >= 15) { + // All done return; } - // Don't do this on the home page - if (page.classList.contains('homePage') || page.classList.contains('itemDetailPage') || page.classList.contains('liveTvPage')) { + initCount++; + + if (initCount < 15) { return; } @@ -55,9 +55,11 @@ appStorage.setItem("tapholdhelp", expectedValue); - Dashboard.alert({ - message: globalize.translate('TryMultiSelectMessage'), - title: globalize.translate('HeaderTryMultiSelect') + require(['alert'], function (alert) { + alert({ + text: globalize.translate('sharedcomponents#TryMultiSelectMessage'), + title: globalize.translate('sharedcomponents#TryMultiSelect') + }); }); } diff --git a/dashboard-ui/bower_components/emby-webcomponents/shortcuts.js b/dashboard-ui/bower_components/emby-webcomponents/shortcuts.js index 56aeb0d7f..5826915fa 100644 --- a/dashboard-ui/bower_components/emby-webcomponents/shortcuts.js +++ b/dashboard-ui/bower_components/emby-webcomponents/shortcuts.js @@ -249,6 +249,19 @@ define(['playbackManager', 'inputManager', 'connectionManager', 'embyRouter', 'g editItem(item, serverId); }); } + + else if (action == 'playtrailer') { + getItem(target).then(playTrailer); + } + } + + function playTrailer(item) { + + var apiClient = connectionManager.getApiClient(item.ServerId); + + apiClient.getLocalTrailers(apiClient.getCurrentUserId(), item.Id).then(function (trailers) { + playbackManager.play({ items: trailers }); + }); } function editItem(item, serverId) { diff --git a/dashboard-ui/strings/en-US.json b/dashboard-ui/strings/en-US.json index ac576a7ed..ea50b41d7 100644 --- a/dashboard-ui/strings/en-US.json +++ b/dashboard-ui/strings/en-US.json @@ -2279,8 +2279,6 @@ "TextPleaseEnterYourEmailAddressForSubscription": "Please enter your e-mail address.", "LoginDisclaimer": "Emby is designed to help you manage your personal media library, such as home videos and photos. Please see our terms of use. The use of any Emby software constitutes acceptance of these terms.", "TermsOfUse": "Terms of use", - "HeaderTryMultiSelect": "Try Multi-Select", - "TryMultiSelectMessage": "To edit multiple media items, just click and hold any poster and select the items you want to manage. Try it!", "NumLocationsValue": "{0} folders", "ButtonAddMediaLibrary": "Add Media Library", "ButtonManageFolders": "Manage folders",