Repository navigation
Releases: mangerle/snapin
Releases · mangerle/snapin
Release list
v1.1.0
[1.1.0] - 2026-10-22
文档更新 (Documentation)
- repo: 统一仓库地址到 mangerle/snapin
- readme: 修正数据目录说明
- readme: 修正贴图缩放锚点与双击关闭说明
- release: 补齐 README 与 Apache-2.0 LICENSE
新增功能 (Features)
- snip: 新增窗口悬停高亮与点击吸附
- annotation: 新增局部模糊与聚光灯工具
- paster: 新增鼠标穿透与工具条恢复手柄
- snip: 新增独立取色器
- snip: 新增延时截图
- snip: 新增全屏截图模式
- paster: 图像另存为接入系统保存对话框
缺陷修复 (Bug Fixes)
- settings: 修正贴图速查表中的缩放锚点与双击关闭说明
- paster: 显示当前贴图组并拒绝越界分组 ID
- autostart: 无 systemctl 时回退 XDG 自启
- paster: 快捷保存失败时显示中文错误提示
- paster: 另存为拒绝未知扩展名并防止静默覆盖
- settings: 清理设置页未实现功能的文案
- settings: 初始不透明度下限与代码允许的 10% 对齐
- settings: 修正 WebP 质量滑块的作用范围说明
- paster: 复制图像遵循通知开关并显示失败原因
- paster: 切换分组后持久化 active_group_id
- paster: 配置热重载时失效 OCR 与翻译服务缓存
- snipper: 选区记忆对常规截图生效
- paster: 新增 4 键逆时针旋转并同步快捷键说明
- settings: 输出目录与命名模板改为可编辑输入框
- autostart: 关闭自启时同步停用 systemd 用户服务
v1.0.0
[1.0.0] - 2026-10-21
新增功能 (Features)
- snip: 新增截图后自动翻译热键
- paster: 贴图接入文字标注工具与 IME 输入
- paster: 贴图支持整图 OCR 与整图翻译
- paster: 工具栏补齐复制/保存/关闭,并透明扩窗容纳完整工具条
- paster: 贴图窗口支持标注、撤销与重做
- paster: 贴图窗口改用 ARGB8888 共享内存通路,实现真透明
- annotation: 箭头样式改为实线/虚线/锥形三选一
- toolbar: 按参考图重绘铅笔、文字标注、翻译与文字识别图标
- toolbar: 二级栏接入线型下拉、填充开关、圆角滚轮与序号样式
- annotation: 新增描边线型、圆角矩形、锥形箭杆与空心序号
缺陷修复 (Bug Fixes)
- translate: 修复两个免费翻译通道不可用
- ocr: 外扩距离随文本尺寸增长,修复原位翻译遮不净原文
- paster: 工具条紧贴贴图下方,取消多余的属性栏预留间距
- extension: 修复隐藏托盘实现的自递归
- paster: 文字便签卡片改为浅色底深色字
- daemon: 窗口投递后再确认放置,修复贴图仍落左上角
- lifecycle: 退出时隐藏托盘而不停用扩展,启动时自动恢复
- extension: 放置窗口时按显示器小数缩放比换算坐标
- lifecycle: 退出只停止后台服务,不再停用 GNOME 扩展
- paster: 边框与工具条锚定贴图尺寸,不再随菜单扩容而扩大
- platform: 扩展在线探测改用接口自省,消除停用时的假阳性
- snipper: 圆角控件可点击选择预设,文字识别不再立刻结束会话
- translate: 修复免费翻译通道不可用
- paster: 修复右键菜单无谓撑大贴图并露出黑边
- toolbar: 标注工具改为点击激活,形状按钮不再轮转切换椭圆
v0.4.0
[0.4.0] - 2026-10-20
代码重构 (Refactor)
- storage: 将历史选区缓存记录下沉至平台存储层
- error: 收敛公开错误枚举中的第三方类型泄漏
- cli: 先解析命令再按需要初始化运行时
- daemon: 结构化并发、异步 IO 与平滑停机
- 拆分设置同步模块并消除工具栏、菜单与图元重复实现
- service: 解耦应用配置并统一翻译服务基础设施
- ui: 将 OCR/翻译/保存移出 winit 事件循环
- model: 采用全称完整命名并直接纳入离线模型资产至仓库
- ui: 解耦贴图核心几何变换与菜单动作调度
- ui: 拆分截图事件状态机与鼠标交互策略
- platform: 模块化拆分 save_helper 细化存储与缓存职责
- core: 建立统一的 AppPaths 路径管理器收敛全局文件系统规范
- core: 剥离桌面环境特定的快捷键转换以保持核心领域纯洁性
- app: 基于系统能力缓存优化截图通道路由消除重复试探延迟
- ui: 模块化解耦截图全屏窗口的状态调度与事件渲染逻辑
- ui: 解耦贴图工作区与底层平台置顶扩展依赖
- settings: 消除脆弱的下标魔法数字硬编码实现类型安全配置绑定
- app: 治理关键路径错误静默吞噬问题并完善诊断日志
- platform: 优化外部子进程异步收割机制消除原生系统线程滥用
- ui: 模块化拆分贴图窗口事件与动作调度子系统
- daemon: 规范异步任务与子进程生命周期治理
- ui: 恢复类型驱动设计并统一全局唯一标识生成
- core: 将选区持久化几何契约归位至核心领域层
- core: 解耦核心领域枚举与设置界面下拉索引
- error: 重构分层错误处理模型,剥离上帝错误枚举并建立内聚领域错误体系
- snipper: 拆分截图工具栏模块,将布局计算、交互事件与测试独立解耦
- paster: 将 workspace 集中工作区按职责拆分为子模块目录
- daemon: 清理废弃的长连接贴图广播机制,并将 socket 模块拆解分离
- settings: 提取 UI 预设颜色与倍率常量映射,消除魔数与重复分支
- arch: 解除底层 platform 对 daemon 的反向依赖并清理 ui 冗余依赖
- paster: 实现纯粹集中化多窗口单事件循环调度架构
- paster: 移除磁盘临时文件流转并由常驻服务统一管理贴图
- ui: 深度解耦拆分高行数 UI 图元与交互模块
- config: 强类型前置重构消除运行时字符串解析
- hotkey: 优化快捷键联动与守护进程 IPC 路由
- paster: 废除 pkill 信号机制并由 PasterManager 统管生命周期
- main: 拆分主入口为单一职责子模块并统一日志门面
- core: 拆分配置模块并解耦枚举与板块定义
- workspace: 将单体项目重构裂变为 Cargo Workspace 多包工程
- paster: 重构贴图生命周期调度,消除临时文件与信号粗暴击杀
- daemon: 重构强类型双向 IPC 协议与分帧机制
- platform: 优化平台集成层资源复用与历史选区序列化
- annotation: 标注图元枚举化抽象与局部裁剪内存性能优化
- config: 全面采用强类型枚举重构配置模型
- render: 统一文本排版服务与帧缓冲呈现基础设施
安全修复 (Security)
- security: 收紧文件与 IPC 权限并补齐未信任尺寸防护
工程维护 (Maintenance)
- 清理死代码与未生效的配置项
性能优化 (Performance)
- platform: 单例复用 D-Bus 会话总线连接并优化快捷键注册批处理
- core: 消除图像编码与帧缓冲流转中的多余堆深拷贝
- paster: 移除贴图窗口独立 TextRenderer 实例,统一复用线程局部渲染器
- hotkey: 优化快捷键轻量 IPC 触发并消除 CLI 重复冷启动
新增功能 (Features)
- ocr: 接入真实 PP-OCRv6 检测识别推理链路
- model: 下载并集成 PP-OCRv6 离线模型与端到端自动化测试
- settings: 在偏好设置中心集成 OCR 与多翻译服务商配置界面
- translate: 接入五大翻译服务商与原图原位截图翻译图元管线
- ocr: 实现基于 PP-OCRv6 的离线文字识别与静默剪贴板复制
- service: 搭建 OCR 与多翻译引擎基础服务层与模型规范
- ui: 开启窗口 IME 支持实现文本标注中文字符输入
- daemon: 增加配置热重载 IPC 指令使设置中心实时生效
- platform: 实现系统平台能力探测机制与全局缓存单例
- paster: 实现贴图底部胶囊快捷工具条鼠标点击交互并拦截窗口拖拽
- extension: 接入 GNOME 扩展零延迟 Raw 物理像素截屏并修复托盘命令
测试相关 (Tests)
- settings: 补齐设置界面与配置的双向同步回归用例
- service: 补齐翻译服务商 HTTP 响应契约测试
- daemon: 补齐监听循环停机与单实例套接字语义测试
- core: 补充极端空边界与全链路端到端回归测试
- all: 清除无意义占位测试并补充核心场景单元测试
缺陷修复 (Bug Fixes)
- packaging: 纠正 postinst 关于扩展可免登出热更新的错误宣称
- screenshot: 仅移除崩溃的原始像素通道,恢复扩展零白闪 PNG 截屏通道
- screenshot: 消除点击截图导致 gnome-shell 崩溃登出的致命路径
- packaging: 消除 deb 模型资产重复打包产生的嵌套副本
- 加固渲染、快捷键解析与运行时路径边界
- extension: 修复托盘重复菜单并交付贴图精确放置能力
- annotation: 徽章编号从历史推导并修正滚轮尺寸调节
- paster: 消除贴图像素深拷贝并修复分组与缩放锚点
- settings: 修复保存假成功与自定义配置值被重置
- ui: 修正 OCR 与翻译的输出结果契约
- core: 修复十六进制颜色解析非 ASCII 输入 panic
- ui: 规范翻译动作前置提交与工具栏状态互斥
- render: 优化原位翻译背景取色抗噪与圆角平滑过渡
- service: 强化网络翻译超时防御与异步熔断保护
- translate: 强化自适应排版折行与边界溢出保护
- platform: 截图保存时增加文件名防覆盖自增检测
- app: 依据用户配置动态初始化日志级别
- platform: 为 D-Bus 远程调用与 IPC 读写注入统一超时保护
- ui: 贴图右键菜单展开时自适应物理尺寸避免小图边缘截断
- daemon: 严格校验 IPC 错误响应并转换为强类型领域错误
- platform: 重构子进程收割逻辑消除队头阻塞与死锁风险
- lifecycle: 将退出应用接口重构为原生异步以根除运行时嵌套恐慌
- daemon: 收敛 IPC 协议最大帧限制并优化编解码器内存分配防线
- ui: 修复贴图窗口调节不透明度时与全黑底色混合变暗的视觉缺陷
- core: 开启 image crate 的 webp 特性以支持 WebP 图像输出
- ui: 修复贴图工作区在非 Tokio 线程裸调 tokio::spawn 导致的崩溃隐患
- app: 修复 run_pin_file 异步运行时嵌套调用引起的 panic 隐患
- settings: 补齐偏好设置中心贴图分组切换快捷键配置同步
- ui: 统一贴图保存流水线并遵循全局输出配置
- daemon: 重构 IPC 像素流转协议以消除大图像 JSON 序列化性能瓶颈与超限隐患
- snipper: 修复选区 8 控制手柄微调缩放无法交互的缺陷,补全碰撞检测与全向几何算法
- cache: 统一历史选区缓存路径与清理逻辑,修复格式脱节问题
- core: 修复截屏临时文件并发命名冲突并强化安全性
- platform: 编译期内嵌 GNOME 扩展资源消除工作目录依赖
v0.3.0
[0.3.0] - 2026-10-19
代码重构 (Refactor)
- version: 统一项目版本号为单一真实数据源(SSOT),收敛至 Cargo.toml
性能优化 (Performance)
- snipper: 重构单遍整数定点底图生成并实现首帧即时送显
- snipper: 优化截图响应延迟,消灭快捷键按下后的卡顿等待感
- snipper: 消除逐帧重分配与双重混合以解决卡顿,实现独立子进程贴图与首选项菜单
新增功能 (Features)
- hotkey: 将默认截图设为 Ctrl+Alt+A、默认贴图设为 F1 并解决设置时录制冲突
- settings: 全面打通设置中心配置项与托盘菜单功能
- settings: 支持自定义按键录制与系统快捷键双向同步
- settings: 参考 waylan 重构基于 Slint 的现代化原生设置中心
- snipper: 支持矩形椭圆自由切换、文字即时输入、序号高精数字与滚轮连续微调尺寸
- icons: 重新设计现代化桌面应用SVG图标与专属顶栏托盘SVG图标
- notification: 支持通知免打扰配置并默认关闭截图完成与启动弹窗
- toolbar: 对齐参考图片重构浅米白底色、图标顺序及高精矢量图标
- snipper: 支持通过鼠标滚轮即时调整标注边框与笔触粗细
- paster: 实现贴图精致边框、Dock栏图标隐藏及完整右键多级上下文菜单
- snipper: 实现标注拖拽即时动态预览并将全量工具栏图标升级为现代流线型设计
- snipper: 补齐14项主操作栏与椭圆序号图元,适配HiDPI缩放与增强暗色遮罩对比度
- daemon: 守护进程启动时自动注册快捷键并激活置顶扩展,支持登录自启
- snipper: 实现截图悬浮工具栏、窗口双缓冲光栅化与贴图置顶事件循环
- core: 初始化 Snapin 纯 Rust Wayland 基础工程架构
格式样式 (Style)
- toolbar: 优化工具栏图标设计与文字输入边框交互
流水线配置 (CI/CD)
- release: 参考 waylan 添加 GitHub Actions 自动发布流水线与 changelog 生成配置
- pkg: 增加 Debian deb 自动化打包脚本及桌面集成配置
缺陷修复 (Bug Fixes)
- annotation: 重构箭头为单路径矢量多边形,消除粗箭头线头突出畸变
- toolbar: 修复点击二级属性栏选颜色时事件穿透到画布误盖印章的问题
- desktop: 收敛桌面图标为单一 Snapin 入口并集成右键快捷操作
- build: 将 deb 打包产物与暂存目录迁移至 target 并支持工作流手动触发
- snipper: 修复截图保存、复制与贴图时丢失矢量标注与文字内容的问题
- ui: 窗口标题修改为 Snapin Settings 解决 GNOME 标题栏中文豆腐块乱码
- daemon: 修正扩展 UUID 并解决登录自启动冲突,桌面图标支持直接启动服务并保持幂等
- snipper: 修复初始截图误加载历史选区小框与标注越界全屏的问题
- tray: 彻底修复托盘菜单退出功能并增加全局退出生命周期管理
- hotkey: 将人类可读快捷键转换为 GNOME GTK Accelerator 语法标准
- tray: 按照设计图调整托盘菜单项与子菜单结构
- tray,settings: 居中托盘菜单对齐并移除多余的手动快捷键同步按钮
- paster: 优化贴图右键菜单浅色主题与边界避让,修复图像处理变黑并支持扩展零白闪截图
- paster: 修复右键菜单文字渲染与HiDPI缩放、隐藏Dock图标并实现文本便签绘制
- tray: 优化托盘指示器内边距与容器结构以适配紧凑圆角矩形
- annotation: 彻底重构序号气泡为cosmic-text现代字体矢量排版与光学绝对居中
- packaging: 实现deb安装免登出热更新与systemd用户服务自动拉起
- snipper: 快捷键触发截图改为直接前台执行,避免后台守护进程被 Portal 判定无焦点而拦截
- window: 允许工作线程初始化 Wayland 事件循环并增加 GNOME 顶栏原生托盘指示器