From 9c39d0ba4209d61ff22cd8bf99ca67d26374ac84 Mon Sep 17 00:00:00 2001 From: caoqianming Date: Sun, 19 Jul 2026 21:05:15 +0800 Subject: [PATCH] =?UTF-8?q?fix(ui):=20=E6=96=87=E4=BB=B6=E9=A2=84=E8=A7=88?= =?UTF-8?q?=E9=81=AE=E7=BD=A9=E6=94=B9=E6=95=B4=E5=B1=8F=E3=80=81=E6=B6=88?= =?UTF-8?q?=E9=99=A4"=E4=B8=8A=E6=9A=97=E4=B8=8B=E4=BA=AE"=E5=89=B2?= =?UTF-8?q?=E8=A3=82=E2=80=94=E2=80=94=E8=BE=93=E5=85=A5=E5=8C=BA=E4=B8=8A?= =?UTF-8?q?=E6=B5=AE=E4=B8=BA=E6=82=AC=E6=B5=AE=E6=B4=BB=E5=8A=A8=E6=9D=A1?= =?UTF-8?q?=E7=BB=A7=E7=BB=AD=E5=8F=AF=E7=94=A8(bump=200.58.43)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 旧实现用 #file-preview-modal { bottom: --preview-bottom-inset } 把遮罩顶到 chat-form 之上以便边看边打字,代价是底部整条(输入区+左栏入口+右栏+状态) 全不压暗,与上方压暗区形成硬边界的通亮带,视觉割裂。 改为遮罩铺满整屏(bottom → padding-bottom,仍让居中卡片停在输入区之上不遮挡), 底部随整屏统一压暗;仅 chat-form 由新 body.fp-open 类 position:relative;z-index:95 (压过遮罩 z90;#app/#pane-mid 均不建层叠上下文,已核)+ 上向阴影上浮为 "悬浮活动条",继续可打字。预览时点左栏/右栏/状态落到遮罩=关预览,符合 "背景不可用"预期。改 dev.html + preview.js(open/close 加/去 fp-open)。 Co-Authored-By: Claude Opus 4.8 (1M context) --- CHANGELOG.md | 4 ++++ PROGRESS.md | 3 ++- core/__init__.py | 2 +- web/static/dev.html | 12 ++++++++++-- web/static/js/preview.js | 3 +++ 5 files changed, 20 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5e3b721..df6358b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,10 @@ > 所以不是每个版本号都有条目。条目格式 `## <版本> — <日期>`,新条目加在最上面。 > 工程口径的完整记录见 `PROGRESS.md` / git log。 +## 0.58.43 — 2026-07-19 + +- 优化文件预览的观感:打开预览时整个页面背景统一压暗,不再出现"上半屏变暗、底部输入区一条通亮"的割裂感;底部输入框依然悬浮可用,可以边看文件边打字。 + ## 0.58.42 — 2026-07-19 - 提示和确认弹框换新样式:重命名、删除、清空、解绑等操作的确认框,以及各类操作提示,不再用浏览器那种顶部灰框,改为和「修改密码」一致的页内弹框;成功/失败提示改为页面顶部轻提示,几秒后自动消失。 diff --git a/PROGRESS.md b/PROGRESS.md index 0aaf6fa..2057a50 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -2,7 +2,7 @@ > 配合 `DESIGN.md`。本文件只记 phase 状态、决策偏差、文件量、下一步。每条 1-2 句:做了啥 + 关键判断;细节查 `git log` / `git diff` / `DESIGN §7.9`。 -最后更新:2026-07-19(页内弹框替代原生 alert/confirm/prompt,新增 dialog.js,bump 0.58.42) +最后更新:2026-07-19(文件预览遮罩改整屏、消除"上暗下亮"割裂,bump 0.58.43) --- @@ -23,6 +23,7 @@ ### 2026-07 +- **07-19 / 0.58.43**:文件预览遮罩改整屏、消除"上暗下亮"割裂——旧实现用 `#file-preview-modal { bottom: var(--preview-bottom-inset) }` 把遮罩顶到 chat-form 之上,好让预览时能边看边打字,代价是底部整条(输入区+左栏入口+右栏+状态)全不压暗,与上方压暗区形成一条硬边界的通亮带,很割裂。改为遮罩铺满整屏(`bottom`→`padding-bottom`,仍让居中卡片停在输入区之上不遮挡),底部随整屏统一压暗;仅 chat-form 由新 `body.fp-open` 类 `position:relative;z-index:95`(压过遮罩 z90,层叠上下文已核:`#app`/`#pane-mid` 均不建 context)+ 上向阴影,上浮成"悬浮活动条",继续可打字。预览时左栏/右栏/状态点击落到遮罩=关预览(符合"背景不可用"预期)。改 `web/static/dev.html` + `web/static/js/preview.js`(open/close 加/去 `fp-open`)。 - **07-19 / 0.58.42**:页内弹框替代原生 alert/confirm/prompt——用户反馈原生浏览器弹框(顶部丑框)应改成页内样式,且区分两类(对标 Element `dialog`/`message`)。新增 `web/static/js/dialog.js`:`dialogConfirm`/`dialogPrompt`(遮罩+卡片 modal,复用改密码那套头/体/脚布局,Promise 化以一比一替换同步的 `confirm`/`prompt`,Esc/点遮罩=取消、Enter=确认、danger 变体红键)+ `message`(顶部居中轻量 toast,success/error/info 三态,自动消失、点即消)。dev.html 加 `#app-dialog` 容器 + `#app-messages` toast + 对应 CSS。全量替换主应用 8 文件调用点(chat/files/crons/procs/wechat/skills/media/auth,共 30 处);`admin.js`(独立 admin-only 页、独立 `