# 更新日志 本文件记录 `dsh-bg-new` 的版本变更。**v0.6.0 一节下面按"迭代批次"分节**——都是 一次交互改版中陆续补齐的改动,功能全部落在 0.6.0 里;此后每个版本一节。 安装与用法见 [README.md](./README.md)。 --- ## 0.7.0 **主题:为公开发布把插件标识从 `dsh-bg` 改成 `dsh-bg-new`,并保证老用户的背景不丢。** ### 标识改名(包名 / 仓库 / 运行时身份) - **npm 包名与仓库地址**:`dsh-bg` → `dsh-bg-new`,仓库迁到 `github.com/sz1698/dsh-bg-new`(Gitee 同步)。改名原因:npm 上的 `dsh-bg` 已被另一个同类插件占用,沿用该名字会让 `dsh plugin add dsh-bg` 装错项目。 - **组合包 patch 行**(`cordis.patch.yml`)的 `id` / `name` 同步改成 `dsh-bg-new` —— patch 行按**包名**解析,名字不一致会直接解析失败。 - **客户端 bundle 的模块 id**(`tsdown.config.ts` 的 `PLUGIN_ID`)与 host 插件 导出名(`src/index.ts` 的 `name`)同步改名;`lib/` 两侧产物已重建。 - **settings 命名空间**:`dsh-bg` → `dsh-bg-new`(host 与 client 共用同一常量)。 - **数据目录**:`$DSH_HOME/dsh-bg/` → `$DSH_HOME/dsh-bg-new/`。 - **媒体路由**:`/dsh-bg-media/` → `/dsh-bg-new-media/`。 - **DOM 标记**:抽屉 / 小图 / 图层等 `data-dsh-bg-*` 属性与 `dsh-bg-*` testid 全部换成 `dsh-bg-new-*` 前缀(验证脚本断言同步更新)。 ### 改名兼容:老用户的壁纸与媒体不丢 - **数据目录回退链**:新目录 `dsh-bg-new/` 不存在时,依次回退到 `dsh-bg/`, 再到最早的 `dsh-bg-switch/`,并**继续使用**那个老目录(不复制、不搬动可能几百 MB 的媒体文件)。全新安装直接用新目录名。 - **settings 命名空间一次性继承**:首次激活时若新命名空间 `dsh-bg-new` 还没被写过, 而老命名空间 `dsh-bg` 的用户层有值,就把这些值搬进新命名空间。老注册在继承完成后 立即释放;`dsh-bg` 段留在 settings 文档里不删,便于回退到旧版本。 实现依据:settings 服务的 `describe()` 会为每个已注册命名空间带出**原始 user 层**(`SettingsDescriptor.user`,"字段出现在这里"恰好等价于"用户覆盖过它"), 因此能区分"用户没写过"与"用户写成了默认值"。 ### 文档 - README 安装章节改成 **git / tarball 优先**,并明确写出"npm 上的 `dsh-bg` 是另一个 作者的插件,别装错";`dsh-bg-new` 这个 npm 名当前是空闲的。 - 重新核对全部对外文档里的路径、路由、命名空间与包名,删掉与发布无关的开发过程记录 (构建笔记等只留在本地,不进仓库)。 --- ## 0.6.0 **主题:从"设置页里的背景面板"改成"侧栏入口 + 右侧抽屉",并补齐毛玻璃与交互细节。** ### 交互改版:从设置页迁到「侧栏入口 + 右侧抽屉」 - **去掉预览**:删除预览画布(`dsh-bg-new-canvas`)与「按住预览 / 预览模式」及其降透明 提示条机制(`previewThemeFor` 保留为纯工具导出)。 - **交互迁移**:不再注册 `settings.section`(设置页里没有「背景」页了),改为两个 slot —— `sidebar.footer.action`(侧栏「壁纸」按钮)与 `shell.overlay`(右侧抽屉, 承载原来的背景设置内容)。两处用模块级 store 联动。 - **滑动降透明**:拖动调参滑杆期间抽屉自身降到 ~22%,松开恢复。 - **去掉独立设置窗口**:删除 `src/panel.ts`(`/dsh-bg-new-panel` 路由)与 `bg-settings.ts` 里的 `BG_PANEL_WRITABLE_FIELDS` / `validateBgFieldPatch` / `writeBgFields` / `bgPanelStateSnapshot`,以及客户端「在独立窗口打开」按钮。 - **毛玻璃质感**:新增持久化字段 `glass`(默认关)。开启后内容面 token 压到 ~0.55 透明,并对抽屉/弹窗/输入卡做 `backdrop-filter: blur(16px) saturate(1.2)` (`body[data-dsh-bg-new-glass]` 作用域)。 ### 抽屉交互细节、取消视频体积上限、链接校验 - 侧栏按钮改成**图标 + 「壁纸」**;侧栏收起(轨道态)只显示图标。 - 「恢复默认」文案改「重置」。 - 抽屉宽度 420px → **630px**;关闭按钮加描边 + 圆形;**点抽屉以外任意处关闭**。 - 面板内重复的「背景」标题去掉(抽屉头部已有一个)。 - 抽屉打开时**让聊天区让出抽屉宽度**,聊天右缘的「对话电梯」不再被盖住。 - **背景视频不再有体积上限**(图片仍是 `maxImageMB`)。 - **远程媒体链接做跨类型校验**:图片页签拒绝 `.mp4/.webm/…`,视频页签拒绝 `.jpg/.png/…`(无扩展名的动态地址放行);`bg_apply` 同一份判断。 - 渐变输入补上**载荷字符集校验**(旧实现只查前缀,`;`/`{`/`}` 能注入自管 `