diff --git a/packages/frontend/src/components/MkImageGallery.item.vue b/packages/frontend/src/components/MkImageGallery.item.vue
index 5a2a01eb1b..68c7158584 100644
--- a/packages/frontend/src/components/MkImageGallery.item.vue
+++ b/packages/frontend/src/components/MkImageGallery.item.vue
@@ -17,7 +17,8 @@ SPDX-License-Identifier: AGPL-3.0-only
+
+
+
+
+ {{ image.filename }}
+
+
@@ -60,14 +68,13 @@ export type Image = {
thumbnailUrl: string;
width: number;
height: number;
+ filename?: string;
sourceElement?: HTMLElement;
};
const props = withDefaults(defineProps<{
image: Image;
activated: boolean;
- openAnimDuration: number;
- closeAnimDuration: number;
}>(), {
});
@@ -85,6 +92,12 @@ const imageEl = useTemplateRef('imageEl');
const originalImageLoaded = ref(false);
const thumbnailImageLoaded = ref(false);
const enableTransition = ref(false);
+const infoShowing = ref(false);
+
+onMounted(() => {
+ rootEl.value.offsetHeight; // reflow
+ infoShowing.value = true;
+});
const padding = 30;
const ANIMATION_DURATION = 200;
@@ -306,6 +319,8 @@ function onPointerup(ev: PointerEvent) {
if (shouldCloseByUpwardSwipe || shouldCloseByDownwardSwipe) {
emit('close');
+ infoShowing.value = false;
+
const sourceTransform = getScaleAndTranslationForSourceElement();
enableTransition.value = true;
@@ -441,4 +456,27 @@ watch(thumbnailImageLoaded, () => {
.transition {
transition: translate 200ms ease, scale 200ms ease;
}
+
+.footer {
+ position: absolute;
+ bottom: -30px;
+ left: 0;
+ width: 100%;
+ height: 30px;
+ background-color: rgba(0, 0, 0, 0.5);
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ pointer-events: none;
+ font-size: 85%;
+ color: #fff;
+ opacity: 0;
+ transition: opacity 200ms ease, bottom 200ms ease;
+}
+.footer.infoShowing {
+ bottom: 0;
+ opacity: 1;
+}
+.footerText {
+}
diff --git a/packages/frontend/src/components/MkImageGallery.vue b/packages/frontend/src/components/MkImageGallery.vue
index 02e9704d6a..fb8a38100b 100644
--- a/packages/frontend/src/components/MkImageGallery.vue
+++ b/packages/frontend/src/components/MkImageGallery.vue
@@ -29,8 +29,6 @@ SPDX-License-Identifier: AGPL-3.0-only
x.default), {