diff --git a/dashboard-ui/bower_components/emby-webcomponents/.bower.json b/dashboard-ui/bower_components/emby-webcomponents/.bower.json
index 13d622dca6..03ae29d769 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.5",
- "_release": "1.4.5",
+ "version": "1.4.12",
+ "_release": "1.4.12",
"_resolution": {
"type": "version",
- "tag": "1.4.5",
- "commit": "da29c275857fd674c0946c5f3138d3eaef03cbc8"
+ "tag": "1.4.12",
+ "commit": "56918a494d703b9b3d47e47d28c0ff580eb5a002"
},
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "^1.2.0",
diff --git a/dashboard-ui/bower_components/emby-webcomponents/formdialog.css b/dashboard-ui/bower_components/emby-webcomponents/formdialog.css
index ca3ea8d92b..893493234d 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/formdialog.css
+++ b/dashboard-ui/bower_components/emby-webcomponents/formdialog.css
@@ -25,6 +25,7 @@
.formDialog .dialogContentInner {
padding-bottom: 10vh;
+ padding-top: .5em;
}
.layout-tv .formDialog .dialogContentInner {
@@ -32,7 +33,7 @@
}
.formDialog .centeredContent {
- max-width: 700px;
+ max-width: 740px;
}
.formDialog .dialogContentTitle {
diff --git a/dashboard-ui/bower_components/emby-webcomponents/icons/nav.html b/dashboard-ui/bower_components/emby-webcomponents/icons/nav.html
index 2787865209..2c69896cce 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/icons/nav.html
+++ b/dashboard-ui/bower_components/emby-webcomponents/icons/nav.html
@@ -37,6 +37,8 @@ See [iron-iconset](#iron-iconset) and [iron-iconset-svg](#iron-iconset-svg) for
+
+
diff --git a/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js b/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js
index 911078e397..c79b83ceba 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/itemcontextmenu.js
@@ -32,6 +32,15 @@ define(['apphost', 'globalize', 'connectionManager', 'itemHelper'], function (ap
});
}
+ if (user.Policy.IsAdministrator) {
+ if (item.MediaType == 'Video' && item.Type != 'TvChannel' && item.Type != 'Program' && item.LocationType != 'Virtual') {
+ commands.push({
+ name: globalize.translate('sharedcomponents#EditSubtitles'),
+ id: 'editsubtitles'
+ });
+ }
+ }
+
if (item.CanDownload && appHost.supports('filedownload')) {
commands.push({
name: globalize.translate('sharedcomponents#Download'),
@@ -109,6 +118,15 @@ define(['apphost', 'globalize', 'connectionManager', 'itemHelper'], function (ap
reject();
});
+ break;
+ }
+ case 'editsubtitles':
+ {
+ require(['subtitleEditor'], function (subtitleEditor) {
+
+ var serverId = apiClient.serverInfo().Id;
+ subtitleEditor.show(itemId, serverId).then(resolve, reject);
+ });
break;
}
case 'refresh':
diff --git a/dashboard-ui/bower_components/emby-webcomponents/listview/listview.css b/dashboard-ui/bower_components/emby-webcomponents/listview/listview.css
index 5870add036..6915d34fb2 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/listview/listview.css
+++ b/dashboard-ui/bower_components/emby-webcomponents/listview/listview.css
@@ -1,27 +1,52 @@
+button.listItem {
+ background: transparent;
+ border: 0 !important;
+ cursor: pointer;
+ outline: none !important;
+ color: inherit;
+ width: 100%;
+ vertical-align: middle;
+ font-family: inherit;
+ font-size: inherit;
+}
+
.listItem {
display: flex;
align-items: center;
text-align: left;
- padding: .1em 1.25em !important;
- outline: none !important;
+ padding: .25em 1.25em !important;
}
.listItem.largeImage {
padding: 1em 0 1em 1em;
}
+ .listItem > *:not(.listItemBody) {
+ flex-shrink: 0;
+ }
+
.listItemBody {
flex-grow: 1;
padding: .35em 1.25em;
+ overflow: hidden;
+ text-overflow: ellipsis;
}
.listItemBody h3 {
margin: 0;
font-weight: normal;
+ padding: .25em 0;
+ overflow: hidden;
+ text-overflow: ellipsis;
}
+.layout-tv .listItemBody h3 {
+ padding: 0;
+}
+
.listItemBodyText {
- padding: .25em 0;
+ overflow: hidden;
+ text-overflow: ellipsis;
}
.listItemImage {
@@ -32,6 +57,11 @@
flex-shrink: 0;
}
+.listItemIcon {
+ width: 3vh;
+ height: 3vh;
+}
+
.listItem.largeImage .listItemImage {
width: 45vh;
height: 30vh;
@@ -62,6 +92,11 @@
.paperList {
padding: .5em 0;
- margin: 12px auto;
+ margin: 1em auto;
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);
}
+
+ .paperList.clear {
+ box-shadow: none !important;
+ background-color: transparent !important;
+ }
diff --git a/dashboard-ui/bower_components/emby-webcomponents/listview/listview.js b/dashboard-ui/bower_components/emby-webcomponents/listview/listview.js
index 9b65cbb782..f987dc5981 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/listview/listview.js
+++ b/dashboard-ui/bower_components/emby-webcomponents/listview/listview.js
@@ -1,4 +1,4 @@
-define(['itemHelper', 'mediaInfo', 'indicators', 'clearButtonStyle', 'css!./listview'], function (itemHelper, mediaInfo, indicators) {
+define(['itemHelper', 'mediaInfo', 'indicators', 'css!./listview'], function (itemHelper, mediaInfo, indicators) {
function getListViewHtml(items, options) {
@@ -15,7 +15,7 @@ define(['itemHelper', 'mediaInfo', 'indicators', 'clearButtonStyle', 'css!./list
var html = '';
- var cssClass = "itemAction clearButton listItem";
+ var cssClass = "itemAction listItem";
var downloadWidth = 80;
diff --git a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.template.html b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.template.html
index e3209a5868..045524aad0 100644
--- a/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.template.html
+++ b/dashboard-ui/bower_components/emby-webcomponents/recordingcreator/recordingeditor.template.html
@@ -1,4 +1,4 @@
-