Skip to content

feat(capsule): 完善流式原文展示与分组插入动效 - #1094

Closed
HKLHaoBin wants to merge 4 commits into
Open-Less:betafrom
HKLHaoBin:cursor/insert-text-animation-06c0
Closed

HKLHaoBin wants to merge 4 commits into
Open-Less:betafrom
HKLHaoBin:cursor/insert-text-animation-06c0

Conversation

@HKLHaoBin

Copy link
Copy Markdown
Collaborator

摘要

Fixes #1093.

在录音胶囊中连续展示可配置的流式原文,让文字插入、分组左移、胶囊扩展与延迟回中并发衔接。例如连续收到“你”“你好”“您好”时,展示应保留全文并接受识别修正,避免只留下最新后缀。

修复 / 新增 / 改进

  • Siri、Classic/OpenLess、Typeless 接入统一的流式原文组件;默认开启,默认字号 14px,支持 12–20px,包含偏好保存与多语言设置文案。
  • 新字淡入、轻微上弹回落;字间距 1.4px,既有文字按流式批次分组向左移动,传播延迟随距离变化;胶囊向左扩展后延迟回中。限制最大宽度,长文本裁切并跟随最新内容。
  • 百炼、讯飞、腾讯云、Qwen Realtime、StepFun Realtime、火山引擎按前端 offset: 0 契约发送全文快照,保留跨句前缀与识别修正。Qwen/StepFun 根据 item_id 忽略已完成句段的迟到 partial 和重复 completed。
  • 恢复旧 HistorySource::QuickNote 反序列化兼容,修复旧历史导致整份列表读取、追加保存失败的问题;新增不改写原记录的兼容测试。
  • 后端流式转写启动通过宿主 TaskSpawner 调度,稳定模式仍在结束后启动;修复跨平台严格检查暴露的问题并补充回归测试。
  • 增加独立动效预览页、动画纯函数测试及 H5 边界验证脚本。

兼容

  • 不包含:用户本地历史、原始日志、凭证、安装产物,以及工作区中未提交的 vendor/i18n 改动。
  • 关闭流式原文后保留原有波形与状态提示;已有偏好缺少新字段时使用上述默认值。
  • 历史兼容通过识别旧来源枚举实现,无清空或迁移重写操作。
  • DictationEngine::start_transcription_with_progress 增加宿主任务调度参数,仓库内调用点同步更新。
  • 本 PR 共 4 个提交,42 个文件;除展示功能外,明确包含联调发现的历史兼容与后端调度修复。

测试计划

以下结果来自 PR 头提交 7552be1e399d349ef67f8d0229f683779c1077ee:

  • cargo test --locked -p openless-core --lib:838 通过,0 失败,1 忽略。
  • cargo clippy --locked -p openless-core --all-targets -- -D warnings:通过。
  • node node_modules/tsx/dist/cli.mjs src/lib/backendEvent.test.ts:通过。
  • npm run build:通过。
  • node scripts/insert-text-motion-h5.mjs:通过;覆盖三种胶囊样式、显示开关、20px 字号和长文本边界。
  • 使用修复后的 Rust 只读解析用户历史:202 条均成功,其中 2 条旧 quick_note;读取前后文件字节一致。用户数据未上传。
  • GPT-5.6 Luna 对修复复审,处理迟到事件问题后未发现剩余 bug。
  • CI:核心测试、平台检查及 Rust 1.88 MSRV:成功。
  • Windows / macOS 桌面构建:成功,产物已上传。
  • Linux egui 构建:成功,产物已上传。
  • Android APK 构建:成功,四架构产物均有效。
  • 更新安装后的真实麦克风和云服务端到端人工验收尚未完成;自动化使用真实消息处理函数的模拟服务事件,不代表线上服务实测。

回滚:按逆序回退本 PR 的 4 个提交。未更改用户历史文件。

对照参考视频实现字素级淡入、上弹回落与左挤位移,胶囊先向左拓宽再右移居中,延迟随离插入点距离传播。录音过程中保留取消/确认,且不再被音量帧清空 partial 文本。
@appergb

appergb commented Sep 26, 2026

Copy link
Copy Markdown
Collaborator

胶囊流式原文与插入动效已随 2.0.0-Beta.2 集成(提交 16c3f84)进入 beta 分支并随 v2.0.0-Beta.2-tauri 发布,代码已实际合入,此处补关。#1093 一并关闭。感谢贡献!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[capsule] 完善流式原文展示、插入动效与录音数据兼容

2 participants