候选窗增强
候选展示分两个作用域:工具栏候选栏(Kawaii Bar 内)与独立候选窗 / 展开候选面板。本版对两者都有增强,注意区分各自的设置位置。
工具栏候选栏
- 紧凑 / 标准 / 宽松三组预设(本版):一键调整候选栏密度;
- 候选正文与注释分别配置字体、字号(注释字体即字体设定里的注释项);
- 可选「默认高亮第一个候选」;
- 候选栏高亮:圆角半径(默认 4,0–48dp)与高亮边距(默认 8,0–24dp,控制高亮框与文字的左右间距)在主题 → 配置里;高亮离格子四边固定留 4dp,不再上下贴边,间距与候选长短、拉伸无关;
- 候选项按住上滑弹出选字窗(按字拆分提交)、按住下滑呼出操作菜单(如「忘记词汇」)——见下方手势。
独立候选窗(浮动候选)
- 总是显示候选窗(Float Candidates):即使无候选时也保持候选窗可见,避免 UI 跳动
- 滚动候选:长候选列表横向滚动浏览
- 候选窗高亮圆角半径(默认 2,0–48dp):在 输入与候选 → 候选 里——与工具栏候选栏的高亮是两项独立设置,改错地方不会有任何效果
- 高亮切换动画:切换高亮索引时的视觉反馈
- 物理键盘横向候选:接入物理键盘时可强制使用横向候选栏
- 浮动候选自动跟随:贴近键盘、避让光标,竖排场景下也保持稳定定位
候选词手势(本版)
在候选词上按住(判定时间与按键长按一致,默认 300ms):
- 按住向上滑:弹出选字窗,把该候选按字拆开;滑到哪个字就高亮哪个,抬手提交该字;移出选字窗再抬手则取消;
- 按住向下滑:呼出该候选的操作菜单(如「忘记词汇」——本版修复了忘记一个词连带删除同音词的问题);
- 按住不动直接抬手:仍是原有长按菜单;
- 没有按住就上下滑:仍是列表自身的滚动,展开候选面板照常翻页。
一次按住只走一个方向:先滑动的那一方生效,抬手只执行该方向的动作。
稳定性与性能(本版)
- 候选栏采用前后缀结构 diff 与增量刷新:减少额外帧延迟、重复 measure/layout 与每键分配;展开面板 offset 去重、DiffUtil 内容比较;
- 修复连续移动候选时的双高亮残留、双击斜杠崩溃、无活动输入上下文时分页崩溃等问题;
- 高亮重绑按结构位移后的坐标解析,候选行在"挤一行"与"换行/滚动"之间的预测共用同一函数,不再抖动。
相关页面
- Kawaii Bar 增强 —— 工具栏大小与候选字号的关系
- Rime 引擎(内置) —— tabs、忘记词汇与部署