fix: prevent event propagation on card menu buttons and implement virtualization locking for overlays in ProgressiveCardGrid

This commit is contained in:
jxxghp
2026-05-15 18:27:56 +08:00
parent 523f8c4cc8
commit 06355ff91d
6 changed files with 111 additions and 7 deletions

View File

@@ -252,7 +252,7 @@ const dropdownItems = ref([
</div>
</div>
<div class="absolute bottom-0 right-0">
<IconBtn>
<IconBtn @click.stop>
<VIcon size="small" icon="mdi-dots-vertical" />
<VMenu activator="parent" close-on-content-click>
<VList>

View File

@@ -521,7 +521,7 @@ watch(
</span>
</div>
<div v-if="!props.sortable" class="absolute bottom-0 right-0">
<IconBtn>
<IconBtn @click.stop>
<VIcon icon="mdi-dots-vertical" />
<VMenu v-model="menuVisible" activator="parent" close-on-content-click>
<VList>

View File

@@ -386,7 +386,7 @@ onMounted(() => {
</VBtn>
<!-- 更多选项按钮 -->
<VBtn icon variant="text" class="mt-auto" size="36">
<VBtn icon variant="text" class="mt-auto" size="36" @click.stop>
<VIcon icon="mdi-dots-vertical" size="20" />
<VMenu :activator="'parent'" :close-on-content-click="true" :location="'left'">
<VList>

View File

@@ -372,7 +372,7 @@ function handleCardClick() {
:ripple="!props.batchMode && !props.sortable"
>
<div v-if="!props.sortable" class="me-n3 absolute top-1 right-4">
<IconBtn>
<IconBtn @click.stop>
<VIcon icon="mdi-dots-vertical" color="white" />
<VMenu activator="parent" close-on-content-click>
<VList>