fix: 拖选文字时弹窗不再误关闭
所有弹窗背景关闭事件从 @click.self 改为 @mousedown.self, 避免从输入框拖选文字到弹窗外时触发关闭。 影响:LoginModal、RecipeDetailOverlay、UserMenu、TagPicker、 Projects、BugTracker、OilReference 共9处。 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
8
.vite/deps/_metadata.json
Normal file
8
.vite/deps/_metadata.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"hash": "35276b75",
|
||||
"configHash": "1834f32e",
|
||||
"lockfileHash": "e3b0c442",
|
||||
"browserHash": "09e8beb6",
|
||||
"optimized": {},
|
||||
"chunks": {}
|
||||
}
|
||||
3
.vite/deps/package.json
Normal file
3
.vite/deps/package.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"type": "module"
|
||||
}
|
||||
BIN
data/oil_calculator.db
Normal file
BIN
data/oil_calculator.db
Normal file
Binary file not shown.
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div class="login-overlay" @click.self="$emit('close')">
|
||||
<div class="login-overlay" @mousedown.self="$emit('close')">
|
||||
<div class="login-card">
|
||||
<div class="login-header">
|
||||
<span
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div class="detail-overlay" @click.self="$emit('close')">
|
||||
<div class="detail-overlay" @mousedown.self="$emit('close')">
|
||||
<div class="detail-panel">
|
||||
<!-- ==================== CARD VIEW ==================== -->
|
||||
<div v-if="viewMode === 'card'" class="detail-card-view">
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div class="tagpicker-overlay" @click.self="$emit('close')">
|
||||
<div class="tagpicker-overlay" @mousedown.self="$emit('close')">
|
||||
<div class="tagpicker-card">
|
||||
<div class="tagpicker-title">为「{{ name }}」选择标签</div>
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div class="usermenu-overlay" @click.self="$emit('close')">
|
||||
<div class="usermenu-overlay" @mousedown.self="$emit('close')">
|
||||
<div class="usermenu-card">
|
||||
<div class="usermenu-name">{{ auth.user.display_name || auth.user.username }}</div>
|
||||
|
||||
|
||||
@@ -85,7 +85,7 @@
|
||||
</div>
|
||||
|
||||
<!-- Add Bug Modal -->
|
||||
<div v-if="showAddBug" class="overlay" @click.self="showAddBug = false">
|
||||
<div v-if="showAddBug" class="overlay" @mousedown.self="showAddBug = false">
|
||||
<div class="overlay-panel">
|
||||
<div class="overlay-header">
|
||||
<h3>新增Bug</h3>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
</div>
|
||||
|
||||
<!-- Dilution Ratio Modal -->
|
||||
<div v-if="showDilution" class="modal-overlay" @click.self="showDilution = false">
|
||||
<div v-if="showDilution" class="modal-overlay" @mousedown.self="showDilution = false">
|
||||
<div ref="dilutionCardRef" style="position:relative;z-index:1;background:white;border-radius:20px;max-width:420px;width:100%;max-height:88vh;overflow-y:auto;box-shadow:0 16px 56px rgba(0,0,0,0.25)" @click.stop>
|
||||
<div style="background:linear-gradient(135deg,#2e7d32,#66bb6a);border-radius:20px 20px 0 0;padding:28px 24px;color:white;text-align:center;position:relative">
|
||||
<button @click="showDilution = false" style="position:absolute;top:12px;right:16px;background:rgba(255,255,255,0.2);border:none;color:white;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:16px">×</button>
|
||||
@@ -48,7 +48,7 @@
|
||||
</div>
|
||||
|
||||
<!-- Safety Cautions Modal -->
|
||||
<div v-if="showContra" class="modal-overlay" @click.self="showContra = false">
|
||||
<div v-if="showContra" class="modal-overlay" @mousedown.self="showContra = false">
|
||||
<div ref="contraCardRef" style="position:relative;z-index:1;background:white;border-radius:20px;max-width:420px;width:100%;max-height:88vh;overflow-y:auto;box-shadow:0 16px 56px rgba(0,0,0,0.25)" @click.stop>
|
||||
<div style="background:linear-gradient(135deg,#e65100,#ff9800);border-radius:20px 20px 0 0;padding:28px 24px;color:white;text-align:center;position:relative">
|
||||
<button @click="showContra = false" style="position:absolute;top:12px;right:16px;background:rgba(255,255,255,0.2);border:none;color:white;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:16px">×</button>
|
||||
@@ -161,7 +161,7 @@
|
||||
</div>
|
||||
|
||||
<!-- Oil Knowledge Card Modal -->
|
||||
<div v-if="activeCard && activeCardName" class="modal-overlay" @click.self="closeOilModal">
|
||||
<div v-if="activeCard && activeCardName" class="modal-overlay" @mousedown.self="closeOilModal">
|
||||
<div class="oil-card-modal">
|
||||
<div class="oil-card-header">
|
||||
<div class="oil-card-header-content">
|
||||
|
||||
@@ -207,7 +207,7 @@
|
||||
</div>
|
||||
|
||||
<!-- Import From Recipe Modal -->
|
||||
<div v-if="showImportModal" class="overlay" @click.self="showImportModal = false">
|
||||
<div v-if="showImportModal" class="overlay" @mousedown.self="showImportModal = false">
|
||||
<div class="overlay-panel">
|
||||
<div class="overlay-header">
|
||||
<h3>从配方导入</h3>
|
||||
|
||||
4
test-results/.last-run.json
Normal file
4
test-results/.last-run.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"status": "failed",
|
||||
"failedTests": []
|
||||
}
|
||||
Reference in New Issue
Block a user