MiWarp v1.0.7
·
0 commits
to 0c39a54dd9df71a842c689250d0fcd75ee71446c
since this release
主题系统重构
一个主题 = 一个设计,亮/暗是它的两种呈现。 之前 12 个主题在 picker 里要占 24 个条目(每个主题 + 它的亮色变体),改亮暗会重置主题选择。现在 12 个主题、单一网格,亮暗由独立的 mode 状态控制。
- 主题 picker 收为单一 12 主题网格,亮/暗/跟随系统 三档独立 mode 切换
- 跟随系统用
$effect.root持久订阅prefers-color-scheme,关闭 Settings 标签页也能继续跟随 OS - 12 个主题全部补齐 CSS 变体(之前 midnight/ocean/dracula/nord/carbonPink/deepSeaMilk/auroraLime 只有深色,auroraPomelo/pomegranateMist 只有浅色)
- 旧 localStorage
*-light主题 id 通过_migrateThemeId自动迁移到 base + mode,用户升级无感 - i18n 合并
theme_codexDark/theme_codexLight/theme_morandiLight/theme_devPreviewLight→ 单一theme_codex(其他主题 name 不变)
转发到会话弹窗重做
之前是单行 truncate 的"文件路径列表"风格,现在改成产品语义的"会话目标选择器":
- 每个 item 三层信息:标题(name → prompt 首行 → 短 id,永不显示完整 UUID)/ 最后消息预览(独立行)/ 元信息(更新时间 · 消息数 · 模型)
- 分组头:短项目名(
text-sm font-semibold)为主,完整路径作为辅助行 — 路径每个分组只出现一次,不再塞进每个 item - 底部显式操作区:
Forwarding to: [当前标题]+Cancel+Forward to this session,Enter 仍可作快捷键但不替代主按钮 - 状态颜色统一走 design system:
bg-accent text-accent-foreground选中(与 CommandPalette 一致)/hover:bg-accent/50 - 复用现有组件:搜索框用
<Input>,按钮用<Button variant="ghost|default"> - 顺手修 MiDialog:所有
size="lg/md/sm"的弹窗 title 之前是px-0直接贴左上角,现在统一改成带border-b的标准 header bar - 顺手去所有 dialog / menu 的
elevation-3/shadow-lg,模糊从backdrop-blur-2xl升到3xl
转发弹窗加载加速
加了 list_runs_lite 后端命令 — 只读 meta.json,跳过 summarize_events 的 events.jsonl 全量扫描。200+ 个 run 之前要读几百个 events.jsonl(几秒),现在只读 meta.json(瞬时)。失败时降级到 listRuns。
Chat 消息布局微调
- agent 容器最大宽度从原本限制放宽到 64rem(1024px),跟工具卡片一致
- 消息区域距离两侧对齐工具卡片(pl-3.75rem / pr-8)
- 消息 padding clamp 范围扩大到 40~80px
- 头像/气泡距侧边随窗格宽度自适应(clamp 16~32px)
i18n 补充
补齐 5 个缺失 key:settings_mobile_qrAlt、settings_mobile_linkCopied、settings_shortcuts_inputAppDesc、settings_shortcuts_cliKeybindingsFile、settings_shortcuts_cliKeybindingsFileWin,加上转发弹窗新增的 chat_forwardSelectedLabel / chat_forwardNoSelection / chat_forwardCancel / chat_forwardConfirm / chat_forwardMessagesMeta。
暗色 sidebar 修复
暗色模式下原生玻璃 sidebar 背景 opacity 提到 0.92,避免壁纸透出导致"发灰"。
跨平台构建修复
- Windows 编译失败:
window-vibrancy 0.6的apply_acrylic/apply_blur第二参数是Option<(u8, u8, u8, u8)>(RGBA 元组),之前传了Some("#00000000")字符串,类型推断失败。改成Some((0, 0, 0, 0))(完全透明黑),原意不变 - Windows + Linux clippy 警告:
window_effect::apply()的material参数只在#[cfg(target_os = "macos")]分支用,其他平台触发-D unused_variables。加函数级#[allow(unused_variables)],标准跨平台 use-site-on-one-target 模式
完整历史看 CHANGELOG.md。
Full Changelog: v1.0.6...v1.0.7