Skip to content

TinyChat v2.1.1 · 修复新增界面的输入控件样式

Latest

Choose a tag to compare

@TinyNano TinyNano released this 10 Oct 18:38

[2.1.1] - 2026-10-11

修 2.1.0 新增界面里「原生裸奔」的输入控件:记忆面板的新增输入框、设置里的自定义指令文本域、以及动态输入弹窗(UI.prompt / TOTP 验证码)共用的输入框样式。

修复

  • 记忆面板新增输入框:此前是没有任何样式的裸 <input>(浏览器原生外观:白底、细灰边、直角),与站内表单格格不入;现改走 label.field 体系,带标题、圆角、描边与聚焦光环,方块主题下自动获得浅灰底覆盖。
  • 自定义指令文本域:同样改为 label.field 包裹,不再是一块裸 textarea。
  • 动态输入弹窗的输入框没有样式规则:UI.prompt 与 TOTP 验证码弹窗共用的 .oc-prompt-input 类此前在全部样式表里没有定义,一直按浏览器原生外观渲染(这个问题先于本版本存在,TOTP 弹窗让它显形了);现补上与 .field input 同一材质的基础样式,并加入方块主题的浅灰底 + 聚焦光环覆盖(白卡片上不能白底白字)。
  • .field textarea 背景一直落成透明:样式里引用的 --bg 变量从未定义过,所有走 .field 的多行输入框背景都是透明的;换成既有令牌 var(--bg-input),与单行输入框同材质。

测试

  • tests/new-features-gui.mjs 新增两条材质断言(记忆输入框 / 自定义指令 textarea 的 computed style 必须有圆角、描边与非透明底色),防回归。
  • tests/new-features-contracts.js 新增两条源码契约(chrome.css 必须带 .oc-prompt-input 规则、方块主题必须覆盖它;记忆输入框与自定义指令必须走 .field 体系)。