Skip to content

Releases

PRTS v1.0.11

Choose a tag to compare

@tenebris173 tenebris173 released this 07 Oct 16:04

PRTS v1.0.11

  • 修复:移除左侧 3px 黄黑警示条(设备边缘条)——就是那条莫名其妙的一条
  • 回退:此前试验性加入的观感增量(焦点双环 / 中文衬线标题 / 阅读区静罩 / 活跃标记 / 标签页黄点)全部撤回,恢复原版观感
  • 保留:皮肤自带的自立协调器(无加载器时仍可单机激活 / 切换 / 回原生)

测试:90 项断言全过。

PRTS v1.0.8 —— 警示黄改用 RAL 1003 + 白底可读性修复

Choose a tag to compare

@tenebris173 tenebris173 released this 06 Oct 15:04

PRTS v1.0.8

  • 警示黄基准换成 RAL 1003(#F7B500):比原来的 #FFD100(ANSI 安全黄,最亮档)更深更实,更接近工程语境的黄。
    原来的亮档保留为可选强调色 「安全黄(亮档)」,想换回去在设置里点一下即可。
  • 修好"白底上发白发灰":亮黄 #FFD100 在白纸底对比只有 1.46:1,当文字/细线必被白底吃掉。
    现在会按背景亮度自动派生同色相深档(只降明度、不改色相)用于文字/标签/品牌类 token:
    纸面底下 #F7B500 → 派生 #956d00(4.70:1 ✓);#FFD100 → #856d00(5.02:1 ✓);工程橙 2.36:1 → 4.61:1;信号青 1.92:1 → 4.91:1。
    大色块、斜纹警示条、按钮填充仍用原色(配深色字),工程观感不变。
  • 新增 tests/contrast.mjs(25 项):遍历每个强调色 × 纸面/终端两种底,验证文字 token 对比度 ≥4.5:1。
  • 断言总数:32 + 18 + 9 + 25 + 6 = 90 项。

安装

下载 PRTS-UI-1.0.8.zip → 双击安装脚本 → 重启 DSH → 设置里查看 / 切换 / 还原原生。

有控制台:出现在「设置 → 皮肤管理」卡片墙,由它统一管理。
没控制台:等待 3 秒宽限后自立运行,设置面板照常可用,「皮肤」下拉第一项「原生」即还原默认皮肤。

PRTS v1.0.7 —— 显式等待控制台 + 自立模式 + 「原生」选项

Choose a tag to compare

@tenebris173 tenebris173 released this 06 Oct 09:24

PRTS v1.0.7

  • 修好"控制台看不到皮肤"这类竞态:皮肤不再在加载瞬间判断"有没有控制台",改为
    ctx.inject(["uiSkinLoader"], cb) 显式等待服务出现 —— 控制台迟到一步也不会被误判成"没装",仍会正常登记托管。
  • 没装控制台也能用:等待 3 秒宽限后进入自立模式,自动应用外观,设置面板照常可用。
  • 新增「皮肤」选择器(设置面板),第一项是 「原生(默认观感)」= 还原默认皮肤:
    • 有控制台 → switchTo("default")(与控制台"还原默认观感"同一路径,持久化归它);
    • 自立模式 → 关掉自己(enabled=false),立即卸下、长期保持原生,随时可切回。
  • 统一接口补充 isActive() / mode。
  • 新增 tests/console-wait.mjs(18 项,含"控制台迟到不许误判"回归闸门)与
    tests/skin-selector.mjs(4 项)并接入 CI;当前断言总数 60 项。

安装

下载 PRTS-UI-1.0.7.zip → 双击安装脚本 → 重启 DSH → 设置里查看 / 切换 / 还原原生。

有控制台:出现在「设置 → 皮肤管理」卡片墙,由它统一管理。
没控制台:等待 3 秒宽限后自立运行,设置面板照常可用,「皮肤」下拉第一项「原生」即还原默认皮肤。

PRTS v1.0.5 —— 还原原生皮肤

Choose a tag to compare

@tenebris173 tenebris173 released this 06 Oct 08:44

PRTS v1.0.5

🆕 新增「还原原生皮肤」

设置面板里(「设置 → PRTS」)现在有 「还原原生皮肤」 按钮,一点即回到宿主原生外观:

运行模式 行为
装了控制台 本地立即卸下,并调用控制台的 switchTo("default")(控制台自己的"还原默认观感"就是它),持久化交给控制台
没装控制台(自立模式) 关掉启用开关 → 立即卸下并长期保持原生,随时可再打开

同一个能力也暴露到统一接口,控制台或脚本可直接调用:

window.__dshSkins["skins.prts"].restoreNative()

✅ 测试

browser-smoke     32 项(控制台路径)
standalone        15 项(无控制台自立模式)
restore-native    17 项(两种模式的还原路径 / switchTo 调用 / 开关状态 / 接口可用性)
dependency         7 项(宿主半依赖自检)
= 71 项断言,全过;CI 每次 push 自动跑

安装

下载 PRTS-UI-1.0.5.zip → 双击安装脚本 → 重启 DSH → 设置里查看/还原。
(不依赖任何控制台:没装控制台时皮肤自立运行,装了则由控制台统一管理。)

PRTS v1.0.4 —— 可独立运行

Choose a tag to compare

@tenebris173 tenebris173 released this 06 Oct 07:37

PRTS · DSH UI 皮肤 v1.0.4

🎉 不再依赖控制台:可以独立运行了

  • 有控制台 → 登记托管(卡片墙 / 互斥切换 / 持久化);
  • 没控制台 → 自立模式:重启即自动应用外观,并在「设置 → PRTS」里提供启用开关与全部调节项。

🔌 统一接口

window.__dshSkins["skins.prts"]
// { mode, skinId, version, isActive(), activate(), deactivate(), getSettings(), setSettings(patch) }

✅ 测试

browser-smoke  32 项(含两套底的真实 CSS 层叠)
standalone     15 项(无控制台:自动生效 / 接口 / 开关 / 让位 / 卸载净场)
dependency      7 项
= 54 项断言,全过;CI 自动跑

安装

下载 PRTS-UI-1.0.4.zip → 双击 安装PRTS皮肤.cmd → 重启 DSH → 设置 → PRTS。

PRTS · DSH UI 皮肤 v1.0.3

Choose a tag to compare

@tenebris173 tenebris173 released this 06 Oct 07:23

PRTS · DSH UI 皮肤 v1.0.3

⚠️ 补上「依赖皮肤加载器」的可见性

同 1.0.2 的说明:本皮肤是纯观感包,依赖第三方皮肤加载器提供的 uiSkinLoader 服务。
没装加载器时插件会安静挂起(不报错、无效果),本版把它变得可见:

  • 宿主半新增依赖自检(延迟 4 秒检查,缺失时打印可操作提示);
  • package.json 增加 dsh.skin.requires 元数据;README 增加「前置要求」小节;
  • 安装脚本增加装载前预检;新增 tests/dependency-check.mjs(6 项断言)并接入 CI。

安装

下载 PRTS-UI-1.0.3.zip → 双击 安装PRTS皮肤.cmd → 重启 DSH → 设置 → 皮肤 里切换。

PRTS · DSH UI 皮肤 v1.0.2

Choose a tag to compare

@tenebris173 tenebris173 released this 06 Oct 06:43

PRTS · DSH UI 皮肤 v1.0.2

🐛 修:宿主重写亮暗开关时的兜底

PRTS 此前只在自己 apply() 时驱动 body[data-ds-dark-theme];如果宿主(跟随系统变化、或你手动切亮暗)
自行改写这个属性,皮肤档位就会和实际不符 —— 那些"只在 scheme 分支里有定义"的 --dsw-specific-* 表面会错位。
现在用 MutationObserver 按当前有效底复位,teardown 时断开。

✅ 新增端到端扫测(23 项)

把 bundle 注入真实 DSH 页面实跑一轮:

  • 激活副作用(标记 / 样式节点 / 160 项 token 覆盖 / 装饰层 7 节点 / 主题注册)
  • 逐档切换:纸面+警示黄+直角 → 终端+信号青+工作台 → 纸面+工程橙+圆润(真实 getComputedStyle 读值)
  • CDP 模拟 prefers-color-scheme: light → 跟随模式正确落到纸面底 #f4f5f7
  • 连切 10 次:样式节点仍唯一、无异常
  • 真实设置弹窗:alpha=1(PRTS 表面本就实心)
  • deactivate 净场:标记 / 样式节点 / 装饰层 / token 全部回到基线
  • 二次激活不抛错;18 次改档注册无一次触发兜底 id(每次都先释放,无堆积)
  • 全程无未捕获异常、无 console.error/warning

安装

下载下面的 PRTS-UI-1.0.2.zip,解压后双击 安装PRTS皮肤.cmd,重启 DSH 即生效。

也可以直接从 git 安装:

dsh plugin --profile desktop add https://github.com/tenebris173/dsh-skin-prts

PRTS · DSH UI 皮肤 v1.0.1

Choose a tag to compare

@tenebris173 tenebris173 released this 05 Oct 16:00

PRTS · DSH UI 皮肤 v1.0.1

罗德岛终端风格:直角切角 · 黑色发丝线 · 黄黑警示条 · 四角登记标记 · DIN 技术字。
按 dsh.ecosystem.ui-skin-loader/v1 公约实现。

两套底,可跟随应用主题

纸面(亮) 终端(暗)
底 / 面板 / 卡片 #f4f5f7 / #ffffff / #ffffff #0d1012 / #121618 / #171c1f
发丝线 黑 18–60% 冷白 15–60%
实心块(徽标 / 主按钮 / DONE 章) 黑底白字 反相:冷白底深字

跟随应用读 ctx.theme.getTheme().preference,「跟随系统」时用 prefers-color-scheme 判定;
你在设置里换亮/暗,皮肤自动换底。

可切换项(216 种组合)

外观(跟随 / 纸面 / 终端)· 强调色(警示黄 / 工程橙 / 信号青)· 圆角(直角 0 / 工作台 6 / 圆润 12)·
纹理 · 硬投影 · DIN 技术字 —— 改档即时生效,跨重启保留。

设计纪律

  1. 纸面/终端,不是"深色科幻":层级只靠 1px 线与明度差,零光晕、零圆角。
  2. 切角而非圆角:border-radius: 0;面板头是黑底白字条 + 黄色 ▶;浮窗用错位实心影。
  3. 警示黄只给四处:当前 / 可点 / 运行中 / 焦点;其余全部黑白灰。
  4. DIN 技术字 + 字距:拉丁文 Bahnschrift,中文雅黑托底,数字等宽。

实现要点

  • 覆盖宿主公开 token:--dsw-alias-*(107)、--dsw-specific-*(11)、--dsw-menu-*、--dsw-linear-*、
    --dsw-radius-*、--dsw-static-neutral(-bluish)-*、--dsw-font-family / --ds-font-family-code。
  • 驱动宿主亮暗开关 body[data-ds-dark-theme]:那些只在 scheme 分支里有定义的 --dsw-specific-*
    表面才能跟着换档(实测:不驱动它,纸面模式下输入框仍是深色)。
  • 语义浮层 [role=dialog] / [aria-modal] / [role=menu|listbox|tooltip] 强制实色 + 直角兜底。
  • 装饰层为 7 个自有节点(网格 / 扫描线 / 左缘警示条 / 四角登记标记),pointer-events:none、
    低 z-index,退出时整体移除。

安装

下载下面的 PRTS-UI-1.0.1.zip,解压后双击 安装PRTS皮肤.cmd,重启 DSH 即生效。
脚本会优先使用你正在运行的那个 DSH,并自动把 activeSkin 切到本皮肤。

也可以直接从 git 安装:

dsh plugin --profile desktop add https://github.com/tenebris173/dsh-skin-prts

自测

32 项真实浏览器断言:登记载荷 / 激活副作用 / 装饰层 7 节点 / 两套底的 CSS 层叠(含弹窗实色)/
跟随应用主题切换 / 纹理与投影开关 / teardown 净场。