From bb315a8cbcf8710f541e6dfc3178efd2a93ac7ac Mon Sep 17 00:00:00 2001
From: syuilo <4439005+syuilo@users.noreply.github.com>
Date: Fri, 10 Jul 2026 20:22:34 +0900
Subject: [PATCH] Update MkImageGallery.item.vue
---
.../src/components/MkImageGallery.item.vue | 87 +++++++++++--------
1 file changed, 49 insertions(+), 38 deletions(-)
diff --git a/packages/frontend/src/components/MkImageGallery.item.vue b/packages/frontend/src/components/MkImageGallery.item.vue
index 2e6637ddc4..8f5b6bd380 100644
--- a/packages/frontend/src/components/MkImageGallery.item.vue
+++ b/packages/frontend/src/components/MkImageGallery.item.vue
@@ -7,44 +7,49 @@ SPDX-License-Identifier: AGPL-3.0-only
@@ -94,6 +99,7 @@ const emit = defineEmits<{
}>();
const rootEl = useTemplateRef('rootEl');
+const mainEl = useTemplateRef('mainEl');
const imageEl = useTemplateRef('imageEl');
const originalImageLoaded = ref(false);
@@ -160,7 +166,7 @@ function zoomInTo(x: number, y: number, factor = 1.1, withAnimation = false) {
const newScale = transform.value.scale * factor;
isZooming.value = true;
- const rect = rootEl.value.getBoundingClientRect();
+ const rect = mainEl.value.getBoundingClientRect();
const offsetX = x - rect.left;
const offsetY = y - rect.top;
@@ -249,7 +255,7 @@ let pointerVec = { x: 0, y: 0 };
function onPointerdown(ev: PointerEvent) {
pointerEventCache.set(ev.pointerId, ev);
- rootEl.value.setPointerCapture(ev.pointerId);
+ mainEl.value.setPointerCapture(ev.pointerId);
isDragging = true;
isClick = true;
@@ -339,7 +345,7 @@ function onPointermove(ev: PointerEvent) {
function onPointerup(ev: PointerEvent) {
pointerEventCache.delete(ev.pointerId);
- rootEl.value.releasePointerCapture(ev.pointerId);
+ mainEl.value.releasePointerCapture(ev.pointerId);
prevTwoTouchPointsDistance = 0;
isDragging = false;
if (currentPointerId === ev.pointerId) {
@@ -475,6 +481,12 @@ function onCLick() {