diff --git a/api/etemplate.php b/api/etemplate.php index f6fc45e94a..224d71930e 100644 --- a/api/etemplate.php +++ b/api/etemplate.php @@ -12,10 +12,13 @@ use EGroupware\Api; -// add et2- prefix to following widgets/tags +// add et2- prefix to following widgets/tags, if NO <]*)expose_view="true"\s([^><]*)\\/>/', '', $str); + // modify <(vfs-mime|link-string|link-list) --> ', $str); + // ^^^^^^^^^^^^^^^^ above widgets get transformed independent of legacy="true" set in overlay ^^^^^^^^^^^^^^^^^^ // eTemplate marked as legacy --> replace only some widgets (eg. requiring jQueryUI) with web-components diff --git a/api/js/etemplate/Expose/ExposeMixin.ts b/api/js/etemplate/Expose/ExposeMixin.ts index c54c1f9493..e7edd90084 100644 --- a/api/js/etemplate/Expose/ExposeMixin.ts +++ b/api/js/etemplate/Expose/ExposeMixin.ts @@ -15,6 +15,7 @@ import {html, LitElement, render} from "@lion/core"; import {et2_nextmatch} from "../et2_extension_nextmatch"; import {Et2Dialog} from "../Et2Dialog/Et2Dialog"; import {ET2_DATAVIEW_STEPSIZE} from "../et2_dataview_controller"; +import {egw,egw_get_file_editor_prefered_mimes} from "../../jsapi/egw_global"; // Minimum data to qualify as an image and not cause errors const IMAGE_DEFAULT = { @@ -883,7 +884,20 @@ export function ExposeMixin>(superclass : B) } - protected expose_onslidecomplete() {} + readonly URL_REGEXP = /url\("([^)]+)"\)/; + protected expose_onslidecomplete() + { + const indicators = this._gallery.container.find('ol.indicator')[0].querySelectorAll('li'); + indicators.forEach(indicator => { + if (indicator.style.backgroundImage && indicator.style.backgroundImage !== 'none') + { + const img = indicator.ownerDocument.createElement('img'); + img.src = indicator.style.backgroundImage.replace(this.URL_REGEXP, '$1'); + indicator.appendChild(img); + indicator.style.backgroundImage = 'none'; + } + }); + } protected expose_onclose() { diff --git a/api/templates/default/etemplate2.css b/api/templates/default/etemplate2.css index 45aca6de36..f15d548481 100644 --- a/api/templates/default/etemplate2.css +++ b/api/templates/default/etemplate2.css @@ -3421,20 +3421,25 @@ span.et2_egw_action_ddHelper_itemsCnt { display: inline-block; width: auto; height: 100px; - min-width: 32px; - min-height: 32px; margin: 0; - background-size: contain; - background-color: transparent; opacity: 1; cursor: pointer; border-radius: 0; border: 0; } +.blueimp-gallery > .indicator > li > img { + display: inline-block; + width: auto; + height: 100px; + margin:0; + cursor: pointer; + z-index: -1; + position: relative; +} -/*Make indicator visible all the time to be able accuratley estimate - current active slide position in thubmnal bar*/ +/*Make indicator visible all the time to be able accurately estimate + current active slide position in thumbnail bar*/ .blueimp-gallery > .indicator { opacity: 0; /* Hide it through opacity*/ white-space: nowrap; @@ -3448,7 +3453,6 @@ span.et2_egw_action_ddHelper_itemsCnt { box-shadow: inset 0px 0px 0px 4px rgba(255, 255, 255, 1); background-color: transparent; } - /*Active thumbnail border*/ .blueimp-gallery > .indicator > .active { -webkit-box-shadow: inset 0px 0px 0px 4px #0c5da5; diff --git a/api/templates/default/images/apply.svg b/api/templates/default/images/apply.svg new file mode 100644 index 0000000000..71f6f27447 --- /dev/null +++ b/api/templates/default/images/apply.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + diff --git a/filemanager/templates/default/app.css b/filemanager/templates/default/app.css index 31d8886f3a..980b8fad48 100644 --- a/filemanager/templates/default/app.css +++ b/filemanager/templates/default/app.css @@ -49,7 +49,7 @@ table.egwGridView_grid .tile .file_tile { display: block; max-width: 140px; } -.tile .file_tile img.vfsMimeIcon { +.tile .file_tile img.vfsMimeIcon, .tile .file_tile et2-vfs-mime > img { height: auto; width: auto; max-height: 48px; @@ -76,7 +76,7 @@ table.egwGridView_grid .tile .file_tile { .tile .file_tile[data-mime^="image"]:hover .et2_label[id*=comment] { top: 30px; } -#filemanager-index_nm .file_tile[data-mime^="image"] img.vfsMimeIcon { +#filemanager-index_nm .file_tile[data-mime^="image"] img.vfsMimeIcon, #filemanager-index_nm .file_tile[data-mime^="image"] et2-vfs-mime > img { height: auto; max-height: 100px; } diff --git a/filemanager/templates/mobile/app.css b/filemanager/templates/mobile/app.css index 758c7f4bc1..ec2f3eb1a0 100644 --- a/filemanager/templates/mobile/app.css +++ b/filemanager/templates/mobile/app.css @@ -70,7 +70,8 @@ table.egwGridView_grid .tile .file_tile { display: block; max-width: 140px; } -.tile .file_tile img.vfsMimeIcon { +.tile .file_tile img.vfsMimeIcon, +.tile .file_tile et2-vfs-mime > img { height: auto; width: auto; max-height: 48px; @@ -97,7 +98,8 @@ table.egwGridView_grid .tile .file_tile { .tile .file_tile[data-mime^="image"]:hover .et2_label[id*=comment] { top: 30px; } -#filemanager-index_nm .file_tile[data-mime^="image"] img.vfsMimeIcon { +#filemanager-index_nm .file_tile[data-mime^="image"] img.vfsMimeIcon, +#filemanager-index_nm .file_tile[data-mime^="image"] et2-vfs-mime > img { height: auto; max-height: 100px; } diff --git a/filemanager/templates/pixelegg/app.css b/filemanager/templates/pixelegg/app.css index e22fcbefae..f1acc71fb1 100755 --- a/filemanager/templates/pixelegg/app.css +++ b/filemanager/templates/pixelegg/app.css @@ -58,7 +58,8 @@ table.egwGridView_grid .tile .file_tile { display: block; max-width: 140px; } -.tile .file_tile img.vfsMimeIcon { +.tile .file_tile img.vfsMimeIcon, +.tile .file_tile et2-vfs-mime > img { height: auto; width: auto; max-height: 48px; @@ -85,7 +86,8 @@ table.egwGridView_grid .tile .file_tile { .tile .file_tile[data-mime^="image"]:hover .et2_label[id*=comment] { top: 30px; } -#filemanager-index_nm .file_tile[data-mime^="image"] img.vfsMimeIcon { +#filemanager-index_nm .file_tile[data-mime^="image"] img.vfsMimeIcon, +#filemanager-index_nm .file_tile[data-mime^="image"] et2-vfs-mime > img { height: auto; max-height: 100px; } diff --git a/filemanager/templates/pixelegg/app.less b/filemanager/templates/pixelegg/app.less index cbc87e05f9..d67b88d86f 100644 --- a/filemanager/templates/pixelegg/app.less +++ b/filemanager/templates/pixelegg/app.less @@ -123,5 +123,4 @@ div#stylite-filemanager-upload { background-repeat: no-repeat; background-position: center; } -} - +} \ No newline at end of file